From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- js/src/jit-test/tests/wasm/spec/README.md | 5 + .../wasm/spec/exception-handling/directives.txt | 1 + .../spec/exception-handling/harness/directives.txt | 1 + .../spec/exception-handling/harness/harness.js | 448 + .../tests/wasm/spec/exception-handling/tag.wast.js | 40 + .../wasm/spec/exception-handling/throw.wast.js | 94 + .../wasm/spec/exception-handling/throw_ref.wast.js | 155 + .../tests/wasm/spec/extended-const/directives.txt | 1 + .../tests/wasm/spec/extended-const/global.wast.js | 828 + .../spec/extended-const/harness/directives.txt | 1 + .../wasm/spec/extended-const/harness/harness.js | 448 + .../wasm/spec/function-references/br_if.wast.js | 886 + .../function-references/br_on_non_null.wast.js | 101 + .../spec/function-references/br_on_null.wast.js | 94 + .../wasm/spec/function-references/call_ref.wast.js | 275 + .../wasm/spec/function-references/directives.txt | 1 + .../wasm/spec/function-references/func.wast.js | 1240 + .../wasm/spec/function-references/global.wast.js | 796 + .../function-references/harness/directives.txt | 1 + .../spec/function-references/harness/harness.js | 448 + .../tests/wasm/spec/function-references/if.wast.js | 1911 + .../spec/function-references/local_get.wast.js | 279 + .../wasm/spec/function-references/ref.wast.js | 110 + .../function-references/ref_as_non_null.wast.js | 71 + .../wasm/spec/function-references/ref_func.wast.js | 156 + .../function-references/return_call_ref.wast.js | 460 + .../function-references/unreached-valid.wast.js | 109 + js/src/jit-test/tests/wasm/spec/gc/array.wast.js | 385 + .../jit-test/tests/wasm/spec/gc/array_copy.wast.js | 202 + .../jit-test/tests/wasm/spec/gc/array_fill.wast.js | 112 + .../jit-test/tests/wasm/spec/gc/binary-gc.wast.js | 30 + js/src/jit-test/tests/wasm/spec/gc/br_if.wast.js | 886 + .../jit-test/tests/wasm/spec/gc/br_on_cast.wast.js | 337 + .../tests/wasm/spec/gc/br_on_cast_fail.wast.js | 352 + .../jit-test/tests/wasm/spec/gc/comments.wast.js | 51 + js/src/jit-test/tests/wasm/spec/gc/directives.txt | 1 + js/src/jit-test/tests/wasm/spec/gc/extern.wast.js | 101 + .../tests/wasm/spec/gc/float_literals.wast.js | 776 + js/src/jit-test/tests/wasm/spec/gc/global.wast.js | 869 + .../tests/wasm/spec/gc/harness/directives.txt | 1 + .../jit-test/tests/wasm/spec/gc/harness/harness.js | 448 + js/src/jit-test/tests/wasm/spec/gc/i31.wast.js | 104 + js/src/jit-test/tests/wasm/spec/gc/if.wast.js | 1928 + .../tests/wasm/spec/gc/obsolete-keywords.wast.js | 82 + .../jit-test/tests/wasm/spec/gc/ref_cast.wast.js | 279 + js/src/jit-test/tests/wasm/spec/gc/ref_eq.wast.js | 351 + .../jit-test/tests/wasm/spec/gc/ref_null.wast.js | 127 + .../jit-test/tests/wasm/spec/gc/ref_test.wast.js | 470 + js/src/jit-test/tests/wasm/spec/gc/struct.wast.js | 271 + js/src/jit-test/tests/wasm/spec/gc/token.wast.js | 289 + .../jit-test/tests/wasm/spec/gc/type-canon.wast.js | 36 + .../tests/wasm/spec/gc/type-equivalence.wast.js | 345 + .../jit-test/tests/wasm/spec/gc/type-rec.wast.js | 189 + .../tests/wasm/spec/gc/type-subtyping.wast.js | 943 + .../tests/wasm/spec/gc/unreachable.wast.js | 424 + .../tests/wasm/spec/gc/unreached-valid.wast.js | 138 + .../tests/wasm/spec/memory64/address64.wast.js | 1025 + .../tests/wasm/spec/memory64/align64.wast.js | 1090 + .../tests/wasm/spec/memory64/directives.txt | 1 + .../tests/wasm/spec/memory64/endianness64.wast.js | 385 + .../wasm/spec/memory64/float_memory64.wast.js | 361 + .../wasm/spec/memory64/harness/directives.txt | 1 + .../tests/wasm/spec/memory64/harness/harness.js | 457 + .../tests/wasm/spec/memory64/load64.wast.js | 749 + .../tests/wasm/spec/memory64/memory64.wast.js | 324 + .../tests/wasm/spec/memory64/memory_grow64.wast.js | 199 + .../wasm/spec/memory64/memory_redundancy64.wast.js | 95 + .../tests/wasm/spec/memory64/memory_trap64.wast.js | 632 + .../tests/wasm/spec/multi-memory/address0.wast.js | 392 + .../tests/wasm/spec/multi-memory/address1.wast.js | 538 + .../tests/wasm/spec/multi-memory/align0.wast.js | 65 + .../tests/wasm/spec/multi-memory/binary0.wast.js | 88 + .../tests/wasm/spec/multi-memory/data0.wast.js | 93 + .../tests/wasm/spec/multi-memory/data1.wast.js | 170 + .../wasm/spec/multi-memory/data_drop0.wast.js | 63 + .../tests/wasm/spec/multi-memory/directives.txt | 1 + .../tests/wasm/spec/multi-memory/exports0.wast.js | 78 + .../wasm/spec/multi-memory/float_exprs0.wast.js | 80 + .../wasm/spec/multi-memory/float_exprs1.wast.js | 128 + .../wasm/spec/multi-memory/float_memory.wast.js | 361 + .../wasm/spec/multi-memory/float_memory0.wast.js | 137 + .../wasm/spec/multi-memory/harness/directives.txt | 1 + .../wasm/spec/multi-memory/harness/harness.js | 448 + .../tests/wasm/spec/multi-memory/imports0.wast.js | 73 + .../tests/wasm/spec/multi-memory/imports1.wast.js | 40 + .../tests/wasm/spec/multi-memory/imports2.wast.js | 120 + .../tests/wasm/spec/multi-memory/imports3.wast.js | 109 + .../tests/wasm/spec/multi-memory/imports4.wast.js | 93 + .../tests/wasm/spec/multi-memory/linking0.wast.js | 68 + .../tests/wasm/spec/multi-memory/linking1.wast.js | 104 + .../tests/wasm/spec/multi-memory/linking2.wast.js | 67 + .../tests/wasm/spec/multi-memory/linking3.wast.js | 120 + .../tests/wasm/spec/multi-memory/load.wast.js | 845 + .../tests/wasm/spec/multi-memory/load0.wast.js | 38 + .../tests/wasm/spec/multi-memory/load1.wast.js | 90 + .../tests/wasm/spec/multi-memory/load2.wast.js | 289 + .../wasm/spec/multi-memory/memory-multi.wast.js | 62 + .../tests/wasm/spec/multi-memory/memory.wast.js | 390 + .../wasm/spec/multi-memory/memory_copy0.wast.js | 117 + .../wasm/spec/multi-memory/memory_fill0.wast.js | 77 + .../wasm/spec/multi-memory/memory_grow.wast.js | 773 + .../wasm/spec/multi-memory/memory_init0.wast.js | 70 + .../wasm/spec/multi-memory/memory_size.wast.js | 208 + .../wasm/spec/multi-memory/memory_size0.wast.js | 49 + .../wasm/spec/multi-memory/memory_size1.wast.js | 73 + .../wasm/spec/multi-memory/memory_size2.wast.js | 90 + .../wasm/spec/multi-memory/memory_size3.wast.js | 43 + .../wasm/spec/multi-memory/memory_trap0.wast.js | 78 + .../wasm/spec/multi-memory/memory_trap1.wast.js | 602 + .../tests/wasm/spec/multi-memory/simd_load.wast.js | 295 + .../spec/multi-memory/simd_memory-multi.wast.js | 58 + .../wasm/spec/multi-memory/simd_store.wast.js | 238 + .../tests/wasm/spec/multi-memory/start0.wast.js | 73 + .../tests/wasm/spec/multi-memory/store.wast.js | 803 + .../tests/wasm/spec/multi-memory/store0.wast.js | 48 + .../tests/wasm/spec/multi-memory/store1.wast.js | 92 + .../tests/wasm/spec/multi-memory/traps0.wast.js | 80 + .../tests/wasm/spec/relaxed-simd/directives.txt | 1 + .../wasm/spec/relaxed-simd/harness/directives.txt | 1 + .../wasm/spec/relaxed-simd/harness/harness.js | 448 + .../relaxed-simd/i16x8_relaxed_q15mulr_s.wast.js | 49 + .../spec/relaxed-simd/i32x4_relaxed_trunc.wast.js | 338 + .../relaxed-simd/i8x16_relaxed_swizzle.wast.js | 90 + .../spec/relaxed-simd/relaxed_dot_product.wast.js | 139 + .../spec/relaxed-simd/relaxed_laneselect.wast.js | 179 + .../spec/relaxed-simd/relaxed_madd_nmadd.wast.js | 325 + .../wasm/spec/relaxed-simd/relaxed_min_max.wast.js | 663 + .../jit-test/tests/wasm/spec/spec/address.wast.js | 1082 + js/src/jit-test/tests/wasm/spec/spec/block.wast.js | 1878 + js/src/jit-test/tests/wasm/spec/spec/br.wast.js | 839 + js/src/jit-test/tests/wasm/spec/spec/br_if.wast.js | 886 + js/src/jit-test/tests/wasm/spec/spec/bulk.wast.js | 499 + js/src/jit-test/tests/wasm/spec/spec/call.wast.js | 683 + .../tests/wasm/spec/spec/call_indirect.wast.js | 1256 + .../jit-test/tests/wasm/spec/spec/comments.wast.js | 34 + js/src/jit-test/tests/wasm/spec/spec/const.wast.js | 3114 + .../tests/wasm/spec/spec/conversions.wast.js | 3109 + .../jit-test/tests/wasm/spec/spec/custom.wast.js | 157 + .../jit-test/tests/wasm/spec/spec/directives.txt | 1 + .../tests/wasm/spec/spec/endianness.wast.js | 385 + js/src/jit-test/tests/wasm/spec/spec/f32.wast.js | 18629 ++++ .../tests/wasm/spec/spec/f32_bitwise.wast.js | 2688 + .../jit-test/tests/wasm/spec/spec/f32_cmp.wast.js | 17342 ++++ js/src/jit-test/tests/wasm/spec/spec/f64.wast.js | 20658 +++++ .../tests/wasm/spec/spec/f64_bitwise.wast.js | 3032 + .../jit-test/tests/wasm/spec/spec/f64_cmp.wast.js | 18854 ++++ js/src/jit-test/tests/wasm/spec/spec/fac.wast.js | 139 + .../tests/wasm/spec/spec/float_exprs.wast.js | 7295 ++ .../tests/wasm/spec/spec/float_literals.wast.js | 764 + .../tests/wasm/spec/spec/float_memory.wast.js | 361 + .../tests/wasm/spec/spec/float_misc.wast.js | 3679 + .../jit-test/tests/wasm/spec/spec/forward.wast.js | 45 + js/src/jit-test/tests/wasm/spec/spec/func.wast.js | 1218 + .../tests/wasm/spec/spec/func_ptrs.wast.js | 191 + .../jit-test/tests/wasm/spec/spec/global.wast.js | 809 + .../tests/wasm/spec/spec/harness/directives.txt | 1 + .../tests/wasm/spec/spec/harness/harness.js | 448 + js/src/jit-test/tests/wasm/spec/spec/i32.wast.js | 1967 + js/src/jit-test/tests/wasm/spec/spec/i64.wast.js | 1600 + js/src/jit-test/tests/wasm/spec/spec/if.wast.js | 1911 + .../tests/wasm/spec/spec/inline-module.wast.js | 20 + .../tests/wasm/spec/spec/int_exprs.wast.js | 534 + .../tests/wasm/spec/spec/int_literals.wast.js | 233 + .../jit-test/tests/wasm/spec/spec/labels.wast.js | 400 + .../tests/wasm/spec/spec/left-to-right.wast.js | 482 + js/src/jit-test/tests/wasm/spec/spec/load.wast.js | 749 + .../tests/wasm/spec/spec/local_get.wast.js | 279 + .../tests/wasm/spec/spec/local_set.wast.js | 442 + .../tests/wasm/spec/spec/local_tee.wast.js | 806 + js/src/jit-test/tests/wasm/spec/spec/loop.wast.js | 986 + .../jit-test/tests/wasm/spec/spec/memory.wast.js | 399 + .../tests/wasm/spec/spec/memory_copy.wast.js | 14165 +++ .../tests/wasm/spec/spec/memory_fill.wast.js | 865 + .../tests/wasm/spec/spec/memory_grow.wast.js | 555 + .../tests/wasm/spec/spec/memory_init.wast.js | 1409 + .../tests/wasm/spec/spec/memory_redundancy.wast.js | 95 + .../tests/wasm/spec/spec/memory_size.wast.js | 174 + js/src/jit-test/tests/wasm/spec/spec/names.wast.js | 2158 + js/src/jit-test/tests/wasm/spec/spec/nop.wast.js | 593 + .../jit-test/tests/wasm/spec/spec/ref_func.wast.js | 156 + .../tests/wasm/spec/spec/ref_is_null.wast.js | 97 + .../jit-test/tests/wasm/spec/spec/ref_null.wast.js | 31 + .../jit-test/tests/wasm/spec/spec/return.wast.js | 636 + .../tests/wasm/spec/spec/simd_address.wast.js | 348 + .../tests/wasm/spec/spec/simd_bit_shift.wast.js | 2102 + .../tests/wasm/spec/spec/simd_bitwise.wast.js | 2769 + .../tests/wasm/spec/spec/simd_boolean.wast.js | 2455 + .../tests/wasm/spec/spec/simd_const.wast.js | 4681 + .../tests/wasm/spec/spec/simd_conversions.wast.js | 3341 + .../tests/wasm/spec/spec/simd_f32x4.wast.js | 18269 ++++ .../tests/wasm/spec/spec/simd_f32x4_arith.wast.js | 45212 +++++++++ .../tests/wasm/spec/spec/simd_f32x4_cmp.wast.js | 47701 ++++++++++ .../wasm/spec/spec/simd_f32x4_pmin_pmax.wast.js | 92356 +++++++++++++++++++ .../wasm/spec/spec/simd_f32x4_rounding.wast.js | 3432 + .../tests/wasm/spec/spec/simd_f64x2.wast.js | 13218 +++ .../tests/wasm/spec/spec/simd_f64x2_arith.wast.js | 32018 +++++++ .../tests/wasm/spec/spec/simd_f64x2_cmp.wast.js | 43747 +++++++++ .../wasm/spec/spec/simd_f64x2_pmin_pmax.wast.js | 64564 +++++++++++++ .../wasm/spec/spec/simd_f64x2_rounding.wast.js | 2210 + .../tests/wasm/spec/spec/simd_i16x8_arith.wast.js | 1801 + .../tests/wasm/spec/spec/simd_i16x8_arith2.wast.js | 1558 + .../tests/wasm/spec/spec/simd_i16x8_cmp.wast.js | 4369 + .../spec/simd_i16x8_extadd_pairwise_i8x16.wast.js | 184 + .../wasm/spec/spec/simd_i16x8_extmul_i8x16.wast.js | 1066 + .../spec/spec/simd_i16x8_q15mulr_sat_s.wast.js | 283 + .../wasm/spec/spec/simd_i16x8_sat_arith.wast.js | 2150 + .../tests/wasm/spec/spec/simd_i32x4_arith.wast.js | 1801 + .../tests/wasm/spec/spec/simd_i32x4_arith2.wast.js | 1279 + .../tests/wasm/spec/spec/simd_i32x4_cmp.wast.js | 4369 + .../wasm/spec/spec/simd_i32x4_dot_i16x8.wast.js | 283 + .../spec/simd_i32x4_extadd_pairwise_i16x8.wast.js | 184 + .../wasm/spec/spec/simd_i32x4_extmul_i16x8.wast.js | 1066 + .../spec/spec/simd_i32x4_trunc_sat_f32x4.wast.js | 1016 + .../spec/spec/simd_i32x4_trunc_sat_f64x2.wast.js | 940 + .../tests/wasm/spec/spec/simd_i64x2_arith.wast.js | 1753 + .../tests/wasm/spec/spec/simd_i64x2_arith2.wast.js | 149 + .../tests/wasm/spec/spec/simd_i64x2_cmp.wast.js | 980 + .../wasm/spec/spec/simd_i64x2_extmul_i32x4.wast.js | 1066 + .../tests/wasm/spec/spec/simd_i8x16_arith.wast.js | 1457 + .../tests/wasm/spec/spec/simd_i8x16_arith2.wast.js | 2263 + .../tests/wasm/spec/spec/simd_i8x16_cmp.wast.js | 4989 + .../wasm/spec/spec/simd_i8x16_sat_arith.wast.js | 2430 + .../wasm/spec/spec/simd_int_to_int_extend.wast.js | 2026 + .../tests/wasm/spec/spec/simd_lane.wast.js | 4349 + .../tests/wasm/spec/spec/simd_load.wast.js | 295 + .../tests/wasm/spec/spec/simd_load16_lane.wast.js | 424 + .../tests/wasm/spec/spec/simd_load32_lane.wast.js | 228 + .../tests/wasm/spec/spec/simd_load64_lane.wast.js | 156 + .../tests/wasm/spec/spec/simd_load8_lane.wast.js | 704 + .../tests/wasm/spec/spec/simd_load_extend.wast.js | 726 + .../tests/wasm/spec/spec/simd_load_splat.wast.js | 750 + .../tests/wasm/spec/spec/simd_load_zero.wast.js | 264 + .../tests/wasm/spec/spec/simd_splat.wast.js | 1607 + .../tests/wasm/spec/spec/simd_store.wast.js | 238 + .../tests/wasm/spec/spec/simd_store16_lane.wast.js | 512 + .../tests/wasm/spec/spec/simd_store32_lane.wast.js | 320 + .../tests/wasm/spec/spec/simd_store64_lane.wast.js | 214 + .../tests/wasm/spec/spec/simd_store8_lane.wast.js | 736 + .../wasm/spec/spec/skip-stack-guard-page.wast.js | 2320 + js/src/jit-test/tests/wasm/spec/spec/stack.wast.js | 263 + js/src/jit-test/tests/wasm/spec/spec/start.wast.js | 150 + js/src/jit-test/tests/wasm/spec/spec/store.wast.js | 583 + .../jit-test/tests/wasm/spec/spec/switch.wast.js | 220 + .../tests/wasm/spec/spec/table-sub.wast.js | 40 + .../tests/wasm/spec/spec/table_copy.wast.js | 6436 ++ .../tests/wasm/spec/spec/table_fill.wast.js | 238 + .../tests/wasm/spec/spec/table_get.wast.js | 126 + .../tests/wasm/spec/spec/table_grow.wast.js | 271 + .../tests/wasm/spec/spec/table_init.wast.js | 3674 + .../tests/wasm/spec/spec/table_set.wast.js | 177 + .../tests/wasm/spec/spec/table_size.wast.js | 172 + js/src/jit-test/tests/wasm/spec/spec/token.wast.js | 22 + .../jit-test/tests/wasm/spec/spec/tokens.wast.js | 283 + js/src/jit-test/tests/wasm/spec/spec/traps.wast.js | 200 + js/src/jit-test/tests/wasm/spec/spec/type.wast.js | 66 + .../tests/wasm/spec/spec/unreachable.wast.js | 424 + .../tests/wasm/spec/spec/unreached-valid.wast.js | 88 + .../jit-test/tests/wasm/spec/spec/unwind.wast.js | 373 + .../tests/wasm/spec/spec/utf8-import-field.wast.js | 2656 + .../wasm/spec/spec/utf8-import-module.wast.js | 2656 + .../wasm/spec/spec/utf8-invalid-encoding.wast.js | 1033 + .../tests/wasm/spec/tail-call/directives.txt | 1 + .../wasm/spec/tail-call/harness/directives.txt | 1 + .../tests/wasm/spec/tail-call/harness/harness.js | 448 + .../tests/wasm/spec/tail-call/return_call.wast.js | 283 + .../spec/tail-call/return_call_indirect.wast.js | 591 + 266 files changed, 631078 insertions(+) create mode 100644 js/src/jit-test/tests/wasm/spec/README.md create mode 100644 js/src/jit-test/tests/wasm/spec/exception-handling/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/exception-handling/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/exception-handling/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/exception-handling/tag.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/exception-handling/throw.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/exception-handling/throw_ref.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/extended-const/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/extended-const/global.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/extended-const/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/extended-const/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/br_if.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/br_on_non_null.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/br_on_null.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/call_ref.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/func.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/global.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/if.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/local_get.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/ref.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/ref_as_non_null.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/ref_func.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/return_call_ref.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/function-references/unreached-valid.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/array.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/array_copy.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/array_fill.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/binary-gc.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/br_if.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/br_on_cast.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/br_on_cast_fail.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/comments.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/gc/extern.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/float_literals.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/global.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/gc/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/i31.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/if.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/obsolete-keywords.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/ref_cast.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/ref_eq.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/ref_null.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/ref_test.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/struct.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/token.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/type-canon.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/type-equivalence.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/type-rec.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/type-subtyping.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/unreachable.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/gc/unreached-valid.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/address64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/align64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/endianness64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/float_memory64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/load64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/memory64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/memory_grow64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/memory_redundancy64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/memory64/memory_trap64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/address0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/address1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/align0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/binary0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/data0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/data1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/data_drop0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/exports0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/float_exprs0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/float_exprs1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/float_memory.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/float_memory0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/imports0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/imports1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/imports2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/imports3.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/imports4.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/linking0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/linking1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/linking2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/linking3.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/load.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/load0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/load1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/load2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory-multi.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_copy0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_fill0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_grow.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_init0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_size.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_size0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_size1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_size2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_size3.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_trap0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/memory_trap1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/simd_load.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/simd_memory-multi.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/simd_store.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/start0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/store.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/store0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/store1.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/multi-memory/traps0.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/i16x8_relaxed_q15mulr_s.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/i32x4_relaxed_trunc.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/i8x16_relaxed_swizzle.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_dot_product.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_laneselect.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_madd_nmadd.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_min_max.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/address.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/block.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/br.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/br_if.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/bulk.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/call.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/call_indirect.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/comments.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/const.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/conversions.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/custom.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/spec/endianness.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/f32.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/f32_bitwise.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/f32_cmp.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/f64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/f64_bitwise.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/f64_cmp.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/fac.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/float_exprs.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/float_literals.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/float_memory.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/float_misc.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/forward.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/func.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/func_ptrs.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/global.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/spec/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/i32.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/i64.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/if.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/inline-module.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/int_exprs.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/int_literals.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/labels.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/left-to-right.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/load.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/local_get.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/local_set.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/local_tee.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/loop.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/memory.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/memory_copy.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/memory_fill.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/memory_grow.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/memory_init.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/memory_redundancy.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/memory_size.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/names.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/nop.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/ref_func.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/ref_is_null.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/ref_null.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/return.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_address.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_bit_shift.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_bitwise.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_boolean.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_const.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_conversions.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f32x4.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_arith.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_cmp.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_pmin_pmax.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_rounding.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f64x2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_arith.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_cmp.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_pmin_pmax.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_rounding.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_arith.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_arith2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_cmp.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_extadd_pairwise_i8x16.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_extmul_i8x16.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_q15mulr_sat_s.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_sat_arith.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_arith.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_arith2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_cmp.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_dot_i16x8.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_extadd_pairwise_i16x8.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_extmul_i16x8.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_trunc_sat_f32x4.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_trunc_sat_f64x2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_arith.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_arith2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_cmp.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_extmul_i32x4.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_arith.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_arith2.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_cmp.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_sat_arith.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_int_to_int_extend.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_load.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_load16_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_load32_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_load64_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_load8_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_load_extend.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_load_splat.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_load_zero.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_splat.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_store.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_store16_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_store32_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_store64_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/simd_store8_lane.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/skip-stack-guard-page.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/stack.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/start.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/store.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/switch.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/table-sub.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/table_copy.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/table_fill.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/table_get.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/table_grow.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/table_init.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/table_set.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/table_size.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/token.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/tokens.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/traps.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/type.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/unreachable.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/unreached-valid.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/unwind.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/utf8-import-field.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/utf8-import-module.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/spec/utf8-invalid-encoding.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/tail-call/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/tail-call/harness/directives.txt create mode 100644 js/src/jit-test/tests/wasm/spec/tail-call/harness/harness.js create mode 100644 js/src/jit-test/tests/wasm/spec/tail-call/return_call.wast.js create mode 100644 js/src/jit-test/tests/wasm/spec/tail-call/return_call_indirect.wast.js (limited to 'js/src/jit-test/tests/wasm/spec') diff --git a/js/src/jit-test/tests/wasm/spec/README.md b/js/src/jit-test/tests/wasm/spec/README.md new file mode 100644 index 0000000000..bc1e89348e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/README.md @@ -0,0 +1,5 @@ +# Wasm Spec Tests + +These tests are autogenerated using a tool, do not edit. + +See `jit-test/etc/wasm/` for more information. diff --git a/js/src/jit-test/tests/wasm/spec/exception-handling/directives.txt b/js/src/jit-test/tests/wasm/spec/exception-handling/directives.txt new file mode 100644 index 0000000000..51f58354cb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/exception-handling/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; --wasm-exceptions; --wasm-exnref; skip-if: !wasmExceptionsEnabled() \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/exception-handling/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/exception-handling/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/exception-handling/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/exception-handling/harness/harness.js b/js/src/jit-test/tests/wasm/spec/exception-handling/harness/harness.js new file mode 100644 index 0000000000..a96781e8ed --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/exception-handling/harness/harness.js @@ -0,0 +1,448 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/exception-handling/tag.wast.js b/js/src/jit-test/tests/wasm/spec/exception-handling/tag.wast.js new file mode 100644 index 0000000000..70e75a12d1 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/exception-handling/tag.wast.js @@ -0,0 +1,40 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/tag.wast + +// ./test/core/tag.wast:3 +let $0 = instantiate(`(module + (tag) + (tag (param i32)) + (tag (export "t2") (param i32)) + (tag $$t3 (param i32 f32)) + (export "t3" (tag 3)) +)`); + +// ./test/core/tag.wast:11 +register($0, `test`); + +// ./test/core/tag.wast:13 +let $1 = instantiate(`(module + (tag $$t0 (import "test" "t2") (param i32)) + (import "test" "t3" (tag $$t1 (param i32 f32))) +)`); + +// ./test/core/tag.wast:18 +assert_invalid( + () => instantiate(`(module (tag (result i32)))`), + `non-empty tag result type`, +); diff --git a/js/src/jit-test/tests/wasm/spec/exception-handling/throw.wast.js b/js/src/jit-test/tests/wasm/spec/exception-handling/throw.wast.js new file mode 100644 index 0000000000..2bb83c6ef0 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/exception-handling/throw.wast.js @@ -0,0 +1,94 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/throw.wast + +// ./test/core/throw.wast:3 +let $0 = instantiate(`(module + (tag $$e0) + (tag $$e-i32 (param i32)) + (tag $$e-f32 (param f32)) + (tag $$e-i64 (param i64)) + (tag $$e-f64 (param f64)) + (tag $$e-i32-i32 (param i32 i32)) + + (func $$throw-if (export "throw-if") (param i32) (result i32) + (local.get 0) + (i32.const 0) (if (i32.ne) (then (throw $$e0))) + (i32.const 0) + ) + + (func (export "throw-param-f32") (param f32) (local.get 0) (throw $$e-f32)) + + (func (export "throw-param-i64") (param i64) (local.get 0) (throw $$e-i64)) + + (func (export "throw-param-f64") (param f64) (local.get 0) (throw $$e-f64)) + + (func (export "throw-polymorphic") (throw $$e0) (throw $$e-i32)) + + (func (export "throw-polymorphic-block") (block (result i32) (throw $$e0)) (throw $$e-i32)) + + (func $$throw-1-2 (i32.const 1) (i32.const 2) (throw $$e-i32-i32)) + (func (export "test-throw-1-2") + (block $$h (result i32 i32) + (try_table (catch $$e-i32-i32 $$h) (call $$throw-1-2)) + (return) + ) + (if (i32.ne (i32.const 2)) (then (unreachable))) + (if (i32.ne (i32.const 1)) (then (unreachable))) + ) +)`); + +// ./test/core/throw.wast:38 +assert_return(() => invoke($0, `throw-if`, [0]), [value("i32", 0)]); + +// ./test/core/throw.wast:39 +assert_exception(() => invoke($0, `throw-if`, [10])); + +// ./test/core/throw.wast:40 +assert_exception(() => invoke($0, `throw-if`, [-1])); + +// ./test/core/throw.wast:42 +assert_exception(() => invoke($0, `throw-param-f32`, [value("f32", 5)])); + +// ./test/core/throw.wast:43 +assert_exception(() => invoke($0, `throw-param-i64`, [5n])); + +// ./test/core/throw.wast:44 +assert_exception(() => invoke($0, `throw-param-f64`, [value("f64", 5)])); + +// ./test/core/throw.wast:46 +assert_exception(() => invoke($0, `throw-polymorphic`, [])); + +// ./test/core/throw.wast:47 +assert_exception(() => invoke($0, `throw-polymorphic-block`, [])); + +// ./test/core/throw.wast:49 +assert_return(() => invoke($0, `test-throw-1-2`, []), []); + +// ./test/core/throw.wast:51 +assert_invalid(() => instantiate(`(module (func (throw 0)))`), `unknown tag 0`); + +// ./test/core/throw.wast:52 +assert_invalid( + () => instantiate(`(module (tag (param i32)) (func (throw 0)))`), + `type mismatch: instruction requires [i32] but stack has []`, +); + +// ./test/core/throw.wast:54 +assert_invalid( + () => instantiate(`(module (tag (param i32)) (func (i64.const 5) (throw 0)))`), + `type mismatch: instruction requires [i32] but stack has [i64]`, +); diff --git a/js/src/jit-test/tests/wasm/spec/exception-handling/throw_ref.wast.js b/js/src/jit-test/tests/wasm/spec/exception-handling/throw_ref.wast.js new file mode 100644 index 0000000000..50b7b49837 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/exception-handling/throw_ref.wast.js @@ -0,0 +1,155 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/throw_ref.wast + +// ./test/core/throw_ref.wast:3 +let $0 = instantiate(`(module + (tag $$e0) + (tag $$e1) + + (func (export "catch-throw_ref-0") + (block $$h (result exnref) + (try_table (catch_ref $$e0 $$h) (throw $$e0)) + (unreachable) + ) + (throw_ref) + ) + + (func (export "catch-throw_ref-1") (param i32) (result i32) + (block $$h (result exnref) + (try_table (result i32) (catch_ref $$e0 $$h) (throw $$e0)) + (return) + ) + (if (param exnref) (i32.eqz (local.get 0)) + (then (throw_ref)) + (else (drop)) + ) + (i32.const 23) + ) + + (func (export "catchall-throw_ref-0") + (block $$h (result exnref) + (try_table (result exnref) (catch_all_ref $$h) (throw $$e0)) + ) + (throw_ref) + ) + + (func (export "catchall-throw_ref-1") (param i32) (result i32) + (block $$h (result exnref) + (try_table (result i32) (catch_all_ref $$h) (throw $$e0)) + (return) + ) + (if (param exnref) (i32.eqz (local.get 0)) + (then (throw_ref)) + (else (drop)) + ) + (i32.const 23) + ) + + (func (export "throw_ref-nested") (param i32) (result i32) + (local $$exn1 exnref) + (local $$exn2 exnref) + (block $$h1 (result exnref) + (try_table (result i32) (catch_ref $$e1 $$h1) (throw $$e1)) + (return) + ) + (local.set $$exn1) + (block $$h2 (result exnref) + (try_table (result i32) (catch_ref $$e0 $$h2) (throw $$e0)) + (return) + ) + (local.set $$exn2) + (if (i32.eq (local.get 0) (i32.const 0)) + (then (throw_ref (local.get $$exn1))) + ) + (if (i32.eq (local.get 0) (i32.const 1)) + (then (throw_ref (local.get $$exn2))) + ) + (i32.const 23) + ) + + (func (export "throw_ref-recatch") (param i32) (result i32) + (local $$e exnref) + (block $$h1 (result exnref) + (try_table (result i32) (catch_ref $$e0 $$h1) (throw $$e0)) + (return) + ) + (local.set $$e) + (block $$h2 (result exnref) + (try_table (result i32) (catch_ref $$e0 $$h2) + (if (i32.eqz (local.get 0)) + (then (throw_ref (local.get $$e))) + ) + (i32.const 42) + ) + (return) + ) + (drop) (i32.const 23) + ) + + (func (export "throw_ref-stack-polymorphism") + (local $$e exnref) + (block $$h (result exnref) + (try_table (result f64) (catch_ref $$e0 $$h) (throw $$e0)) + (unreachable) + ) + (local.set $$e) + (i32.const 1) + (throw_ref (local.get $$e)) + ) +)`); + +// ./test/core/throw_ref.wast:99 +assert_exception(() => invoke($0, `catch-throw_ref-0`, [])); + +// ./test/core/throw_ref.wast:101 +assert_exception(() => invoke($0, `catch-throw_ref-1`, [0])); + +// ./test/core/throw_ref.wast:102 +assert_return(() => invoke($0, `catch-throw_ref-1`, [1]), [value("i32", 23)]); + +// ./test/core/throw_ref.wast:104 +assert_exception(() => invoke($0, `catchall-throw_ref-0`, [])); + +// ./test/core/throw_ref.wast:106 +assert_exception(() => invoke($0, `catchall-throw_ref-1`, [0])); + +// ./test/core/throw_ref.wast:107 +assert_return(() => invoke($0, `catchall-throw_ref-1`, [1]), [value("i32", 23)]); + +// ./test/core/throw_ref.wast:108 +assert_exception(() => invoke($0, `throw_ref-nested`, [0])); + +// ./test/core/throw_ref.wast:109 +assert_exception(() => invoke($0, `throw_ref-nested`, [1])); + +// ./test/core/throw_ref.wast:110 +assert_return(() => invoke($0, `throw_ref-nested`, [2]), [value("i32", 23)]); + +// ./test/core/throw_ref.wast:112 +assert_return(() => invoke($0, `throw_ref-recatch`, [0]), [value("i32", 23)]); + +// ./test/core/throw_ref.wast:113 +assert_return(() => invoke($0, `throw_ref-recatch`, [1]), [value("i32", 42)]); + +// ./test/core/throw_ref.wast:115 +assert_exception(() => invoke($0, `throw_ref-stack-polymorphism`, [])); + +// ./test/core/throw_ref.wast:117 +assert_invalid(() => instantiate(`(module (func (throw_ref)))`), `type mismatch`); + +// ./test/core/throw_ref.wast:118 +assert_invalid(() => instantiate(`(module (func (block (throw_ref))))`), `type mismatch`); diff --git a/js/src/jit-test/tests/wasm/spec/extended-const/directives.txt b/js/src/jit-test/tests/wasm/spec/extended-const/directives.txt new file mode 100644 index 0000000000..5b3d5f6d83 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/extended-const/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; --wasm-extended-const; --no-wasm-gc; skip-if: !wasmExtendedConstEnabled() \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/extended-const/global.wast.js b/js/src/jit-test/tests/wasm/spec/extended-const/global.wast.js new file mode 100644 index 0000000000..b0b4beed95 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/extended-const/global.wast.js @@ -0,0 +1,828 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/global.wast + +// ./test/core/global.wast:3 +let $0 = instantiate(`(module + (global (import "spectest" "global_i32") i32) + (global (import "spectest" "global_i64") i64) + + (global $$a i32 (i32.const -2)) + (global (;3;) f32 (f32.const -3)) + (global (;4;) f64 (f64.const -4)) + (global $$b i64 (i64.const -5)) + + (global $$x (mut i32) (i32.const -12)) + (global (;7;) (mut f32) (f32.const -13)) + (global (;8;) (mut f64) (f64.const -14)) + (global $$y (mut i64) (i64.const -15)) + + (global $$z1 i32 (global.get 0)) + (global $$z2 i64 (global.get 1)) + (global $$z3 i32 (i32.add (i32.sub (i32.mul (i32.const 20) (i32.const 2)) (i32.const 2)) (i32.const 4))) + (global $$z4 i64 (i64.add (i64.sub (i64.mul (i64.const 20) (i64.const 2)) (i64.const 2)) (i64.const 5))) + (global $$z5 i32 (i32.add (global.get 0) (i32.const 42))) + (global $$z6 i64 (i64.add (global.get 1) (i64.const 42))) + + (global $$r externref (ref.null extern)) + (global $$mr (mut externref) (ref.null extern)) + (global funcref (ref.null func)) + + (func (export "get-a") (result i32) (global.get $$a)) + (func (export "get-b") (result i64) (global.get $$b)) + (func (export "get-r") (result externref) (global.get $$r)) + (func (export "get-mr") (result externref) (global.get $$mr)) + (func (export "get-x") (result i32) (global.get $$x)) + (func (export "get-y") (result i64) (global.get $$y)) + (func (export "get-z1") (result i32) (global.get $$z1)) + (func (export "get-z2") (result i64) (global.get $$z2)) + (func (export "get-z3") (result i32) (global.get $$z3)) + (func (export "get-z4") (result i64) (global.get $$z4)) + (func (export "get-z5") (result i32) (global.get $$z5)) + (func (export "get-z6") (result i64) (global.get $$z6)) + (func (export "set-x") (param i32) (global.set $$x (local.get 0))) + (func (export "set-y") (param i64) (global.set $$y (local.get 0))) + (func (export "set-mr") (param externref) (global.set $$mr (local.get 0))) + + (func (export "get-3") (result f32) (global.get 3)) + (func (export "get-4") (result f64) (global.get 4)) + (func (export "get-7") (result f32) (global.get 7)) + (func (export "get-8") (result f64) (global.get 8)) + (func (export "set-7") (param f32) (global.set 7 (local.get 0))) + (func (export "set-8") (param f64) (global.set 8 (local.get 0))) + + ;; As the argument of control constructs and instructions + + (memory 1) + + (func $$dummy) + + (func (export "as-select-first") (result i32) + (select (global.get $$x) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (global.get $$x) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (global.get $$x)) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) + (global.get $$x) (call $$dummy) (call $$dummy) + ) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) + (call $$dummy) (global.get $$x) (call $$dummy) + ) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) + (call $$dummy) (call $$dummy) (global.get $$x) + ) + ) + + (func (export "as-if-condition") (result i32) + (if (result i32) (global.get $$x) + (then (call $$dummy) (i32.const 2)) + (else (call $$dummy) (i32.const 3)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (global.get $$x)) (else (i32.const 2)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 2)) (else (global.get $$x)) + ) + ) + + (func (export "as-br_if-first") (result i32) + (block (result i32) + (br_if 0 (global.get $$x) (i32.const 2)) + (return (i32.const 3)) + ) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) + (br_if 0 (i32.const 2) (global.get $$x)) + (return (i32.const 3)) + ) + ) + + (func (export "as-br_table-first") (result i32) + (block (result i32) + (global.get $$x) (i32.const 2) (br_table 0 0) + ) + ) + (func (export "as-br_table-last") (result i32) + (block (result i32) + (i32.const 2) (global.get $$x) (br_table 0 0) + ) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (global.get $$x) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (global.get $$x) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (i32.const 0) (global.get $$x) + ) + ) + ) + + (func (export "as-store-first") + (global.get $$x) (i32.const 1) (i32.store) + ) + (func (export "as-store-last") + (i32.const 0) (global.get $$x) (i32.store) + ) + (func (export "as-load-operand") (result i32) + (i32.load (global.get $$x)) + ) + (func (export "as-memory.grow-value") (result i32) + (memory.grow (global.get $$x)) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + (func (export "as-call-value") (result i32) + (call $$f (global.get $$x)) + ) + + (func (export "as-return-value") (result i32) + (global.get $$x) (return) + ) + (func (export "as-drop-operand") + (drop (global.get $$x)) + ) + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (global.get $$x))) + ) + + (func (export "as-local.set-value") (param i32) (result i32) + (local.set 0 (global.get $$x)) + (local.get 0) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (local.tee 0 (global.get $$x)) + ) + (func (export "as-global.set-value") (result i32) + (global.set $$x (global.get $$x)) + (global.get $$x) + ) + + (func (export "as-unary-operand") (result i32) + (i32.eqz (global.get $$x)) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (global.get $$x) (global.get $$x) + ) + ) + (func (export "as-compare-operand") (result i32) + (i32.gt_u + (global.get 0) (i32.const 1) + ) + ) +)`); + +// ./test/core/global.wast:204 +assert_return(() => invoke($0, `get-a`, []), [value("i32", -2)]); + +// ./test/core/global.wast:205 +assert_return(() => invoke($0, `get-b`, []), [value("i64", -5n)]); + +// ./test/core/global.wast:206 +assert_return(() => invoke($0, `get-r`, []), [value('externref', null)]); + +// ./test/core/global.wast:207 +assert_return(() => invoke($0, `get-mr`, []), [value('externref', null)]); + +// ./test/core/global.wast:208 +assert_return(() => invoke($0, `get-x`, []), [value("i32", -12)]); + +// ./test/core/global.wast:209 +assert_return(() => invoke($0, `get-y`, []), [value("i64", -15n)]); + +// ./test/core/global.wast:210 +assert_return(() => invoke($0, `get-z1`, []), [value("i32", 666)]); + +// ./test/core/global.wast:211 +assert_return(() => invoke($0, `get-z2`, []), [value("i64", 666n)]); + +// ./test/core/global.wast:212 +assert_return(() => invoke($0, `get-z3`, []), [value("i32", 42)]); + +// ./test/core/global.wast:213 +assert_return(() => invoke($0, `get-z4`, []), [value("i64", 43n)]); + +// ./test/core/global.wast:214 +assert_return(() => invoke($0, `get-z5`, []), [value("i32", 708)]); + +// ./test/core/global.wast:215 +assert_return(() => invoke($0, `get-z6`, []), [value("i64", 708n)]); + +// ./test/core/global.wast:217 +assert_return(() => invoke($0, `get-3`, []), [value("f32", -3)]); + +// ./test/core/global.wast:218 +assert_return(() => invoke($0, `get-4`, []), [value("f64", -4)]); + +// ./test/core/global.wast:219 +assert_return(() => invoke($0, `get-7`, []), [value("f32", -13)]); + +// ./test/core/global.wast:220 +assert_return(() => invoke($0, `get-8`, []), [value("f64", -14)]); + +// ./test/core/global.wast:222 +assert_return(() => invoke($0, `set-x`, [6]), []); + +// ./test/core/global.wast:223 +assert_return(() => invoke($0, `set-y`, [7n]), []); + +// ./test/core/global.wast:225 +assert_return(() => invoke($0, `set-7`, [value("f32", 8)]), []); + +// ./test/core/global.wast:226 +assert_return(() => invoke($0, `set-8`, [value("f64", 9)]), []); + +// ./test/core/global.wast:228 +assert_return(() => invoke($0, `get-x`, []), [value("i32", 6)]); + +// ./test/core/global.wast:229 +assert_return(() => invoke($0, `get-y`, []), [value("i64", 7n)]); + +// ./test/core/global.wast:230 +assert_return(() => invoke($0, `get-7`, []), [value("f32", 8)]); + +// ./test/core/global.wast:231 +assert_return(() => invoke($0, `get-8`, []), [value("f64", 9)]); + +// ./test/core/global.wast:233 +assert_return(() => invoke($0, `set-7`, [value("f32", 8)]), []); + +// ./test/core/global.wast:234 +assert_return(() => invoke($0, `set-8`, [value("f64", 9)]), []); + +// ./test/core/global.wast:235 +assert_return(() => invoke($0, `set-mr`, [externref(10)]), []); + +// ./test/core/global.wast:237 +assert_return(() => invoke($0, `get-x`, []), [value("i32", 6)]); + +// ./test/core/global.wast:238 +assert_return(() => invoke($0, `get-y`, []), [value("i64", 7n)]); + +// ./test/core/global.wast:239 +assert_return(() => invoke($0, `get-7`, []), [value("f32", 8)]); + +// ./test/core/global.wast:240 +assert_return(() => invoke($0, `get-8`, []), [value("f64", 9)]); + +// ./test/core/global.wast:241 +assert_return(() => invoke($0, `get-mr`, []), [new ExternRefResult(10)]); + +// ./test/core/global.wast:243 +assert_return(() => invoke($0, `as-select-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:244 +assert_return(() => invoke($0, `as-select-mid`, []), [value("i32", 2)]); + +// ./test/core/global.wast:245 +assert_return(() => invoke($0, `as-select-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:247 +assert_return(() => invoke($0, `as-loop-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:248 +assert_return(() => invoke($0, `as-loop-mid`, []), [value("i32", 6)]); + +// ./test/core/global.wast:249 +assert_return(() => invoke($0, `as-loop-last`, []), [value("i32", 6)]); + +// ./test/core/global.wast:251 +assert_return(() => invoke($0, `as-if-condition`, []), [value("i32", 2)]); + +// ./test/core/global.wast:252 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 6)]); + +// ./test/core/global.wast:253 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 6)]); + +// ./test/core/global.wast:255 +assert_return(() => invoke($0, `as-br_if-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:256 +assert_return(() => invoke($0, `as-br_if-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:258 +assert_return(() => invoke($0, `as-br_table-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:259 +assert_return(() => invoke($0, `as-br_table-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:261 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:262 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 2)]); + +// ./test/core/global.wast:263 +assert_trap(() => invoke($0, `as-call_indirect-last`, []), `undefined element`); + +// ./test/core/global.wast:265 +assert_return(() => invoke($0, `as-store-first`, []), []); + +// ./test/core/global.wast:266 +assert_return(() => invoke($0, `as-store-last`, []), []); + +// ./test/core/global.wast:267 +assert_return(() => invoke($0, `as-load-operand`, []), [value("i32", 1)]); + +// ./test/core/global.wast:268 +assert_return(() => invoke($0, `as-memory.grow-value`, []), [value("i32", 1)]); + +// ./test/core/global.wast:270 +assert_return(() => invoke($0, `as-call-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:272 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:273 +assert_return(() => invoke($0, `as-drop-operand`, []), []); + +// ./test/core/global.wast:274 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:276 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 6)]); + +// ./test/core/global.wast:277 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 6)]); + +// ./test/core/global.wast:278 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:280 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 0)]); + +// ./test/core/global.wast:281 +assert_return(() => invoke($0, `as-binary-operand`, []), [value("i32", 36)]); + +// ./test/core/global.wast:282 +assert_return(() => invoke($0, `as-compare-operand`, []), [value("i32", 1)]); + +// ./test/core/global.wast:284 +assert_invalid( + () => instantiate(`(module (global f32 (f32.const 0)) (func (global.set 0 (f32.const 1))))`), + `global is immutable`, +); + +// ./test/core/global.wast:289 +assert_invalid( + () => instantiate(`(module (import "spectest" "global_i32" (global i32)) (func (global.set 0 (i32.const 1))))`), + `global is immutable`, +); + +// ./test/core/global.wast:295 +let $1 = instantiate(`(module (global (mut f32) (f32.const 0)) (export "a" (global 0)))`); + +// ./test/core/global.wast:296 +let $2 = instantiate(`(module (global (export "a") (mut f32) (f32.const 0)))`); + +// ./test/core/global.wast:298 +assert_invalid( + () => instantiate(`(module (global f32 (f32.neg (f32.const 0))))`), + `constant expression required`, +); + +// ./test/core/global.wast:303 +assert_invalid( + () => instantiate(`(module (global f32 (local.get 0)))`), + `constant expression required`, +); + +// ./test/core/global.wast:308 +assert_invalid( + () => instantiate(`(module (global f32 (f32.neg (f32.const 1))))`), + `constant expression required`, +); + +// ./test/core/global.wast:313 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0) (nop)))`), + `constant expression required`, +); + +// ./test/core/global.wast:318 +assert_invalid( + () => instantiate(`(module (global i32 (i32.ctz (i32.const 0))))`), + `constant expression required`, +); + +// ./test/core/global.wast:323 +assert_invalid( + () => instantiate(`(module (global i32 (nop)))`), + `constant expression required`, +); + +// ./test/core/global.wast:328 +assert_invalid(() => instantiate(`(module (global i32 (f32.const 0)))`), `type mismatch`); + +// ./test/core/global.wast:333 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0) (i32.const 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:338 +assert_invalid( + () => instantiate(`(module (global i32 (;empty instruction sequence;)))`), + `type mismatch`, +); + +// ./test/core/global.wast:343 +assert_invalid( + () => instantiate(`(module (global (import "" "") externref) (global funcref (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:348 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (global.get 0) (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:353 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (i32.const 0) (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:358 +assert_invalid( + () => instantiate(`(module (global i32 (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:363 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0)) (global i32 (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:367 +assert_invalid( + () => instantiate(`(module (global $$g i32 (i32.const 0)) (global i32 (global.get $$g)))`), + `unknown global`, +); + +// ./test/core/global.wast:372 +assert_invalid( + () => instantiate(`(module (global i32 (global.get 1)) (global i32 (i32.const 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:377 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (global.get 2)))`), + `unknown global`, +); + +// ./test/core/global.wast:382 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-mut-i32") (mut i32)) (global i32 (global.get 0)))`), + `constant expression required`, +); + +// ./test/core/global.wast:387 +let $3 = instantiate(`(module + (import "spectest" "global_i32" (global i32)) +)`); + +// ./test/core/global.wast:390 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\98\\80\\80\\80\\00" ;; import section + "\\01" ;; length 1 + "\\08\\73\\70\\65\\63\\74\\65\\73\\74" ;; "spectest" + "\\0a\\67\\6c\\6f\\62\\61\\6c\\5f\\69\\33\\32" ;; "global_i32" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\02" ;; malformed mutability + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:403 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\98\\80\\80\\80\\00" ;; import section + "\\01" ;; length 1 + "\\08\\73\\70\\65\\63\\74\\65\\73\\74" ;; "spectest" + "\\0a\\67\\6c\\6f\\62\\61\\6c\\5f\\69\\33\\32" ;; "global_i32" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\ff" ;; malformed mutability + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:417 +let $4 = instantiate(`(module + (global i32 (i32.const 0)) +)`); + +// ./test/core/global.wast:420 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\06\\86\\80\\80\\80\\00" ;; global section + "\\01" ;; length 1 + "\\7f" ;; i32 + "\\02" ;; malformed mutability + "\\41\\00" ;; i32.const 0 + "\\0b" ;; end + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:432 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\06\\86\\80\\80\\80\\00" ;; global section + "\\01" ;; length 1 + "\\7f" ;; i32 + "\\ff" ;; malformed mutability + "\\41\\00" ;; i32.const 0 + "\\0b" ;; end + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:446 +assert_invalid( + () => instantiate(`(module (func (result i32) (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:451 +assert_invalid( + () => instantiate(`(module + (global i32 (i32.const 0)) + (func (result i32) (global.get 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:459 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (func (result i32) (global.get 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:467 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (global i32 (i32.const 0)) + (func (result i32) (global.get 2)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:477 +assert_invalid( + () => instantiate(`(module (func (i32.const 0) (global.set 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:482 +assert_invalid( + () => instantiate(`(module + (global i32 (i32.const 0)) + (func (i32.const 0) (global.set 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:490 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (func (i32.const 0) (global.set 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:498 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (global i32 (i32.const 0)) + (func (i32.const 0) (global.set 2)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:508 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty + (global.set $$x) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:517 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-block + (i32.const 0) + (block (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:527 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-loop + (i32.const 0) + (loop (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:537 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:547 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:557 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br + (i32.const 0) + (block (br 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:567 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br_if + (i32.const 0) + (block (br_if 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:577 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br_table + (i32.const 0) + (block (br_table 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:587 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-return + (return (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:596 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-select + (select (global.set $$x) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:605 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-call + (call 1 (global.set $$x)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:615 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-global.set-value-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (global.set $$x) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:634 +assert_malformed( + () => instantiate(`(global $$foo i32 (i32.const 0)) (global $$foo i32 (i32.const 0)) `), + `duplicate global`, +); + +// ./test/core/global.wast:638 +assert_malformed( + () => instantiate(`(import "" "" (global $$foo i32)) (global $$foo i32 (i32.const 0)) `), + `duplicate global`, +); + +// ./test/core/global.wast:642 +assert_malformed( + () => instantiate(`(import "" "" (global $$foo i32)) (import "" "" (global $$foo i32)) `), + `duplicate global`, +); diff --git a/js/src/jit-test/tests/wasm/spec/extended-const/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/extended-const/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/extended-const/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/extended-const/harness/harness.js b/js/src/jit-test/tests/wasm/spec/extended-const/harness/harness.js new file mode 100644 index 0000000000..a96781e8ed --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/extended-const/harness/harness.js @@ -0,0 +1,448 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/function-references/br_if.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/br_if.wast.js new file mode 100644 index 0000000000..511ee003fb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/br_if.wast.js @@ -0,0 +1,886 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/br_if.wast + +// ./test/core/br_if.wast:3 +let $0 = instantiate(`(module + (func $$dummy) + + (func (export "type-i32") + (block (drop (i32.ctz (br_if 0 (i32.const 0) (i32.const 1))))) + ) + (func (export "type-i64") + (block (drop (i64.ctz (br_if 0 (i64.const 0) (i32.const 1))))) + ) + (func (export "type-f32") + (block (drop (f32.neg (br_if 0 (f32.const 0) (i32.const 1))))) + ) + (func (export "type-f64") + (block (drop (f64.neg (br_if 0 (f64.const 0) (i32.const 1))))) + ) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (br_if 0 (i64.const 2) (i32.const 1)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (br_if 0 (f32.const 3) (i32.const 1)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (br_if 0 (f64.const 4) (i32.const 1)))) + ) + + (func (export "as-block-first") (param i32) (result i32) + (block (br_if 0 (local.get 0)) (return (i32.const 2))) (i32.const 3) + ) + (func (export "as-block-mid") (param i32) (result i32) + (block (call $$dummy) (br_if 0 (local.get 0)) (return (i32.const 2))) + (i32.const 3) + ) + (func (export "as-block-last") (param i32) + (block (call $$dummy) (call $$dummy) (br_if 0 (local.get 0))) + ) + (func (export "as-block-first-value") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 10) (local.get 0))) (return (i32.const 11)) + ) + ) + (func (export "as-block-mid-value") (param i32) (result i32) + (block (result i32) + (call $$dummy) + (drop (br_if 0 (i32.const 20) (local.get 0))) + (return (i32.const 21)) + ) + ) + (func (export "as-block-last-value") (param i32) (result i32) + (block (result i32) + (call $$dummy) (call $$dummy) (br_if 0 (i32.const 11) (local.get 0)) + ) + ) + + (func (export "as-loop-first") (param i32) (result i32) + (block (loop (br_if 1 (local.get 0)) (return (i32.const 2)))) (i32.const 3) + ) + (func (export "as-loop-mid") (param i32) (result i32) + (block (loop (call $$dummy) (br_if 1 (local.get 0)) (return (i32.const 2)))) + (i32.const 4) + ) + (func (export "as-loop-last") (param i32) + (loop (call $$dummy) (br_if 1 (local.get 0))) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (br_if 0 (i32.const 1) (i32.const 2)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (br_if 0 (i32.const 1) (i32.const 2)) (i32.const 3))) + (i32.const 4) + ) + ) + (func (export "as-br_if-value-cond") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 2) (br_if 0 (i32.const 1) (local.get 0)))) + (i32.const 4) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (br_if 0 (i32.const 1) (i32.const 2)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (br_if 0 (i32.const 1) (i32.const 2)) (i32.const 3)) (i32.const 4) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 2) (br_if 0 (i32.const 1) (i32.const 3))) (i32.const 4) + ) + ) + (func (export "as-return-value") (result i64) + (block (result i64) (return (br_if 0 (i64.const 1) (i32.const 2)))) + ) + + (func (export "as-if-cond") (param i32) (result i32) + (block (result i32) + (if (result i32) + (br_if 0 (i32.const 1) (local.get 0)) + (then (i32.const 2)) + (else (i32.const 3)) + ) + ) + ) + (func (export "as-if-then") (param i32 i32) + (block + (if (local.get 0) (then (br_if 1 (local.get 1))) (else (call $$dummy))) + ) + ) + (func (export "as-if-else") (param i32 i32) + (block + (if (local.get 0) (then (call $$dummy)) (else (br_if 1 (local.get 1)))) + ) + ) + + (func (export "as-select-first") (param i32) (result i32) + (block (result i32) + (select (br_if 0 (i32.const 3) (i32.const 10)) (i32.const 2) (local.get 0)) + ) + ) + (func (export "as-select-second") (param i32) (result i32) + (block (result i32) + (select (i32.const 1) (br_if 0 (i32.const 3) (i32.const 10)) (local.get 0)) + ) + ) + (func (export "as-select-cond") (result i32) + (block (result i32) + (select (i32.const 1) (i32.const 2) (br_if 0 (i32.const 3) (i32.const 10))) + ) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (block (result i32) + (call $$f + (br_if 0 (i32.const 12) (i32.const 1)) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call-mid") (result i32) + (block (result i32) + (call $$f + (i32.const 1) (br_if 0 (i32.const 13) (i32.const 1)) (i32.const 3) + ) + ) + ) + (func (export "as-call-last") (result i32) + (block (result i32) + (call $$f + (i32.const 1) (i32.const 2) (br_if 0 (i32.const 14) (i32.const 1)) + ) + ) + ) + + (func $$func (param i32 i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-func") (result i32) + (block (result i32) + (call_indirect (type $$check) + (br_if 0 (i32.const 4) (i32.const 10)) + (i32.const 1) (i32.const 2) (i32.const 0) + ) + ) + ) + + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (br_if 0 (i32.const 4) (i32.const 10)) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (br_if 0 (i32.const 4) (i32.const 10)) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (i32.const 3) (br_if 0 (i32.const 4) (i32.const 10)) + ) + ) + ) + + (func (export "as-local.set-value") (param i32) (result i32) + (local i32) + (block (result i32) + (local.set 0 (br_if 0 (i32.const 17) (local.get 0))) + (i32.const -1) + ) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (block (result i32) + (local.tee 0 (br_if 0 (i32.const 1) (local.get 0))) + (return (i32.const -1)) + ) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (param i32) (result i32) + (block (result i32) + (global.set $$a (br_if 0 (i32.const 1) (local.get 0))) + (return (i32.const -1)) + ) + ) + + (memory 1) + (func (export "as-load-address") (result i32) + (block (result i32) (i32.load (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-loadN-address") (result i32) + (block (result i32) (i32.load8_s (br_if 0 (i32.const 30) (i32.const 1)))) + ) + + (func (export "as-store-address") (result i32) + (block (result i32) + (i32.store (br_if 0 (i32.const 30) (i32.const 1)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-store-value") (result i32) + (block (result i32) + (i32.store (i32.const 2) (br_if 0 (i32.const 31) (i32.const 1))) (i32.const -1) + ) + ) + + (func (export "as-storeN-address") (result i32) + (block (result i32) + (i32.store8 (br_if 0 (i32.const 32) (i32.const 1)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-storeN-value") (result i32) + (block (result i32) + (i32.store16 (i32.const 2) (br_if 0 (i32.const 33) (i32.const 1))) (i32.const -1) + ) + ) + + (func (export "as-unary-operand") (result f64) + (block (result f64) (f64.neg (br_if 0 (f64.const 1.0) (i32.const 1)))) + ) + (func (export "as-binary-left") (result i32) + (block (result i32) (i32.add (br_if 0 (i32.const 1) (i32.const 1)) (i32.const 10))) + ) + (func (export "as-binary-right") (result i32) + (block (result i32) (i32.sub (i32.const 10) (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-test-operand") (result i32) + (block (result i32) (i32.eqz (br_if 0 (i32.const 0) (i32.const 1)))) + ) + (func (export "as-compare-left") (result i32) + (block (result i32) (i32.le_u (br_if 0 (i32.const 1) (i32.const 1)) (i32.const 10))) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) (i32.ne (i32.const 10) (br_if 0 (i32.const 1) (i32.const 42)))) + ) + + (func (export "as-memory.grow-size") (result i32) + (block (result i32) (memory.grow (br_if 0 (i32.const 1) (i32.const 1)))) + ) + + (func (export "nested-block-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (i32.add + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) + (i32.const 16) + ) + ) + ) + ) + ) + + (func (export "nested-br-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + (i32.const 1) + )) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value-cond") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 1) + ) + )) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + (i32.const 1) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value-index") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 1) + ) + ) + (i32.const 16) + ) + ) + ) + +)`); + +// ./test/core/br_if.wast:372 +assert_return(() => invoke($0, `type-i32`, []), []); + +// ./test/core/br_if.wast:373 +assert_return(() => invoke($0, `type-i64`, []), []); + +// ./test/core/br_if.wast:374 +assert_return(() => invoke($0, `type-f32`, []), []); + +// ./test/core/br_if.wast:375 +assert_return(() => invoke($0, `type-f64`, []), []); + +// ./test/core/br_if.wast:377 +assert_return(() => invoke($0, `type-i32-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:378 +assert_return(() => invoke($0, `type-i64-value`, []), [value("i64", 2n)]); + +// ./test/core/br_if.wast:379 +assert_return(() => invoke($0, `type-f32-value`, []), [value("f32", 3)]); + +// ./test/core/br_if.wast:380 +assert_return(() => invoke($0, `type-f64-value`, []), [value("f64", 4)]); + +// ./test/core/br_if.wast:382 +assert_return(() => invoke($0, `as-block-first`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:383 +assert_return(() => invoke($0, `as-block-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:384 +assert_return(() => invoke($0, `as-block-mid`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:385 +assert_return(() => invoke($0, `as-block-mid`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:386 +assert_return(() => invoke($0, `as-block-last`, [0]), []); + +// ./test/core/br_if.wast:387 +assert_return(() => invoke($0, `as-block-last`, [1]), []); + +// ./test/core/br_if.wast:389 +assert_return(() => invoke($0, `as-block-first-value`, [0]), [value("i32", 11)]); + +// ./test/core/br_if.wast:390 +assert_return(() => invoke($0, `as-block-first-value`, [1]), [value("i32", 10)]); + +// ./test/core/br_if.wast:391 +assert_return(() => invoke($0, `as-block-mid-value`, [0]), [value("i32", 21)]); + +// ./test/core/br_if.wast:392 +assert_return(() => invoke($0, `as-block-mid-value`, [1]), [value("i32", 20)]); + +// ./test/core/br_if.wast:393 +assert_return(() => invoke($0, `as-block-last-value`, [0]), [value("i32", 11)]); + +// ./test/core/br_if.wast:394 +assert_return(() => invoke($0, `as-block-last-value`, [1]), [value("i32", 11)]); + +// ./test/core/br_if.wast:396 +assert_return(() => invoke($0, `as-loop-first`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:397 +assert_return(() => invoke($0, `as-loop-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:398 +assert_return(() => invoke($0, `as-loop-mid`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:399 +assert_return(() => invoke($0, `as-loop-mid`, [1]), [value("i32", 4)]); + +// ./test/core/br_if.wast:400 +assert_return(() => invoke($0, `as-loop-last`, [0]), []); + +// ./test/core/br_if.wast:401 +assert_return(() => invoke($0, `as-loop-last`, [1]), []); + +// ./test/core/br_if.wast:403 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:405 +assert_return(() => invoke($0, `as-br_if-cond`, []), []); + +// ./test/core/br_if.wast:406 +assert_return(() => invoke($0, `as-br_if-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:407 +assert_return(() => invoke($0, `as-br_if-value-cond`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:408 +assert_return(() => invoke($0, `as-br_if-value-cond`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:410 +assert_return(() => invoke($0, `as-br_table-index`, []), []); + +// ./test/core/br_if.wast:411 +assert_return(() => invoke($0, `as-br_table-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:412 +assert_return(() => invoke($0, `as-br_table-value-index`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:414 +assert_return(() => invoke($0, `as-return-value`, []), [value("i64", 1n)]); + +// ./test/core/br_if.wast:416 +assert_return(() => invoke($0, `as-if-cond`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:417 +assert_return(() => invoke($0, `as-if-cond`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:418 +assert_return(() => invoke($0, `as-if-then`, [0, 0]), []); + +// ./test/core/br_if.wast:419 +assert_return(() => invoke($0, `as-if-then`, [4, 0]), []); + +// ./test/core/br_if.wast:420 +assert_return(() => invoke($0, `as-if-then`, [0, 1]), []); + +// ./test/core/br_if.wast:421 +assert_return(() => invoke($0, `as-if-then`, [4, 1]), []); + +// ./test/core/br_if.wast:422 +assert_return(() => invoke($0, `as-if-else`, [0, 0]), []); + +// ./test/core/br_if.wast:423 +assert_return(() => invoke($0, `as-if-else`, [3, 0]), []); + +// ./test/core/br_if.wast:424 +assert_return(() => invoke($0, `as-if-else`, [0, 1]), []); + +// ./test/core/br_if.wast:425 +assert_return(() => invoke($0, `as-if-else`, [3, 1]), []); + +// ./test/core/br_if.wast:427 +assert_return(() => invoke($0, `as-select-first`, [0]), [value("i32", 3)]); + +// ./test/core/br_if.wast:428 +assert_return(() => invoke($0, `as-select-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:429 +assert_return(() => invoke($0, `as-select-second`, [0]), [value("i32", 3)]); + +// ./test/core/br_if.wast:430 +assert_return(() => invoke($0, `as-select-second`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:431 +assert_return(() => invoke($0, `as-select-cond`, []), [value("i32", 3)]); + +// ./test/core/br_if.wast:433 +assert_return(() => invoke($0, `as-call-first`, []), [value("i32", 12)]); + +// ./test/core/br_if.wast:434 +assert_return(() => invoke($0, `as-call-mid`, []), [value("i32", 13)]); + +// ./test/core/br_if.wast:435 +assert_return(() => invoke($0, `as-call-last`, []), [value("i32", 14)]); + +// ./test/core/br_if.wast:437 +assert_return(() => invoke($0, `as-call_indirect-func`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:438 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:439 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:440 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:442 +assert_return(() => invoke($0, `as-local.set-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:443 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 17)]); + +// ./test/core/br_if.wast:445 +assert_return(() => invoke($0, `as-local.tee-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:446 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:448 +assert_return(() => invoke($0, `as-global.set-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:449 +assert_return(() => invoke($0, `as-global.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:451 +assert_return(() => invoke($0, `as-load-address`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:452 +assert_return(() => invoke($0, `as-loadN-address`, []), [value("i32", 30)]); + +// ./test/core/br_if.wast:454 +assert_return(() => invoke($0, `as-store-address`, []), [value("i32", 30)]); + +// ./test/core/br_if.wast:455 +assert_return(() => invoke($0, `as-store-value`, []), [value("i32", 31)]); + +// ./test/core/br_if.wast:456 +assert_return(() => invoke($0, `as-storeN-address`, []), [value("i32", 32)]); + +// ./test/core/br_if.wast:457 +assert_return(() => invoke($0, `as-storeN-value`, []), [value("i32", 33)]); + +// ./test/core/br_if.wast:459 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("f64", 1)]); + +// ./test/core/br_if.wast:460 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:461 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:462 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/br_if.wast:463 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:464 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:465 +assert_return(() => invoke($0, `as-memory.grow-size`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:467 +assert_return(() => invoke($0, `nested-block-value`, [0]), [value("i32", 21)]); + +// ./test/core/br_if.wast:468 +assert_return(() => invoke($0, `nested-block-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:469 +assert_return(() => invoke($0, `nested-br-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:470 +assert_return(() => invoke($0, `nested-br-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:471 +assert_return(() => invoke($0, `nested-br_if-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:472 +assert_return(() => invoke($0, `nested-br_if-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:473 +assert_return(() => invoke($0, `nested-br_if-value-cond`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:474 +assert_return(() => invoke($0, `nested-br_if-value-cond`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:475 +assert_return(() => invoke($0, `nested-br_table-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:476 +assert_return(() => invoke($0, `nested-br_table-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:477 +assert_return(() => invoke($0, `nested-br_table-value-index`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:478 +assert_return(() => invoke($0, `nested-br_table-value-index`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:480 +assert_invalid( + () => instantiate(`(module (func $$type-false-i32 (block (i32.ctz (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:484 +assert_invalid( + () => instantiate(`(module (func $$type-false-i64 (block (i64.ctz (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:488 +assert_invalid( + () => instantiate(`(module (func $$type-false-f32 (block (f32.neg (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:492 +assert_invalid( + () => instantiate(`(module (func $$type-false-f64 (block (f64.neg (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:497 +assert_invalid( + () => instantiate(`(module (func $$type-true-i32 (block (i32.ctz (br_if 0 (i32.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:501 +assert_invalid( + () => instantiate(`(module (func $$type-true-i64 (block (i64.ctz (br_if 0 (i64.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:505 +assert_invalid( + () => instantiate(`(module (func $$type-true-f32 (block (f32.neg (br_if 0 (f32.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:509 +assert_invalid( + () => instantiate(`(module (func $$type-true-f64 (block (f64.neg (br_if 0 (i64.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:514 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (i32.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:520 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (i32.const 1)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:526 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-num-vs-void + (block (br_if 0 (i32.const 0) (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:532 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-num-vs-void + (block (br_if 0 (i32.const 0) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:539 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (nop) (i32.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:545 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (nop) (i32.const 1)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:551 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-num-vs-num (result i32) + (block (result i32) + (drop (br_if 0 (i64.const 1) (i32.const 0))) (i32.const 1) + ) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:559 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-num-vs-num (result i32) + (block (result i32) + (drop (br_if 0 (i64.const 1) (i32.const 0))) (i32.const 1) + ) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:568 +assert_invalid( + () => instantiate(`(module (func $$type-cond-empty-vs-i32 + (block (br_if 0)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:574 +assert_invalid( + () => instantiate(`(module (func $$type-cond-void-vs-i32 + (block (br_if 0 (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:580 +assert_invalid( + () => instantiate(`(module (func $$type-cond-num-vs-i32 + (block (br_if 0 (i64.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:586 +assert_invalid( + () => instantiate(`(module (func $$type-arg-cond-void-vs-i32 (result i32) + (block (result i32) (br_if 0 (i32.const 0) (nop)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:592 +assert_invalid( + () => instantiate(`(module (func $$type-arg-void-vs-num-nested (result i32) + (block (result i32) (i32.const 0) (block (br_if 1 (i32.const 1)))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:598 +assert_invalid( + () => instantiate(`(module (func $$type-arg-cond-num-vs-i32 (result i32) + (block (result i32) (br_if 0 (i32.const 0) (i64.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:605 +assert_invalid( + () => instantiate(`(module + (func $$type-1st-cond-empty-in-then + (block + (i32.const 0) (i32.const 0) + (if (result i32) (then (br_if 0))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:617 +assert_invalid( + () => instantiate(`(module + (func $$type-2nd-cond-empty-in-then + (block + (i32.const 0) (i32.const 0) + (if (result i32) (then (br_if 0 (i32.const 1)))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:629 +assert_invalid( + () => instantiate(`(module + (func $$type-1st-cond-empty-in-return + (block (result i32) + (return (br_if 0)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:640 +assert_invalid( + () => instantiate(`(module + (func $$type-2nd-cond-empty-in-return + (block (result i32) + (return (br_if 0 (i32.const 1))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:653 +assert_invalid( + () => instantiate(`(module (func $$unbound-label (br_if 1 (i32.const 1))))`), + `unknown label`, +); + +// ./test/core/br_if.wast:657 +assert_invalid( + () => instantiate(`(module (func $$unbound-nested-label (block (block (br_if 5 (i32.const 1))))))`), + `unknown label`, +); + +// ./test/core/br_if.wast:661 +assert_invalid( + () => instantiate(`(module (func $$large-label (br_if 0x10000001 (i32.const 1))))`), + `unknown label`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/br_on_non_null.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/br_on_non_null.wast.js new file mode 100644 index 0000000000..16a778a8e4 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/br_on_non_null.wast.js @@ -0,0 +1,101 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/br_on_non_null.wast + +// ./test/core/br_on_non_null.wast:1 +let $0 = instantiate(`(module + (type $$t (func (result i32))) + + (func $$nn (param $$r (ref $$t)) (result i32) + (call_ref $$t + (block $$l (result (ref $$t)) + (br_on_non_null $$l (local.get $$r)) + (return (i32.const -1)) + ) + ) + ) + (func $$n (param $$r (ref null $$t)) (result i32) + (call_ref $$t + (block $$l (result (ref $$t)) + (br_on_non_null $$l (local.get $$r)) + (return (i32.const -1)) + ) + ) + ) + + (elem func $$f) + (func $$f (result i32) (i32.const 7)) + + (func (export "nullable-null") (result i32) (call $$n (ref.null $$t))) + (func (export "nonnullable-f") (result i32) (call $$nn (ref.func $$f))) + (func (export "nullable-f") (result i32) (call $$n (ref.func $$f))) + + (func (export "unreachable") (result i32) + (block $$l (result (ref $$t)) + (br_on_non_null $$l (unreachable)) + (return (i32.const -1)) + ) + (call_ref $$t) + ) +)`); + +// ./test/core/br_on_non_null.wast:37 +assert_trap(() => invoke($0, `unreachable`, []), `unreachable`); + +// ./test/core/br_on_non_null.wast:39 +assert_return(() => invoke($0, `nullable-null`, []), [value("i32", -1)]); + +// ./test/core/br_on_non_null.wast:40 +assert_return(() => invoke($0, `nonnullable-f`, []), [value("i32", 7)]); + +// ./test/core/br_on_non_null.wast:41 +assert_return(() => invoke($0, `nullable-f`, []), [value("i32", 7)]); + +// ./test/core/br_on_non_null.wast:43 +let $1 = instantiate(`(module + (type $$t (func)) + (func (param $$r (ref null $$t)) (drop (block (result (ref $$t)) (br_on_non_null 0 (local.get $$r)) (unreachable)))) + (func (param $$r (ref null func)) (drop (block (result (ref func)) (br_on_non_null 0 (local.get $$r)) (unreachable)))) + (func (param $$r (ref null extern)) (drop (block (result (ref extern)) (br_on_non_null 0 (local.get $$r)) (unreachable)))) +)`); + +// ./test/core/br_on_non_null.wast:51 +let $2 = instantiate(`(module + (type $$t (func (param i32) (result i32))) + (elem func $$f) + (func $$f (param i32) (result i32) (i32.mul (local.get 0) (local.get 0))) + + (func $$a (param $$n i32) (param $$r (ref null $$t)) (result i32) + (call_ref $$t + (block $$l (result i32 (ref $$t)) + (return (br_on_non_null $$l (local.get $$n) (local.get $$r))) + ) + ) + ) + + (func (export "args-null") (param $$n i32) (result i32) + (call $$a (local.get $$n) (ref.null $$t)) + ) + (func (export "args-f") (param $$n i32) (result i32) + (call $$a (local.get $$n) (ref.func $$f)) + ) +)`); + +// ./test/core/br_on_non_null.wast:72 +assert_return(() => invoke($2, `args-null`, [3]), [value("i32", 3)]); + +// ./test/core/br_on_non_null.wast:73 +assert_return(() => invoke($2, `args-f`, [3]), [value("i32", 9)]); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/br_on_null.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/br_on_null.wast.js new file mode 100644 index 0000000000..3335e22930 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/br_on_null.wast.js @@ -0,0 +1,94 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/br_on_null.wast + +// ./test/core/br_on_null.wast:1 +let $0 = instantiate(`(module + (type $$t (func (result i32))) + + (func $$nn (param $$r (ref $$t)) (result i32) + (block $$l + (return (call_ref $$t (br_on_null $$l (local.get $$r)))) + ) + (i32.const -1) + ) + (func $$n (param $$r (ref null $$t)) (result i32) + (block $$l + (return (call_ref $$t (br_on_null $$l (local.get $$r)))) + ) + (i32.const -1) + ) + + (elem func $$f) + (func $$f (result i32) (i32.const 7)) + + (func (export "nullable-null") (result i32) (call $$n (ref.null $$t))) + (func (export "nonnullable-f") (result i32) (call $$nn (ref.func $$f))) + (func (export "nullable-f") (result i32) (call $$n (ref.func $$f))) + + (func (export "unreachable") (result i32) + (block $$l + (return (call_ref $$t (br_on_null $$l (unreachable)))) + ) + (i32.const -1) + ) +)`); + +// ./test/core/br_on_null.wast:32 +assert_trap(() => invoke($0, `unreachable`, []), `unreachable`); + +// ./test/core/br_on_null.wast:34 +assert_return(() => invoke($0, `nullable-null`, []), [value("i32", -1)]); + +// ./test/core/br_on_null.wast:35 +assert_return(() => invoke($0, `nonnullable-f`, []), [value("i32", 7)]); + +// ./test/core/br_on_null.wast:36 +assert_return(() => invoke($0, `nullable-f`, []), [value("i32", 7)]); + +// ./test/core/br_on_null.wast:38 +let $1 = instantiate(`(module + (type $$t (func)) + (func (param $$r (ref null $$t)) (drop (br_on_null 0 (local.get $$r)))) + (func (param $$r (ref null func)) (drop (br_on_null 0 (local.get $$r)))) + (func (param $$r (ref null extern)) (drop (br_on_null 0 (local.get $$r)))) +)`); + +// ./test/core/br_on_null.wast:46 +let $2 = instantiate(`(module + (type $$t (func (param i32) (result i32))) + (elem func $$f) + (func $$f (param i32) (result i32) (i32.mul (local.get 0) (local.get 0))) + + (func $$a (param $$n i32) (param $$r (ref null $$t)) (result i32) + (block $$l (result i32) + (return (call_ref $$t (br_on_null $$l (local.get $$n) (local.get $$r)))) + ) + ) + + (func (export "args-null") (param $$n i32) (result i32) + (call $$a (local.get $$n) (ref.null $$t)) + ) + (func (export "args-f") (param $$n i32) (result i32) + (call $$a (local.get $$n) (ref.func $$f)) + ) +)`); + +// ./test/core/br_on_null.wast:65 +assert_return(() => invoke($2, `args-null`, [3]), [value("i32", 3)]); + +// ./test/core/br_on_null.wast:66 +assert_return(() => invoke($2, `args-f`, [3]), [value("i32", 9)]); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/call_ref.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/call_ref.wast.js new file mode 100644 index 0000000000..4b430e1dae --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/call_ref.wast.js @@ -0,0 +1,275 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/call_ref.wast + +// ./test/core/call_ref.wast:1 +let $0 = instantiate(`(module + (type $$ii (func (param i32) (result i32))) + + (func $$apply (param $$f (ref $$ii)) (param $$x i32) (result i32) + (call_ref $$ii (local.get $$x) (local.get $$f)) + ) + + (func $$f (type $$ii) (i32.mul (local.get 0) (local.get 0))) + (func $$g (type $$ii) (i32.sub (i32.const 0) (local.get 0))) + + (elem declare func $$f $$g) + + (func (export "run") (param $$x i32) (result i32) + (local $$rf (ref null $$ii)) + (local $$rg (ref null $$ii)) + (local.set $$rf (ref.func $$f)) + (local.set $$rg (ref.func $$g)) + (call_ref $$ii (call_ref $$ii (local.get $$x) (local.get $$rf)) (local.get $$rg)) + ) + + (func (export "null") (result i32) + (call_ref $$ii (i32.const 1) (ref.null $$ii)) + ) + + ;; Recursion + + (type $$ll (func (param i64) (result i64))) + (type $$lll (func (param i64 i64) (result i64))) + + (elem declare func $$fac) + (global $$fac (ref $$ll) (ref.func $$fac)) + + (func $$fac (export "fac") (type $$ll) + (if (result i64) (i64.eqz (local.get 0)) + (then (i64.const 1)) + (else + (i64.mul + (local.get 0) + (call_ref $$ll (i64.sub (local.get 0) (i64.const 1)) (global.get $$fac)) + ) + ) + ) + ) + + (elem declare func $$fac-acc) + (global $$fac-acc (ref $$lll) (ref.func $$fac-acc)) + + (func $$fac-acc (export "fac-acc") (type $$lll) + (if (result i64) (i64.eqz (local.get 0)) + (then (local.get 1)) + (else + (call_ref $$lll + (i64.sub (local.get 0) (i64.const 1)) + (i64.mul (local.get 0) (local.get 1)) + (global.get $$fac-acc) + ) + ) + ) + ) + + (elem declare func $$fib) + (global $$fib (ref $$ll) (ref.func $$fib)) + + (func $$fib (export "fib") (type $$ll) + (if (result i64) (i64.le_u (local.get 0) (i64.const 1)) + (then (i64.const 1)) + (else + (i64.add + (call_ref $$ll (i64.sub (local.get 0) (i64.const 2)) (global.get $$fib)) + (call_ref $$ll (i64.sub (local.get 0) (i64.const 1)) (global.get $$fib)) + ) + ) + ) + ) + + (elem declare func $$even $$odd) + (global $$even (ref $$ll) (ref.func $$even)) + (global $$odd (ref $$ll) (ref.func $$odd)) + + (func $$even (export "even") (type $$ll) + (if (result i64) (i64.eqz (local.get 0)) + (then (i64.const 44)) + (else (call_ref $$ll (i64.sub (local.get 0) (i64.const 1)) (global.get $$odd))) + ) + ) + (func $$odd (export "odd") (type $$ll) + (if (result i64) (i64.eqz (local.get 0)) + (then (i64.const 99)) + (else (call_ref $$ll (i64.sub (local.get 0) (i64.const 1)) (global.get $$even))) + ) + ) +)`); + +// ./test/core/call_ref.wast:94 +assert_return(() => invoke($0, `run`, [0]), [value("i32", 0)]); + +// ./test/core/call_ref.wast:95 +assert_return(() => invoke($0, `run`, [3]), [value("i32", -9)]); + +// ./test/core/call_ref.wast:97 +assert_trap(() => invoke($0, `null`, []), `null function`); + +// ./test/core/call_ref.wast:99 +assert_return(() => invoke($0, `fac`, [0n]), [value("i64", 1n)]); + +// ./test/core/call_ref.wast:100 +assert_return(() => invoke($0, `fac`, [1n]), [value("i64", 1n)]); + +// ./test/core/call_ref.wast:101 +assert_return(() => invoke($0, `fac`, [5n]), [value("i64", 120n)]); + +// ./test/core/call_ref.wast:102 +assert_return(() => invoke($0, `fac`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/call_ref.wast:103 +assert_return(() => invoke($0, `fac-acc`, [0n, 1n]), [value("i64", 1n)]); + +// ./test/core/call_ref.wast:104 +assert_return(() => invoke($0, `fac-acc`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/call_ref.wast:105 +assert_return(() => invoke($0, `fac-acc`, [5n, 1n]), [value("i64", 120n)]); + +// ./test/core/call_ref.wast:106 +assert_return(() => invoke($0, `fac-acc`, [25n, 1n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/call_ref.wast:111 +assert_return(() => invoke($0, `fib`, [0n]), [value("i64", 1n)]); + +// ./test/core/call_ref.wast:112 +assert_return(() => invoke($0, `fib`, [1n]), [value("i64", 1n)]); + +// ./test/core/call_ref.wast:113 +assert_return(() => invoke($0, `fib`, [2n]), [value("i64", 2n)]); + +// ./test/core/call_ref.wast:114 +assert_return(() => invoke($0, `fib`, [5n]), [value("i64", 8n)]); + +// ./test/core/call_ref.wast:115 +assert_return(() => invoke($0, `fib`, [20n]), [value("i64", 10946n)]); + +// ./test/core/call_ref.wast:117 +assert_return(() => invoke($0, `even`, [0n]), [value("i64", 44n)]); + +// ./test/core/call_ref.wast:118 +assert_return(() => invoke($0, `even`, [1n]), [value("i64", 99n)]); + +// ./test/core/call_ref.wast:119 +assert_return(() => invoke($0, `even`, [100n]), [value("i64", 44n)]); + +// ./test/core/call_ref.wast:120 +assert_return(() => invoke($0, `even`, [77n]), [value("i64", 99n)]); + +// ./test/core/call_ref.wast:121 +assert_return(() => invoke($0, `odd`, [0n]), [value("i64", 99n)]); + +// ./test/core/call_ref.wast:122 +assert_return(() => invoke($0, `odd`, [1n]), [value("i64", 44n)]); + +// ./test/core/call_ref.wast:123 +assert_return(() => invoke($0, `odd`, [200n]), [value("i64", 99n)]); + +// ./test/core/call_ref.wast:124 +assert_return(() => invoke($0, `odd`, [77n]), [value("i64", 44n)]); + +// ./test/core/call_ref.wast:129 +let $1 = instantiate(`(module + (type $$t (func)) + (func (export "unreachable") (result i32) + (unreachable) + (call_ref $$t) + ) +)`); + +// ./test/core/call_ref.wast:136 +assert_trap(() => invoke($1, `unreachable`, []), `unreachable`); + +// ./test/core/call_ref.wast:138 +let $2 = instantiate(`(module + (elem declare func $$f) + (type $$t (func (param i32) (result i32))) + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "unreachable") (result i32) + (unreachable) + (ref.func $$f) + (call_ref $$t) + ) +)`); + +// ./test/core/call_ref.wast:149 +assert_trap(() => invoke($2, `unreachable`, []), `unreachable`); + +// ./test/core/call_ref.wast:151 +let $3 = instantiate(`(module + (elem declare func $$f) + (type $$t (func (param i32) (result i32))) + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "unreachable") (result i32) + (unreachable) + (i32.const 0) + (ref.func $$f) + (call_ref $$t) + (drop) + (i32.const 0) + ) +)`); + +// ./test/core/call_ref.wast:165 +assert_trap(() => invoke($3, `unreachable`, []), `unreachable`); + +// ./test/core/call_ref.wast:167 +assert_invalid( + () => instantiate(`(module + (elem declare func $$f) + (type $$t (func (param i32) (result i32))) + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "unreachable") (result i32) + (unreachable) + (i64.const 0) + (ref.func $$f) + (call_ref $$t) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_ref.wast:183 +assert_invalid( + () => instantiate(`(module + (elem declare func $$f) + (type $$t (func (param i32) (result i32))) + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "unreachable") (result i32) + (unreachable) + (ref.func $$f) + (call_ref $$t) + (drop) + (i64.const 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_ref.wast:200 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (func $$f (param $$r externref) + (call_ref $$t (local.get $$r)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/directives.txt b/js/src/jit-test/tests/wasm/spec/function-references/directives.txt new file mode 100644 index 0000000000..bb76560525 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; --wasm-function-references; skip-if: !wasmFunctionReferencesEnabled() \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/function-references/func.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/func.wast.js new file mode 100644 index 0000000000..8521cbbd18 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/func.wast.js @@ -0,0 +1,1240 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/func.wast + +// ./test/core/func.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definition + (type $$sig (func)) + (func $$dummy) + + ;; Syntax + + (func) + (func (export "f")) + (func $$f) + (func $$h (export "g")) + + (func (local)) + (func (local) (local)) + (func (local i32)) + (func (local $$x i32)) + (func (local i32 f64 i64)) + (func (local i32) (local f64)) + (func (local i32 f32) (local $$x i64) (local) (local i32 f64)) + + (func (param)) + (func (param) (param)) + (func (param i32)) + (func (param $$x i32)) + (func (param i32 f64 i64)) + (func (param i32) (param f64)) + (func (param i32 f32) (param $$x i64) (param) (param i32 f64)) + + (func (result)) + (func (result) (result)) + (func (result i32) (unreachable)) + (func (result i32 f64 f32) (unreachable)) + (func (result i32) (result f64) (unreachable)) + (func (result i32 f32) (result i64) (result) (result i32 f64) (unreachable)) + + (type $$sig-1 (func)) + (type $$sig-2 (func (result i32))) + (type $$sig-3 (func (param $$x i32))) + (type $$sig-4 (func (param i32 f64 i32) (result i32))) + + (func (export "type-use-1") (type $$sig-1)) + (func (export "type-use-2") (type $$sig-2) (i32.const 0)) + (func (export "type-use-3") (type $$sig-3)) + (func (export "type-use-4") (type $$sig-4) (i32.const 0)) + (func (export "type-use-5") (type $$sig-2) (result i32) (i32.const 0)) + (func (export "type-use-6") (type $$sig-3) (param i32)) + (func (export "type-use-7") + (type $$sig-4) (param i32) (param f64 i32) (result i32) (i32.const 0) + ) + + (func (type $$sig)) + (func (type $$forward)) ;; forward reference + + (func $$complex + (param i32 f32) (param $$x i64) (param) (param i32) + (result) (result i32) (result) (result i64 i32) + (local f32) (local $$y i32) (local i64 i32) (local) (local f64 i32) + (unreachable) (unreachable) + ) + (func $$complex-sig + (type $$sig) + (local f32) (local $$y i32) (local i64 i32) (local) (local f64 i32) + (unreachable) (unreachable) + ) + + (type $$forward (func)) + + ;; Typing of locals + + (func (export "local-first-i32") (result i32) (local i32 i32) (local.get 0)) + (func (export "local-first-i64") (result i64) (local i64 i64) (local.get 0)) + (func (export "local-first-f32") (result f32) (local f32 f32) (local.get 0)) + (func (export "local-first-f64") (result f64) (local f64 f64) (local.get 0)) + (func (export "local-second-i32") (result i32) (local i32 i32) (local.get 1)) + (func (export "local-second-i64") (result i64) (local i64 i64) (local.get 1)) + (func (export "local-second-f32") (result f32) (local f32 f32) (local.get 1)) + (func (export "local-second-f64") (result f64) (local f64 f64) (local.get 1)) + (func (export "local-mixed") (result f64) + (local f32) (local $$x i32) (local i64 i32) (local) (local f64 i32) + (drop (f32.neg (local.get 0))) + (drop (i32.eqz (local.get 1))) + (drop (i64.eqz (local.get 2))) + (drop (i32.eqz (local.get 3))) + (drop (f64.neg (local.get 4))) + (drop (i32.eqz (local.get 5))) + (local.get 4) + ) + + ;; Typing of parameters + + (func (export "param-first-i32") (param i32 i32) (result i32) (local.get 0)) + (func (export "param-first-i64") (param i64 i64) (result i64) (local.get 0)) + (func (export "param-first-f32") (param f32 f32) (result f32) (local.get 0)) + (func (export "param-first-f64") (param f64 f64) (result f64) (local.get 0)) + (func (export "param-second-i32") (param i32 i32) (result i32) (local.get 1)) + (func (export "param-second-i64") (param i64 i64) (result i64) (local.get 1)) + (func (export "param-second-f32") (param f32 f32) (result f32) (local.get 1)) + (func (export "param-second-f64") (param f64 f64) (result f64) (local.get 1)) + (func (export "param-mixed") (param f32 i32) (param) (param $$x i64) (param i32 f64 i32) + (result f64) + (drop (f32.neg (local.get 0))) + (drop (i32.eqz (local.get 1))) + (drop (i64.eqz (local.get 2))) + (drop (i32.eqz (local.get 3))) + (drop (f64.neg (local.get 4))) + (drop (i32.eqz (local.get 5))) + (local.get 4) + ) + + ;; Typing of results + + (func (export "empty")) + (func (export "value-void") (call $$dummy)) + (func (export "value-i32") (result i32) (i32.const 77)) + (func (export "value-i64") (result i64) (i64.const 7777)) + (func (export "value-f32") (result f32) (f32.const 77.7)) + (func (export "value-f64") (result f64) (f64.const 77.77)) + (func (export "value-i32-f64") (result i32 f64) (i32.const 77) (f64.const 7)) + (func (export "value-i32-i32-i32") (result i32 i32 i32) + (i32.const 1) (i32.const 2) (i32.const 3) + ) + (func (export "value-block-void") (block (call $$dummy) (call $$dummy))) + (func (export "value-block-i32") (result i32) + (block (result i32) (call $$dummy) (i32.const 77)) + ) + (func (export "value-block-i32-i64") (result i32 i64) + (block (result i32 i64) (call $$dummy) (i32.const 1) (i64.const 2)) + ) + + (func (export "return-empty") (return)) + (func (export "return-i32") (result i32) (return (i32.const 78))) + (func (export "return-i64") (result i64) (return (i64.const 7878))) + (func (export "return-f32") (result f32) (return (f32.const 78.7))) + (func (export "return-f64") (result f64) (return (f64.const 78.78))) + (func (export "return-i32-f64") (result i32 f64) + (return (i32.const 78) (f64.const 78.78)) + ) + (func (export "return-i32-i32-i32") (result i32 i32 i32) + (return (i32.const 1) (i32.const 2) (i32.const 3)) + ) + (func (export "return-block-i32") (result i32) + (return (block (result i32) (call $$dummy) (i32.const 77))) + ) + (func (export "return-block-i32-i64") (result i32 i64) + (return (block (result i32 i64) (call $$dummy) (i32.const 1) (i64.const 2))) + ) + + (func (export "break-empty") (br 0)) + (func (export "break-i32") (result i32) (br 0 (i32.const 79))) + (func (export "break-i64") (result i64) (br 0 (i64.const 7979))) + (func (export "break-f32") (result f32) (br 0 (f32.const 79.9))) + (func (export "break-f64") (result f64) (br 0 (f64.const 79.79))) + (func (export "break-i32-f64") (result i32 f64) + (br 0 (i32.const 79) (f64.const 79.79)) + ) + (func (export "break-i32-i32-i32") (result i32 i32 i32) + (br 0 (i32.const 1) (i32.const 2) (i32.const 3)) + ) + (func (export "break-block-i32") (result i32) + (br 0 (block (result i32) (call $$dummy) (i32.const 77))) + ) + (func (export "break-block-i32-i64") (result i32 i64) + (br 0 (block (result i32 i64) (call $$dummy) (i32.const 1) (i64.const 2))) + ) + + (func (export "break-br_if-empty") (param i32) + (br_if 0 (local.get 0)) + ) + (func (export "break-br_if-num") (param i32) (result i32) + (drop (br_if 0 (i32.const 50) (local.get 0))) (i32.const 51) + ) + (func (export "break-br_if-num-num") (param i32) (result i32 i64) + (drop (drop (br_if 0 (i32.const 50) (i64.const 51) (local.get 0)))) + (i32.const 51) (i64.const 52) + ) + + (func (export "break-br_table-empty") (param i32) + (br_table 0 0 0 (local.get 0)) + ) + (func (export "break-br_table-num") (param i32) (result i32) + (br_table 0 0 (i32.const 50) (local.get 0)) (i32.const 51) + ) + (func (export "break-br_table-num-num") (param i32) (result f32 i64) + (br_table 0 0 (f32.const 50) (i64.const 51) (local.get 0)) + (f32.const 51) (i64.const 52) + ) + (func (export "break-br_table-nested-empty") (param i32) + (block (br_table 0 1 0 (local.get 0))) + ) + (func (export "break-br_table-nested-num") (param i32) (result i32) + (i32.add + (block (result i32) + (br_table 0 1 0 (i32.const 50) (local.get 0)) (i32.const 51) + ) + (i32.const 2) + ) + ) + (func (export "break-br_table-nested-num-num") (param i32) (result i32 i32) + (i32.add + (block (result i32 i32) + (br_table 0 1 0 (i32.const 50) (i32.const 51) (local.get 0)) + (i32.const 51) (i32.const -3) + ) + ) + (i32.const 52) + ) + + ;; Large signatures + + (func (export "large-sig") + (param i32 i64 f32 f32 i32 f64 f32 i32 i32 i32 f32 f64 f64 f64 i32 i32 f32) + (result f64 f32 i32 i32 i32 i64 f32 i32 i32 f32 f64 f64 i32 f32 i32 f64) + (local.get 5) + (local.get 2) + (local.get 0) + (local.get 8) + (local.get 7) + (local.get 1) + (local.get 3) + (local.get 9) + (local.get 4) + (local.get 6) + (local.get 13) + (local.get 11) + (local.get 15) + (local.get 16) + (local.get 14) + (local.get 12) + ) + + ;; Default initialization of locals + + (func (export "init-local-i32") (result i32) (local i32) (local.get 0)) + (func (export "init-local-i64") (result i64) (local i64) (local.get 0)) + (func (export "init-local-f32") (result f32) (local f32) (local.get 0)) + (func (export "init-local-f64") (result f64) (local f64) (local.get 0)) +)`); + +// ./test/core/func.wast:241 +assert_return(() => invoke($0, `type-use-1`, []), []); + +// ./test/core/func.wast:242 +assert_return(() => invoke($0, `type-use-2`, []), [value("i32", 0)]); + +// ./test/core/func.wast:243 +assert_return(() => invoke($0, `type-use-3`, [1]), []); + +// ./test/core/func.wast:244 +assert_return(() => invoke($0, `type-use-4`, [1, value("f64", 1), 1]), [value("i32", 0)]); + +// ./test/core/func.wast:248 +assert_return(() => invoke($0, `type-use-5`, []), [value("i32", 0)]); + +// ./test/core/func.wast:249 +assert_return(() => invoke($0, `type-use-6`, [1]), []); + +// ./test/core/func.wast:250 +assert_return(() => invoke($0, `type-use-7`, [1, value("f64", 1), 1]), [value("i32", 0)]); + +// ./test/core/func.wast:255 +assert_return(() => invoke($0, `local-first-i32`, []), [value("i32", 0)]); + +// ./test/core/func.wast:256 +assert_return(() => invoke($0, `local-first-i64`, []), [value("i64", 0n)]); + +// ./test/core/func.wast:257 +assert_return(() => invoke($0, `local-first-f32`, []), [value("f32", 0)]); + +// ./test/core/func.wast:258 +assert_return(() => invoke($0, `local-first-f64`, []), [value("f64", 0)]); + +// ./test/core/func.wast:259 +assert_return(() => invoke($0, `local-second-i32`, []), [value("i32", 0)]); + +// ./test/core/func.wast:260 +assert_return(() => invoke($0, `local-second-i64`, []), [value("i64", 0n)]); + +// ./test/core/func.wast:261 +assert_return(() => invoke($0, `local-second-f32`, []), [value("f32", 0)]); + +// ./test/core/func.wast:262 +assert_return(() => invoke($0, `local-second-f64`, []), [value("f64", 0)]); + +// ./test/core/func.wast:263 +assert_return(() => invoke($0, `local-mixed`, []), [value("f64", 0)]); + +// ./test/core/func.wast:265 +assert_return(() => invoke($0, `param-first-i32`, [2, 3]), [value("i32", 2)]); + +// ./test/core/func.wast:268 +assert_return(() => invoke($0, `param-first-i64`, [2n, 3n]), [value("i64", 2n)]); + +// ./test/core/func.wast:271 +assert_return( + () => invoke($0, `param-first-f32`, [value("f32", 2), value("f32", 3)]), + [value("f32", 2)], +); + +// ./test/core/func.wast:274 +assert_return( + () => invoke($0, `param-first-f64`, [value("f64", 2), value("f64", 3)]), + [value("f64", 2)], +); + +// ./test/core/func.wast:277 +assert_return(() => invoke($0, `param-second-i32`, [2, 3]), [value("i32", 3)]); + +// ./test/core/func.wast:280 +assert_return(() => invoke($0, `param-second-i64`, [2n, 3n]), [value("i64", 3n)]); + +// ./test/core/func.wast:283 +assert_return( + () => invoke($0, `param-second-f32`, [value("f32", 2), value("f32", 3)]), + [value("f32", 3)], +); + +// ./test/core/func.wast:286 +assert_return( + () => invoke($0, `param-second-f64`, [value("f64", 2), value("f64", 3)]), + [value("f64", 3)], +); + +// ./test/core/func.wast:290 +assert_return( + () => invoke($0, `param-mixed`, [value("f32", 1), 2, 3n, 4, value("f64", 5.5), 6]), + [value("f64", 5.5)], +); + +// ./test/core/func.wast:298 +assert_return(() => invoke($0, `empty`, []), []); + +// ./test/core/func.wast:299 +assert_return(() => invoke($0, `value-void`, []), []); + +// ./test/core/func.wast:300 +assert_return(() => invoke($0, `value-i32`, []), [value("i32", 77)]); + +// ./test/core/func.wast:301 +assert_return(() => invoke($0, `value-i64`, []), [value("i64", 7777n)]); + +// ./test/core/func.wast:302 +assert_return(() => invoke($0, `value-f32`, []), [value("f32", 77.7)]); + +// ./test/core/func.wast:303 +assert_return(() => invoke($0, `value-f64`, []), [value("f64", 77.77)]); + +// ./test/core/func.wast:304 +assert_return(() => invoke($0, `value-i32-f64`, []), [value("i32", 77), value("f64", 7)]); + +// ./test/core/func.wast:305 +assert_return( + () => invoke($0, `value-i32-i32-i32`, []), + [value("i32", 1), value("i32", 2), value("i32", 3)], +); + +// ./test/core/func.wast:308 +assert_return(() => invoke($0, `value-block-void`, []), []); + +// ./test/core/func.wast:309 +assert_return(() => invoke($0, `value-block-i32`, []), [value("i32", 77)]); + +// ./test/core/func.wast:310 +assert_return(() => invoke($0, `value-block-i32-i64`, []), [value("i32", 1), value("i64", 2n)]); + +// ./test/core/func.wast:312 +assert_return(() => invoke($0, `return-empty`, []), []); + +// ./test/core/func.wast:313 +assert_return(() => invoke($0, `return-i32`, []), [value("i32", 78)]); + +// ./test/core/func.wast:314 +assert_return(() => invoke($0, `return-i64`, []), [value("i64", 7878n)]); + +// ./test/core/func.wast:315 +assert_return(() => invoke($0, `return-f32`, []), [value("f32", 78.7)]); + +// ./test/core/func.wast:316 +assert_return(() => invoke($0, `return-f64`, []), [value("f64", 78.78)]); + +// ./test/core/func.wast:317 +assert_return(() => invoke($0, `return-i32-f64`, []), [value("i32", 78), value("f64", 78.78)]); + +// ./test/core/func.wast:318 +assert_return( + () => invoke($0, `return-i32-i32-i32`, []), + [value("i32", 1), value("i32", 2), value("i32", 3)], +); + +// ./test/core/func.wast:321 +assert_return(() => invoke($0, `return-block-i32`, []), [value("i32", 77)]); + +// ./test/core/func.wast:322 +assert_return(() => invoke($0, `return-block-i32-i64`, []), [value("i32", 1), value("i64", 2n)]); + +// ./test/core/func.wast:324 +assert_return(() => invoke($0, `break-empty`, []), []); + +// ./test/core/func.wast:325 +assert_return(() => invoke($0, `break-i32`, []), [value("i32", 79)]); + +// ./test/core/func.wast:326 +assert_return(() => invoke($0, `break-i64`, []), [value("i64", 7979n)]); + +// ./test/core/func.wast:327 +assert_return(() => invoke($0, `break-f32`, []), [value("f32", 79.9)]); + +// ./test/core/func.wast:328 +assert_return(() => invoke($0, `break-f64`, []), [value("f64", 79.79)]); + +// ./test/core/func.wast:329 +assert_return(() => invoke($0, `break-i32-f64`, []), [value("i32", 79), value("f64", 79.79)]); + +// ./test/core/func.wast:330 +assert_return( + () => invoke($0, `break-i32-i32-i32`, []), + [value("i32", 1), value("i32", 2), value("i32", 3)], +); + +// ./test/core/func.wast:333 +assert_return(() => invoke($0, `break-block-i32`, []), [value("i32", 77)]); + +// ./test/core/func.wast:334 +assert_return(() => invoke($0, `break-block-i32-i64`, []), [value("i32", 1), value("i64", 2n)]); + +// ./test/core/func.wast:336 +assert_return(() => invoke($0, `break-br_if-empty`, [0]), []); + +// ./test/core/func.wast:337 +assert_return(() => invoke($0, `break-br_if-empty`, [2]), []); + +// ./test/core/func.wast:338 +assert_return(() => invoke($0, `break-br_if-num`, [0]), [value("i32", 51)]); + +// ./test/core/func.wast:339 +assert_return(() => invoke($0, `break-br_if-num`, [1]), [value("i32", 50)]); + +// ./test/core/func.wast:340 +assert_return(() => invoke($0, `break-br_if-num-num`, [0]), [value("i32", 51), value("i64", 52n)]); + +// ./test/core/func.wast:343 +assert_return(() => invoke($0, `break-br_if-num-num`, [1]), [value("i32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:347 +assert_return(() => invoke($0, `break-br_table-empty`, [0]), []); + +// ./test/core/func.wast:348 +assert_return(() => invoke($0, `break-br_table-empty`, [1]), []); + +// ./test/core/func.wast:349 +assert_return(() => invoke($0, `break-br_table-empty`, [5]), []); + +// ./test/core/func.wast:350 +assert_return(() => invoke($0, `break-br_table-empty`, [-1]), []); + +// ./test/core/func.wast:351 +assert_return(() => invoke($0, `break-br_table-num`, [0]), [value("i32", 50)]); + +// ./test/core/func.wast:352 +assert_return(() => invoke($0, `break-br_table-num`, [1]), [value("i32", 50)]); + +// ./test/core/func.wast:353 +assert_return(() => invoke($0, `break-br_table-num`, [10]), [value("i32", 50)]); + +// ./test/core/func.wast:354 +assert_return(() => invoke($0, `break-br_table-num`, [-100]), [value("i32", 50)]); + +// ./test/core/func.wast:355 +assert_return(() => invoke($0, `break-br_table-num-num`, [0]), [value("f32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:358 +assert_return(() => invoke($0, `break-br_table-num-num`, [1]), [value("f32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:361 +assert_return(() => invoke($0, `break-br_table-num-num`, [10]), [value("f32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:364 +assert_return(() => invoke($0, `break-br_table-num-num`, [-100]), [value("f32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:367 +assert_return(() => invoke($0, `break-br_table-nested-empty`, [0]), []); + +// ./test/core/func.wast:368 +assert_return(() => invoke($0, `break-br_table-nested-empty`, [1]), []); + +// ./test/core/func.wast:369 +assert_return(() => invoke($0, `break-br_table-nested-empty`, [3]), []); + +// ./test/core/func.wast:370 +assert_return(() => invoke($0, `break-br_table-nested-empty`, [-2]), []); + +// ./test/core/func.wast:371 +assert_return(() => invoke($0, `break-br_table-nested-num`, [0]), [value("i32", 52)]); + +// ./test/core/func.wast:374 +assert_return(() => invoke($0, `break-br_table-nested-num`, [1]), [value("i32", 50)]); + +// ./test/core/func.wast:377 +assert_return(() => invoke($0, `break-br_table-nested-num`, [2]), [value("i32", 52)]); + +// ./test/core/func.wast:380 +assert_return(() => invoke($0, `break-br_table-nested-num`, [-3]), [value("i32", 52)]); + +// ./test/core/func.wast:383 +assert_return( + () => invoke($0, `break-br_table-nested-num-num`, [0]), + [value("i32", 101), value("i32", 52)], +); + +// ./test/core/func.wast:387 +assert_return( + () => invoke($0, `break-br_table-nested-num-num`, [1]), + [value("i32", 50), value("i32", 51)], +); + +// ./test/core/func.wast:391 +assert_return( + () => invoke($0, `break-br_table-nested-num-num`, [2]), + [value("i32", 101), value("i32", 52)], +); + +// ./test/core/func.wast:395 +assert_return( + () => invoke($0, `break-br_table-nested-num-num`, [-3]), + [value("i32", 101), value("i32", 52)], +); + +// ./test/core/func.wast:400 +assert_return( + () => invoke($0, `large-sig`, [ + 0, + 1n, + value("f32", 2), + value("f32", 3), + 4, + value("f64", 5), + value("f32", 6), + 7, + 8, + 9, + value("f32", 10), + value("f64", 11), + value("f64", 12), + value("f64", 13), + 14, + 15, + value("f32", 16), + ]), + [ + value("f64", 5), + value("f32", 2), + value("i32", 0), + value("i32", 8), + value("i32", 7), + value("i64", 1n), + value("f32", 3), + value("i32", 9), + value("i32", 4), + value("f32", 6), + value("f64", 13), + value("f64", 11), + value("i32", 15), + value("f32", 16), + value("i32", 14), + value("f64", 12), + ], +); + +// ./test/core/func.wast:414 +assert_return(() => invoke($0, `init-local-i32`, []), [value("i32", 0)]); + +// ./test/core/func.wast:415 +assert_return(() => invoke($0, `init-local-i64`, []), [value("i64", 0n)]); + +// ./test/core/func.wast:416 +assert_return(() => invoke($0, `init-local-f32`, []), [value("f32", 0)]); + +// ./test/core/func.wast:417 +assert_return(() => invoke($0, `init-local-f64`, []), [value("f64", 0)]); + +// ./test/core/func.wast:422 +let $1 = instantiate(`(module + (func $$f (result f64) (f64.const 0)) ;; adds implicit type definition + (func $$g (param i32)) ;; reuses explicit type definition + (type $$t (func (param i32))) + + (func $$i32->void (type 0)) ;; (param i32) + (func $$void->f64 (type 1) (f64.const 0)) ;; (result f64) + (func $$check + (call $$i32->void (i32.const 0)) + (drop (call $$void->f64)) + ) +)`); + +// ./test/core/func.wast:435 +assert_invalid( + () => instantiate(`(module + (func $$f (result f64) (f64.const 0)) ;; adds implicit type definition + (func $$g (param i32)) ;; reuses explicit type definition + (func $$h (result f64) (f64.const 1)) ;; reuses implicit type definition + (type $$t (func (param i32))) + + (func (type 2)) ;; does not exist + )`), + `unknown type`, +); + +// ./test/core/func.wast:447 +assert_malformed( + () => instantiate(`(func $$f (result f64) (f64.const 0)) (func $$g (param i32)) (func $$h (result f64) (f64.const 1)) (type $$t (func (param i32))) (func (type 2) (param i32)) `), + `unknown type`, +); + +// ./test/core/func.wast:459 +let $2 = instantiate(`(module + (type $$proc (func (result i32))) + (type $$sig (func (param i32) (result i32))) + + (func (export "f") (type $$sig) + (local $$var i32) + (local.get $$var) + ) + + (func $$g (type $$sig) + (local $$var i32) + (local.get $$var) + ) + (func (export "g") (type $$sig) + (call $$g (local.get 0)) + ) + + (func (export "p") (type $$proc) + (local $$var i32) + (local.set 0 (i32.const 42)) + (local.get $$var) + ) +)`); + +// ./test/core/func.wast:483 +assert_return(() => invoke($2, `f`, [42]), [value("i32", 0)]); + +// ./test/core/func.wast:484 +assert_return(() => invoke($2, `g`, [42]), [value("i32", 0)]); + +// ./test/core/func.wast:485 +assert_return(() => invoke($2, `p`, []), [value("i32", 42)]); + +// ./test/core/func.wast:488 +let $3 = instantiate(`(module + (type $$sig (func)) + + (func $$empty-sig-1) ;; should be assigned type $$sig + (func $$complex-sig-1 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $$empty-sig-2) ;; should be assigned type $$sig + (func $$complex-sig-2 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $$complex-sig-3 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $$complex-sig-4 (param i64 i64 f64 i64 f64 i64 f32 i32)) + (func $$complex-sig-5 (param i64 i64 f64 i64 f64 i64 f32 i32)) + + (type $$empty-sig-duplicate (func)) + (type $$complex-sig-duplicate (func (param i64 i64 f64 i64 f64 i64 f32 i32))) + (table funcref + (elem + $$complex-sig-3 $$empty-sig-2 $$complex-sig-1 $$complex-sig-3 $$empty-sig-1 + $$complex-sig-4 $$complex-sig-5 + ) + ) + + (func (export "signature-explicit-reused") + (call_indirect (type $$sig) (i32.const 1)) + (call_indirect (type $$sig) (i32.const 4)) + ) + + (func (export "signature-implicit-reused") + ;; The implicit index 3 in this test depends on the function and + ;; type definitions, and may need adapting if they change. + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 0) + ) + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 2) + ) + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 3) + ) + ) + + (func (export "signature-explicit-duplicate") + (call_indirect (type $$empty-sig-duplicate) (i32.const 1)) + ) + + (func (export "signature-implicit-duplicate") + (call_indirect (type $$complex-sig-duplicate) + (i64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 5) + ) + (call_indirect (type $$complex-sig-duplicate) + (i64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 6) + ) + ) +)`); + +// ./test/core/func.wast:551 +assert_return(() => invoke($3, `signature-explicit-reused`, []), []); + +// ./test/core/func.wast:552 +assert_return(() => invoke($3, `signature-implicit-reused`, []), []); + +// ./test/core/func.wast:553 +assert_return(() => invoke($3, `signature-explicit-duplicate`, []), []); + +// ./test/core/func.wast:554 +assert_return(() => invoke($3, `signature-implicit-duplicate`, []), []); + +// ./test/core/func.wast:559 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (type $$sig) (result i32) (param i32) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:566 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (param i32) (type $$sig) (result i32) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:573 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (param i32) (result i32) (type $$sig) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:580 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (result i32) (type $$sig) (param i32) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:587 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (result i32) (param i32) (type $$sig) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:594 +assert_malformed( + () => instantiate(`(func (result i32) (param i32) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:601 +assert_malformed( + () => instantiate(`(type $$sig (func)) (func (type $$sig) (result i32) (i32.const 0)) `), + `inline function type`, +); + +// ./test/core/func.wast:608 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (type $$sig) (result i32) (i32.const 0)) `), + `inline function type`, +); + +// ./test/core/func.wast:615 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (type $$sig) (param i32) (i32.const 0)) `), + `inline function type`, +); + +// ./test/core/func.wast:622 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (func (type $$sig) (param i32) (result i32) (unreachable)) `), + `inline function type`, +); + +// ./test/core/func.wast:630 +assert_invalid(() => instantiate(`(module (func $$g (type 4)))`), `unknown type`); + +// ./test/core/func.wast:634 +assert_invalid( + () => instantiate(`(module + (func $$f (drop (ref.func $$g))) + (func $$g (type 4)) + (elem declare func $$g) + )`), + `unknown type`, +); + +// ./test/core/func.wast:646 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result i64) (local i32) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/func.wast:650 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (local f32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/func.wast:654 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (local f64 i64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/func.wast:659 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (func $$type-local-uninitialized (local $$x (ref $$t)) (drop (local.get $$x))) + )`), + `uninitialized local`, +); + +// ./test/core/func.wast:670 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param i32) (result i64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/func.wast:674 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/func.wast:678 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f64 i64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/func.wast:686 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32)))`), + `type mismatch`, +); + +// ./test/core/func.wast:690 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64)))`), + `type mismatch`, +); + +// ./test/core/func.wast:694 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32)))`), + `type mismatch`, +); + +// ./test/core/func.wast:698 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64)))`), + `type mismatch`, +); + +// ./test/core/func.wast:702 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64-i32 (result f64 i32)))`), + `type mismatch`, +); + +// ./test/core/func.wast:707 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-num (result i32) + (nop) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:713 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-nums (result i32 i32) + (nop) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:719 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-void + (i32.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:725 +assert_invalid( + () => instantiate(`(module (func $$type-value-nums-vs-void + (i32.const 0) (i64.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:731 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-num (result i32) + (f32.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:737 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-nums (result f32 f32) + (f32.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:743 +assert_invalid( + () => instantiate(`(module (func $$type-value-nums-vs-num (result f32) + (f32.const 0) (f32.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:750 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-empty-vs-num (result i32) + (return) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:756 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-empty-vs-nums (result i32 i32) + (return) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:762 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-void-vs-num (result i32) + (return (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:768 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-void-vs-nums (result i32 i64) + (return (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:774 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-num-vs-num (result i32) + (return (i64.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:780 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-num-vs-nums (result i64 i64) + (return (i64.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:787 +assert_invalid( + () => instantiate(`(module (func $$type-return-empty-vs-num (result i32) + (return) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:793 +assert_invalid( + () => instantiate(`(module (func $$type-return-empty-vs-nums (result i32 i32) + (return) (i32.const 1) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:799 +assert_invalid( + () => instantiate(`(module (func $$type-return-partial-vs-nums (result i32 i32) + (i32.const 1) (return) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:805 +assert_invalid( + () => instantiate(`(module (func $$type-return-void-vs-num (result i32) + (return (nop)) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:811 +assert_invalid( + () => instantiate(`(module (func $$type-return-void-vs-nums (result i32 i32) + (return (nop)) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:817 +assert_invalid( + () => instantiate(`(module (func $$type-return-num-vs-num (result i32) + (return (i64.const 1)) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:823 +assert_invalid( + () => instantiate(`(module (func $$type-return-num-vs-nums (result i32 i32) + (return (i64.const 1)) (i32.const 1) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:829 +assert_invalid( + () => instantiate(`(module (func $$type-return-first-num-vs-num (result i32) + (return (i64.const 1)) (return (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:835 +assert_invalid( + () => instantiate(`(module (func $$type-return-first-num-vs-nums (result i32 i32) + (return (i32.const 1)) (return (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:842 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-num (result i32) + (br 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:848 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-nums (result i32 i32) + (br 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:854 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-num-vs-num (result i32) + (br 0 (f32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:860 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-num-vs-nums (result i32 i32) + (br 0 (i32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:866 +assert_invalid( + () => instantiate(`(module (func $$type-break-void-vs-num (result i32) + (br 0) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:872 +assert_invalid( + () => instantiate(`(module (func $$type-break-void-vs-nums (result i32 i32) + (br 0) (i32.const 1) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:878 +assert_invalid( + () => instantiate(`(module (func $$type-break-num-vs-num (result i32) + (br 0 (i64.const 1)) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:884 +assert_invalid( + () => instantiate(`(module (func $$type-break-num-vs-nums (result i32 i32) + (br 0 (i32.const 1)) (i32.const 1) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:890 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-num-vs-num (result i32) + (br 0 (i64.const 1)) (br 0 (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:897 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-num (result i32) + (block (br 1)) (br 0 (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:903 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-nums (result i32 i32) + (block (br 1)) (br 0 (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:909 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-num (result i32) + (block (br 1 (nop))) (br 0 (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:915 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-nums (result i32 i32) + (block (br 1 (nop))) (br 0 (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:921 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-num-vs-num (result i32) + (block (br 1 (i64.const 1))) (br 0 (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:927 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-num-vs-nums (result i32 i32) + (block (result i32) (br 1 (i32.const 1))) (br 0 (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:937 +assert_malformed(() => instantiate(`(func (nop) (local i32)) `), `unexpected token`); + +// ./test/core/func.wast:941 +assert_malformed(() => instantiate(`(func (nop) (param i32)) `), `unexpected token`); + +// ./test/core/func.wast:945 +assert_malformed(() => instantiate(`(func (nop) (result i32)) `), `unexpected token`); + +// ./test/core/func.wast:949 +assert_malformed(() => instantiate(`(func (local i32) (param i32)) `), `unexpected token`); + +// ./test/core/func.wast:953 +assert_malformed( + () => instantiate(`(func (local i32) (result i32) (local.get 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:957 +assert_malformed( + () => instantiate(`(func (result i32) (param i32) (local.get 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:964 +assert_malformed(() => instantiate(`(func $$foo) (func $$foo) `), `duplicate func`); + +// ./test/core/func.wast:968 +assert_malformed( + () => instantiate(`(import "" "" (func $$foo)) (func $$foo) `), + `duplicate func`, +); + +// ./test/core/func.wast:972 +assert_malformed( + () => instantiate(`(import "" "" (func $$foo)) (import "" "" (func $$foo)) `), + `duplicate func`, +); + +// ./test/core/func.wast:977 +assert_malformed( + () => instantiate(`(func (param $$foo i32) (param $$foo i32)) `), + `duplicate local`, +); + +// ./test/core/func.wast:981 +assert_malformed( + () => instantiate(`(func (param $$foo i32) (local $$foo i32)) `), + `duplicate local`, +); + +// ./test/core/func.wast:985 +assert_malformed( + () => instantiate(`(func (local $$foo i32) (local $$foo i32)) `), + `duplicate local`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/global.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/global.wast.js new file mode 100644 index 0000000000..de27027554 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/global.wast.js @@ -0,0 +1,796 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/global.wast + +// ./test/core/global.wast:3 +let $0 = instantiate(`(module + (global (import "spectest" "global_i32") i32) + (global (import "spectest" "global_i64") i64) + + (global $$a i32 (i32.const -2)) + (global (;3;) f32 (f32.const -3)) + (global (;4;) f64 (f64.const -4)) + (global $$b i64 (i64.const -5)) + + (global $$x (mut i32) (i32.const -12)) + (global (;7;) (mut f32) (f32.const -13)) + (global (;8;) (mut f64) (f64.const -14)) + (global $$y (mut i64) (i64.const -15)) + + (global $$z1 i32 (global.get 0)) + (global $$z2 i64 (global.get 1)) + + (global $$r externref (ref.null extern)) + (global $$mr (mut externref) (ref.null extern)) + (global funcref (ref.null func)) + + (func (export "get-a") (result i32) (global.get $$a)) + (func (export "get-b") (result i64) (global.get $$b)) + (func (export "get-r") (result externref) (global.get $$r)) + (func (export "get-mr") (result externref) (global.get $$mr)) + (func (export "get-x") (result i32) (global.get $$x)) + (func (export "get-y") (result i64) (global.get $$y)) + (func (export "get-z1") (result i32) (global.get $$z1)) + (func (export "get-z2") (result i64) (global.get $$z2)) + (func (export "set-x") (param i32) (global.set $$x (local.get 0))) + (func (export "set-y") (param i64) (global.set $$y (local.get 0))) + (func (export "set-mr") (param externref) (global.set $$mr (local.get 0))) + + (func (export "get-3") (result f32) (global.get 3)) + (func (export "get-4") (result f64) (global.get 4)) + (func (export "get-7") (result f32) (global.get 7)) + (func (export "get-8") (result f64) (global.get 8)) + (func (export "set-7") (param f32) (global.set 7 (local.get 0))) + (func (export "set-8") (param f64) (global.set 8 (local.get 0))) + + ;; As the argument of control constructs and instructions + + (memory 1) + + (func $$dummy) + + (func (export "as-select-first") (result i32) + (select (global.get $$x) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (global.get $$x) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (global.get $$x)) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) + (global.get $$x) (call $$dummy) (call $$dummy) + ) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) + (call $$dummy) (global.get $$x) (call $$dummy) + ) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) + (call $$dummy) (call $$dummy) (global.get $$x) + ) + ) + + (func (export "as-if-condition") (result i32) + (if (result i32) (global.get $$x) + (then (call $$dummy) (i32.const 2)) + (else (call $$dummy) (i32.const 3)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (global.get $$x)) (else (i32.const 2)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 2)) (else (global.get $$x)) + ) + ) + + (func (export "as-br_if-first") (result i32) + (block (result i32) + (br_if 0 (global.get $$x) (i32.const 2)) + (return (i32.const 3)) + ) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) + (br_if 0 (i32.const 2) (global.get $$x)) + (return (i32.const 3)) + ) + ) + + (func (export "as-br_table-first") (result i32) + (block (result i32) + (global.get $$x) (i32.const 2) (br_table 0 0) + ) + ) + (func (export "as-br_table-last") (result i32) + (block (result i32) + (i32.const 2) (global.get $$x) (br_table 0 0) + ) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (global.get $$x) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (global.get $$x) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (i32.const 0) (global.get $$x) + ) + ) + ) + + (func (export "as-store-first") + (global.get $$x) (i32.const 1) (i32.store) + ) + (func (export "as-store-last") + (i32.const 0) (global.get $$x) (i32.store) + ) + (func (export "as-load-operand") (result i32) + (i32.load (global.get $$x)) + ) + (func (export "as-memory.grow-value") (result i32) + (memory.grow (global.get $$x)) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + (func (export "as-call-value") (result i32) + (call $$f (global.get $$x)) + ) + + (func (export "as-return-value") (result i32) + (global.get $$x) (return) + ) + (func (export "as-drop-operand") + (drop (global.get $$x)) + ) + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (global.get $$x))) + ) + + (func (export "as-local.set-value") (param i32) (result i32) + (local.set 0 (global.get $$x)) + (local.get 0) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (local.tee 0 (global.get $$x)) + ) + (func (export "as-global.set-value") (result i32) + (global.set $$x (global.get $$x)) + (global.get $$x) + ) + + (func (export "as-unary-operand") (result i32) + (i32.eqz (global.get $$x)) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (global.get $$x) (global.get $$x) + ) + ) + (func (export "as-compare-operand") (result i32) + (i32.gt_u + (global.get 0) (i32.const 1) + ) + ) +)`); + +// ./test/core/global.wast:196 +assert_return(() => invoke($0, `get-a`, []), [value("i32", -2)]); + +// ./test/core/global.wast:197 +assert_return(() => invoke($0, `get-b`, []), [value("i64", -5n)]); + +// ./test/core/global.wast:198 +assert_return(() => invoke($0, `get-r`, []), [value('externref', null)]); + +// ./test/core/global.wast:199 +assert_return(() => invoke($0, `get-mr`, []), [value('externref', null)]); + +// ./test/core/global.wast:200 +assert_return(() => invoke($0, `get-x`, []), [value("i32", -12)]); + +// ./test/core/global.wast:201 +assert_return(() => invoke($0, `get-y`, []), [value("i64", -15n)]); + +// ./test/core/global.wast:202 +assert_return(() => invoke($0, `get-z1`, []), [value("i32", 666)]); + +// ./test/core/global.wast:203 +assert_return(() => invoke($0, `get-z2`, []), [value("i64", 666n)]); + +// ./test/core/global.wast:205 +assert_return(() => invoke($0, `get-3`, []), [value("f32", -3)]); + +// ./test/core/global.wast:206 +assert_return(() => invoke($0, `get-4`, []), [value("f64", -4)]); + +// ./test/core/global.wast:207 +assert_return(() => invoke($0, `get-7`, []), [value("f32", -13)]); + +// ./test/core/global.wast:208 +assert_return(() => invoke($0, `get-8`, []), [value("f64", -14)]); + +// ./test/core/global.wast:210 +assert_return(() => invoke($0, `set-x`, [6]), []); + +// ./test/core/global.wast:211 +assert_return(() => invoke($0, `set-y`, [7n]), []); + +// ./test/core/global.wast:213 +assert_return(() => invoke($0, `set-7`, [value("f32", 8)]), []); + +// ./test/core/global.wast:214 +assert_return(() => invoke($0, `set-8`, [value("f64", 9)]), []); + +// ./test/core/global.wast:216 +assert_return(() => invoke($0, `get-x`, []), [value("i32", 6)]); + +// ./test/core/global.wast:217 +assert_return(() => invoke($0, `get-y`, []), [value("i64", 7n)]); + +// ./test/core/global.wast:218 +assert_return(() => invoke($0, `get-7`, []), [value("f32", 8)]); + +// ./test/core/global.wast:219 +assert_return(() => invoke($0, `get-8`, []), [value("f64", 9)]); + +// ./test/core/global.wast:221 +assert_return(() => invoke($0, `set-7`, [value("f32", 8)]), []); + +// ./test/core/global.wast:222 +assert_return(() => invoke($0, `set-8`, [value("f64", 9)]), []); + +// ./test/core/global.wast:223 +assert_return(() => invoke($0, `set-mr`, [externref(10)]), []); + +// ./test/core/global.wast:225 +assert_return(() => invoke($0, `get-x`, []), [value("i32", 6)]); + +// ./test/core/global.wast:226 +assert_return(() => invoke($0, `get-y`, []), [value("i64", 7n)]); + +// ./test/core/global.wast:227 +assert_return(() => invoke($0, `get-7`, []), [value("f32", 8)]); + +// ./test/core/global.wast:228 +assert_return(() => invoke($0, `get-8`, []), [value("f64", 9)]); + +// ./test/core/global.wast:229 +assert_return(() => invoke($0, `get-mr`, []), [new ExternRefResult(10)]); + +// ./test/core/global.wast:231 +assert_return(() => invoke($0, `as-select-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:232 +assert_return(() => invoke($0, `as-select-mid`, []), [value("i32", 2)]); + +// ./test/core/global.wast:233 +assert_return(() => invoke($0, `as-select-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:235 +assert_return(() => invoke($0, `as-loop-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:236 +assert_return(() => invoke($0, `as-loop-mid`, []), [value("i32", 6)]); + +// ./test/core/global.wast:237 +assert_return(() => invoke($0, `as-loop-last`, []), [value("i32", 6)]); + +// ./test/core/global.wast:239 +assert_return(() => invoke($0, `as-if-condition`, []), [value("i32", 2)]); + +// ./test/core/global.wast:240 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 6)]); + +// ./test/core/global.wast:241 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 6)]); + +// ./test/core/global.wast:243 +assert_return(() => invoke($0, `as-br_if-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:244 +assert_return(() => invoke($0, `as-br_if-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:246 +assert_return(() => invoke($0, `as-br_table-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:247 +assert_return(() => invoke($0, `as-br_table-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:249 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:250 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 2)]); + +// ./test/core/global.wast:251 +assert_trap(() => invoke($0, `as-call_indirect-last`, []), `undefined element`); + +// ./test/core/global.wast:253 +assert_return(() => invoke($0, `as-store-first`, []), []); + +// ./test/core/global.wast:254 +assert_return(() => invoke($0, `as-store-last`, []), []); + +// ./test/core/global.wast:255 +assert_return(() => invoke($0, `as-load-operand`, []), [value("i32", 1)]); + +// ./test/core/global.wast:256 +assert_return(() => invoke($0, `as-memory.grow-value`, []), [value("i32", 1)]); + +// ./test/core/global.wast:258 +assert_return(() => invoke($0, `as-call-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:260 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:261 +assert_return(() => invoke($0, `as-drop-operand`, []), []); + +// ./test/core/global.wast:262 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:264 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 6)]); + +// ./test/core/global.wast:265 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 6)]); + +// ./test/core/global.wast:266 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:268 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 0)]); + +// ./test/core/global.wast:269 +assert_return(() => invoke($0, `as-binary-operand`, []), [value("i32", 36)]); + +// ./test/core/global.wast:270 +assert_return(() => invoke($0, `as-compare-operand`, []), [value("i32", 1)]); + +// ./test/core/global.wast:272 +assert_invalid( + () => instantiate(`(module (global f32 (f32.const 0)) (func (global.set 0 (f32.const 1))))`), + `immutable global`, +); + +// ./test/core/global.wast:277 +assert_invalid( + () => instantiate(`(module (import "spectest" "global_i32" (global i32)) (func (global.set 0 (i32.const 1))))`), + `immutable global`, +); + +// ./test/core/global.wast:283 +let $1 = instantiate(`(module (global (mut f32) (f32.const 0)) (export "a" (global 0)))`); + +// ./test/core/global.wast:284 +let $2 = instantiate(`(module (global (export "a") (mut f32) (f32.const 0)))`); + +// ./test/core/global.wast:286 +assert_invalid( + () => instantiate(`(module (global f32 (f32.neg (f32.const 0))))`), + `constant expression required`, +); + +// ./test/core/global.wast:291 +assert_invalid( + () => instantiate(`(module (global f32 (local.get 0)))`), + `constant expression required`, +); + +// ./test/core/global.wast:296 +assert_invalid( + () => instantiate(`(module (global f32 (f32.neg (f32.const 1))))`), + `constant expression required`, +); + +// ./test/core/global.wast:301 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0) (nop)))`), + `constant expression required`, +); + +// ./test/core/global.wast:306 +assert_invalid( + () => instantiate(`(module (global i32 (i32.ctz (i32.const 0))))`), + `constant expression required`, +); + +// ./test/core/global.wast:311 +assert_invalid( + () => instantiate(`(module (global i32 (nop)))`), + `constant expression required`, +); + +// ./test/core/global.wast:316 +assert_invalid(() => instantiate(`(module (global i32 (f32.const 0)))`), `type mismatch`); + +// ./test/core/global.wast:321 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0) (i32.const 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:326 +assert_invalid( + () => instantiate(`(module (global i32 (;empty instruction sequence;)))`), + `type mismatch`, +); + +// ./test/core/global.wast:331 +assert_invalid( + () => instantiate(`(module (global (import "" "") externref) (global funcref (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:336 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (global.get 0) (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:341 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (i32.const 0) (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:346 +assert_invalid( + () => instantiate(`(module (global i32 (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:351 +assert_invalid( + () => instantiate(`(module (global i32 (global.get 1)) (global i32 (i32.const 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:356 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (global.get 2)))`), + `unknown global`, +); + +// ./test/core/global.wast:361 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-mut-i32") (mut i32)) (global i32 (global.get 0)))`), + `constant expression required`, +); + +// ./test/core/global.wast:366 +let $3 = instantiate(`(module + (import "spectest" "global_i32" (global i32)) +)`); + +// ./test/core/global.wast:369 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\98\\80\\80\\80\\00" ;; import section + "\\01" ;; length 1 + "\\08\\73\\70\\65\\63\\74\\65\\73\\74" ;; "spectest" + "\\0a\\67\\6c\\6f\\62\\61\\6c\\5f\\69\\33\\32" ;; "global_i32" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\02" ;; malformed mutability + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:382 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\98\\80\\80\\80\\00" ;; import section + "\\01" ;; length 1 + "\\08\\73\\70\\65\\63\\74\\65\\73\\74" ;; "spectest" + "\\0a\\67\\6c\\6f\\62\\61\\6c\\5f\\69\\33\\32" ;; "global_i32" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\ff" ;; malformed mutability + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:396 +let $4 = instantiate(`(module + (global i32 (i32.const 0)) +)`); + +// ./test/core/global.wast:399 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\06\\86\\80\\80\\80\\00" ;; global section + "\\01" ;; length 1 + "\\7f" ;; i32 + "\\02" ;; malformed mutability + "\\41\\00" ;; i32.const 0 + "\\0b" ;; end + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:411 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\06\\86\\80\\80\\80\\00" ;; global section + "\\01" ;; length 1 + "\\7f" ;; i32 + "\\ff" ;; malformed mutability + "\\41\\00" ;; i32.const 0 + "\\0b" ;; end + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:425 +assert_invalid( + () => instantiate(`(module (func (result i32) (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:430 +assert_invalid( + () => instantiate(`(module + (global i32 (i32.const 0)) + (func (result i32) (global.get 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:438 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (func (result i32) (global.get 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:446 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (global i32 (i32.const 0)) + (func (result i32) (global.get 2)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:456 +assert_invalid( + () => instantiate(`(module (func (i32.const 0) (global.set 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:461 +assert_invalid( + () => instantiate(`(module + (global i32 (i32.const 0)) + (func (i32.const 0) (global.set 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:469 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (func (i32.const 0) (global.set 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:477 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (global i32 (i32.const 0)) + (func (i32.const 0) (global.set 2)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:487 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty + (global.set $$x) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:496 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-block + (i32.const 0) + (block (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:506 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-loop + (i32.const 0) + (loop (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:516 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:526 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:536 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br + (i32.const 0) + (block (br 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:546 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br_if + (i32.const 0) + (block (br_if 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:556 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br_table + (i32.const 0) + (block (br_table 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:566 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-return + (return (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:575 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-select + (select (global.set $$x) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:584 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-call + (call 1 (global.set $$x)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:594 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-global.set-value-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (global.set $$x) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:613 +assert_malformed( + () => instantiate(`(global $$foo i32 (i32.const 0)) (global $$foo i32 (i32.const 0)) `), + `duplicate global`, +); + +// ./test/core/global.wast:617 +assert_malformed( + () => instantiate(`(import "" "" (global $$foo i32)) (global $$foo i32 (i32.const 0)) `), + `duplicate global`, +); + +// ./test/core/global.wast:621 +assert_malformed( + () => instantiate(`(import "" "" (global $$foo i32)) (import "" "" (global $$foo i32)) `), + `duplicate global`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/function-references/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/function-references/harness/harness.js b/js/src/jit-test/tests/wasm/spec/function-references/harness/harness.js new file mode 100644 index 0000000000..a96781e8ed --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/harness/harness.js @@ -0,0 +1,448 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/function-references/if.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/if.wast.js new file mode 100644 index 0000000000..ada0bd224a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/if.wast.js @@ -0,0 +1,1911 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/if.wast + +// ./test/core/if.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definition + (memory 1) + + (func $$dummy) + + (func (export "empty") (param i32) + (if (local.get 0) (then)) + (if (local.get 0) (then) (else)) + (if $$l (local.get 0) (then)) + (if $$l (local.get 0) (then) (else)) + ) + + (func (export "singular") (param i32) (result i32) + (if (local.get 0) (then (nop))) + (if (local.get 0) (then (nop)) (else (nop))) + (if (result i32) (local.get 0) (then (i32.const 7)) (else (i32.const 8))) + ) + + (func (export "multi") (param i32) (result i32 i32) + (if (local.get 0) (then (call $$dummy) (call $$dummy) (call $$dummy))) + (if (local.get 0) (then) (else (call $$dummy) (call $$dummy) (call $$dummy))) + (if (result i32) (local.get 0) + (then (call $$dummy) (call $$dummy) (i32.const 8) (call $$dummy)) + (else (call $$dummy) (call $$dummy) (i32.const 9) (call $$dummy)) + ) + (if (result i32 i64 i32) (local.get 0) + (then + (call $$dummy) (call $$dummy) (i32.const 1) (call $$dummy) + (call $$dummy) (call $$dummy) (i64.const 2) (call $$dummy) + (call $$dummy) (call $$dummy) (i32.const 3) (call $$dummy) + ) + (else + (call $$dummy) (call $$dummy) (i32.const -1) (call $$dummy) + (call $$dummy) (call $$dummy) (i64.const -2) (call $$dummy) + (call $$dummy) (call $$dummy) (i32.const -3) (call $$dummy) + ) + ) + (drop) (drop) + ) + + (func (export "nested") (param i32 i32) (result i32) + (if (result i32) (local.get 0) + (then + (if (local.get 1) (then (call $$dummy) (block) (nop))) + (if (local.get 1) (then) (else (call $$dummy) (block) (nop))) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 9)) + (else (call $$dummy) (i32.const 10)) + ) + ) + (else + (if (local.get 1) (then (call $$dummy) (block) (nop))) + (if (local.get 1) (then) (else (call $$dummy) (block) (nop))) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 10)) + (else (call $$dummy) (i32.const 11)) + ) + ) + ) + ) + + (func (export "as-select-first") (param i32) (result i32) + (select + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-select-mid") (param i32) (result i32) + (select + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 3) + ) + ) + (func (export "as-select-last") (param i32) (result i32) + (select + (i32.const 2) (i32.const 3) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + + (func (export "as-loop-first") (param i32) (result i32) + (loop (result i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (call $$dummy) (call $$dummy) + ) + ) + (func (export "as-loop-mid") (param i32) (result i32) + (loop (result i32) + (call $$dummy) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (call $$dummy) + ) + ) + (func (export "as-loop-last") (param i32) (result i32) + (loop (result i32) + (call $$dummy) (call $$dummy) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + + (func (export "as-if-condition") (param i32) (result i32) + (if (result i32) + (if (result i32) (local.get 0) + (then (i32.const 1)) (else (i32.const 0)) + ) + (then (call $$dummy) (i32.const 2)) + (else (call $$dummy) (i32.const 3)) + ) + ) + + (func (export "as-br_if-first") (param i32) (result i32) + (block (result i32) + (br_if 0 + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + ) + (return (i32.const 3)) + ) + ) + (func (export "as-br_if-last") (param i32) (result i32) + (block (result i32) + (br_if 0 + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + (return (i32.const 3)) + ) + ) + + (func (export "as-br_table-first") (param i32) (result i32) + (block (result i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + (br_table 0 0) + ) + ) + (func (export "as-br_table-last") (param i32) (result i32) + (block (result i32) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (br_table 0 0) + ) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (i32.const 0) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + ) + + (func (export "as-store-first") (param i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + (i32.store) + ) + (func (export "as-store-last") (param i32) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.store) + ) + + (func (export "as-memory.grow-value") (param i32) (result i32) + (memory.grow + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "as-call-value") (param i32) (result i32) + (call $$f + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (func (export "as-return-value") (param i32) (result i32) + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0))) + (return) + ) + (func (export "as-drop-operand") (param i32) + (drop + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (func (export "as-br-value") (param i32) (result i32) + (block (result i32) + (br 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + ) + (func (export "as-local.set-value") (param i32) (result i32) + (local i32) + (local.set 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (local.get 0) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (local.tee 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (param i32) (result i32) + (global.set $$a + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) (global.get $$a) + ) + (func (export "as-load-operand") (param i32) (result i32) + (i32.load + (if (result i32) (local.get 0) + (then (i32.const 11)) + (else (i32.const 10)) + ) + ) + ) + + (func (export "as-unary-operand") (param i32) (result i32) + (i32.ctz + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 13)) + (else (call $$dummy) (i32.const -13)) + ) + ) + ) + (func (export "as-binary-operand") (param i32 i32) (result i32) + (i32.mul + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 3)) + (else (call $$dummy) (i32.const -3)) + ) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const -5)) + ) + ) + ) + (func (export "as-test-operand") (param i32) (result i32) + (i32.eqz + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 13)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + (func (export "as-compare-operand") (param i32 i32) (result i32) + (f32.gt + (if (result f32) (local.get 0) + (then (call $$dummy) (f32.const 3)) + (else (call $$dummy) (f32.const -3)) + ) + (if (result f32) (local.get 1) + (then (call $$dummy) (f32.const 4)) + (else (call $$dummy) (f32.const -4)) + ) + ) + ) + (func (export "as-binary-operands") (param i32) (result i32) + (i32.mul + (if (result i32 i32) (local.get 0) + (then (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const 3) (call $$dummy) (i32.const -4)) + ) + ) + ) + (func (export "as-compare-operands") (param i32) (result i32) + (f32.gt + (if (result f32 f32) (local.get 0) + (then (call $$dummy) (f32.const 3) (call $$dummy) (f32.const 3)) + (else (call $$dummy) (f32.const -2) (call $$dummy) (f32.const -3)) + ) + ) + ) + (func (export "as-mixed-operands") (param i32) (result i32) + (if (result i32 i32) (local.get 0) + (then (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const -3) (call $$dummy) (i32.const -4)) + ) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "break-bare") (result i32) + (if (i32.const 1) (then (br 0) (unreachable))) + (if (i32.const 1) (then (br 0) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br 0) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_table 0 (i32.const 0)) (unreachable))) + (i32.const 19) + ) + + (func (export "break-value") (param i32) (result i32) + (if (result i32) (local.get 0) + (then (br 0 (i32.const 18)) (i32.const 19)) + (else (br 0 (i32.const 21)) (i32.const 20)) + ) + ) + (func (export "break-multi-value") (param i32) (result i32 i32 i64) + (if (result i32 i32 i64) (local.get 0) + (then + (br 0 (i32.const 18) (i32.const -18) (i64.const 18)) + (i32.const 19) (i32.const -19) (i64.const 19) + ) + (else + (br 0 (i32.const -18) (i32.const 18) (i64.const -18)) + (i32.const -19) (i32.const 19) (i64.const -19) + ) + ) + ) + + (func (export "param") (param i32) (result i32) + (i32.const 1) + (if (param i32) (result i32) (local.get 0) + (then (i32.const 2) (i32.add)) + (else (i32.const -2) (i32.add)) + ) + ) + (func (export "params") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32) (local.get 0) + (then (i32.add)) + (else (i32.sub)) + ) + ) + (func (export "params-id") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32 i32) (local.get 0) (then)) + (i32.add) + ) + (func (export "param-break") (param i32) (result i32) + (i32.const 1) + (if (param i32) (result i32) (local.get 0) + (then (i32.const 2) (i32.add) (br 0)) + (else (i32.const -2) (i32.add) (br 0)) + ) + ) + (func (export "params-break") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32) (local.get 0) + (then (i32.add) (br 0)) + (else (i32.sub) (br 0)) + ) + ) + (func (export "params-id-break") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32 i32) (local.get 0) (then (br 0))) + (i32.add) + ) + + (func (export "effects") (param i32) (result i32) + (local i32) + (if + (block (result i32) (local.set 1 (i32.const 1)) (local.get 0)) + (then + (local.set 1 (i32.mul (local.get 1) (i32.const 3))) + (local.set 1 (i32.sub (local.get 1) (i32.const 5))) + (local.set 1 (i32.mul (local.get 1) (i32.const 7))) + (br 0) + (local.set 1 (i32.mul (local.get 1) (i32.const 100))) + ) + (else + (local.set 1 (i32.mul (local.get 1) (i32.const 5))) + (local.set 1 (i32.sub (local.get 1) (i32.const 7))) + (local.set 1 (i32.mul (local.get 1) (i32.const 3))) + (br 0) + (local.set 1 (i32.mul (local.get 1) (i32.const 1000))) + ) + ) + (local.get 1) + ) + + ;; Examples + + (func $$add64_u_with_carry (export "add64_u_with_carry") + (param $$i i64) (param $$j i64) (param $$c i32) (result i64 i32) + (local $$k i64) + (local.set $$k + (i64.add + (i64.add (local.get $$i) (local.get $$j)) + (i64.extend_i32_u (local.get $$c)) + ) + ) + (return (local.get $$k) (i64.lt_u (local.get $$k) (local.get $$i))) + ) + + (func $$add64_u_saturated (export "add64_u_saturated") + (param i64 i64) (result i64) + (call $$add64_u_with_carry (local.get 0) (local.get 1) (i32.const 0)) + (if (param i64) (result i64) + (then (drop) (i64.const -1)) + ) + ) + + ;; Block signature syntax + + (type $$block-sig-1 (func)) + (type $$block-sig-2 (func (result i32))) + (type $$block-sig-3 (func (param $$x i32))) + (type $$block-sig-4 (func (param i32 f64 i32) (result i32 f64 i32))) + + (func (export "type-use") + (if (type $$block-sig-1) (i32.const 1) (then)) + (if (type $$block-sig-2) (i32.const 1) + (then (i32.const 0)) (else (i32.const 2)) + ) + (if (type $$block-sig-3) (i32.const 1) (then (drop)) (else (drop))) + (i32.const 0) (f64.const 0) (i32.const 0) + (if (type $$block-sig-4) (i32.const 1) (then)) + (drop) (drop) (drop) + (if (type $$block-sig-2) (result i32) (i32.const 1) + (then (i32.const 0)) (else (i32.const 2)) + ) + (if (type $$block-sig-3) (param i32) (i32.const 1) + (then (drop)) (else (drop)) + ) + (i32.const 0) (f64.const 0) (i32.const 0) + (if (type $$block-sig-4) + (param i32) (param f64 i32) (result i32 f64) (result i32) + (i32.const 1) (then) + ) + (drop) (drop) (drop) + ) +)`); + +// ./test/core/if.wast:529 +assert_return(() => invoke($0, `empty`, [0]), []); + +// ./test/core/if.wast:530 +assert_return(() => invoke($0, `empty`, [1]), []); + +// ./test/core/if.wast:531 +assert_return(() => invoke($0, `empty`, [100]), []); + +// ./test/core/if.wast:532 +assert_return(() => invoke($0, `empty`, [-2]), []); + +// ./test/core/if.wast:534 +assert_return(() => invoke($0, `singular`, [0]), [value("i32", 8)]); + +// ./test/core/if.wast:535 +assert_return(() => invoke($0, `singular`, [1]), [value("i32", 7)]); + +// ./test/core/if.wast:536 +assert_return(() => invoke($0, `singular`, [10]), [value("i32", 7)]); + +// ./test/core/if.wast:537 +assert_return(() => invoke($0, `singular`, [-10]), [value("i32", 7)]); + +// ./test/core/if.wast:539 +assert_return(() => invoke($0, `multi`, [0]), [value("i32", 9), value("i32", -1)]); + +// ./test/core/if.wast:540 +assert_return(() => invoke($0, `multi`, [1]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:541 +assert_return(() => invoke($0, `multi`, [13]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:542 +assert_return(() => invoke($0, `multi`, [-5]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:544 +assert_return(() => invoke($0, `nested`, [0, 0]), [value("i32", 11)]); + +// ./test/core/if.wast:545 +assert_return(() => invoke($0, `nested`, [1, 0]), [value("i32", 10)]); + +// ./test/core/if.wast:546 +assert_return(() => invoke($0, `nested`, [0, 1]), [value("i32", 10)]); + +// ./test/core/if.wast:547 +assert_return(() => invoke($0, `nested`, [3, 2]), [value("i32", 9)]); + +// ./test/core/if.wast:548 +assert_return(() => invoke($0, `nested`, [0, -100]), [value("i32", 10)]); + +// ./test/core/if.wast:549 +assert_return(() => invoke($0, `nested`, [10, 10]), [value("i32", 9)]); + +// ./test/core/if.wast:550 +assert_return(() => invoke($0, `nested`, [0, -1]), [value("i32", 10)]); + +// ./test/core/if.wast:551 +assert_return(() => invoke($0, `nested`, [-111, -2]), [value("i32", 9)]); + +// ./test/core/if.wast:553 +assert_return(() => invoke($0, `as-select-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:554 +assert_return(() => invoke($0, `as-select-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:555 +assert_return(() => invoke($0, `as-select-mid`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:556 +assert_return(() => invoke($0, `as-select-mid`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:557 +assert_return(() => invoke($0, `as-select-last`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:558 +assert_return(() => invoke($0, `as-select-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:560 +assert_return(() => invoke($0, `as-loop-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:561 +assert_return(() => invoke($0, `as-loop-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:562 +assert_return(() => invoke($0, `as-loop-mid`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:563 +assert_return(() => invoke($0, `as-loop-mid`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:564 +assert_return(() => invoke($0, `as-loop-last`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:565 +assert_return(() => invoke($0, `as-loop-last`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:567 +assert_return(() => invoke($0, `as-if-condition`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:568 +assert_return(() => invoke($0, `as-if-condition`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:570 +assert_return(() => invoke($0, `as-br_if-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:571 +assert_return(() => invoke($0, `as-br_if-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:572 +assert_return(() => invoke($0, `as-br_if-last`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:573 +assert_return(() => invoke($0, `as-br_if-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:575 +assert_return(() => invoke($0, `as-br_table-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:576 +assert_return(() => invoke($0, `as-br_table-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:577 +assert_return(() => invoke($0, `as-br_table-last`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:578 +assert_return(() => invoke($0, `as-br_table-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:580 +assert_return(() => invoke($0, `as-call_indirect-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:581 +assert_return(() => invoke($0, `as-call_indirect-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:582 +assert_return(() => invoke($0, `as-call_indirect-mid`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:583 +assert_return(() => invoke($0, `as-call_indirect-mid`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:584 +assert_return(() => invoke($0, `as-call_indirect-last`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:585 +assert_trap(() => invoke($0, `as-call_indirect-last`, [1]), `undefined element`); + +// ./test/core/if.wast:587 +assert_return(() => invoke($0, `as-store-first`, [0]), []); + +// ./test/core/if.wast:588 +assert_return(() => invoke($0, `as-store-first`, [1]), []); + +// ./test/core/if.wast:589 +assert_return(() => invoke($0, `as-store-last`, [0]), []); + +// ./test/core/if.wast:590 +assert_return(() => invoke($0, `as-store-last`, [1]), []); + +// ./test/core/if.wast:592 +assert_return(() => invoke($0, `as-memory.grow-value`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:593 +assert_return(() => invoke($0, `as-memory.grow-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:595 +assert_return(() => invoke($0, `as-call-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:596 +assert_return(() => invoke($0, `as-call-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:598 +assert_return(() => invoke($0, `as-return-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:599 +assert_return(() => invoke($0, `as-return-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:601 +assert_return(() => invoke($0, `as-drop-operand`, [0]), []); + +// ./test/core/if.wast:602 +assert_return(() => invoke($0, `as-drop-operand`, [1]), []); + +// ./test/core/if.wast:604 +assert_return(() => invoke($0, `as-br-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:605 +assert_return(() => invoke($0, `as-br-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:607 +assert_return(() => invoke($0, `as-local.set-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:608 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:610 +assert_return(() => invoke($0, `as-local.tee-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:611 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:613 +assert_return(() => invoke($0, `as-global.set-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:614 +assert_return(() => invoke($0, `as-global.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:616 +assert_return(() => invoke($0, `as-load-operand`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:617 +assert_return(() => invoke($0, `as-load-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:619 +assert_return(() => invoke($0, `as-unary-operand`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:620 +assert_return(() => invoke($0, `as-unary-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:621 +assert_return(() => invoke($0, `as-unary-operand`, [-1]), [value("i32", 0)]); + +// ./test/core/if.wast:623 +assert_return(() => invoke($0, `as-binary-operand`, [0, 0]), [value("i32", 15)]); + +// ./test/core/if.wast:624 +assert_return(() => invoke($0, `as-binary-operand`, [0, 1]), [value("i32", -12)]); + +// ./test/core/if.wast:625 +assert_return(() => invoke($0, `as-binary-operand`, [1, 0]), [value("i32", -15)]); + +// ./test/core/if.wast:626 +assert_return(() => invoke($0, `as-binary-operand`, [1, 1]), [value("i32", 12)]); + +// ./test/core/if.wast:628 +assert_return(() => invoke($0, `as-test-operand`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:629 +assert_return(() => invoke($0, `as-test-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:631 +assert_return(() => invoke($0, `as-compare-operand`, [0, 0]), [value("i32", 1)]); + +// ./test/core/if.wast:632 +assert_return(() => invoke($0, `as-compare-operand`, [0, 1]), [value("i32", 0)]); + +// ./test/core/if.wast:633 +assert_return(() => invoke($0, `as-compare-operand`, [1, 0]), [value("i32", 1)]); + +// ./test/core/if.wast:634 +assert_return(() => invoke($0, `as-compare-operand`, [1, 1]), [value("i32", 0)]); + +// ./test/core/if.wast:636 +assert_return(() => invoke($0, `as-binary-operands`, [0]), [value("i32", -12)]); + +// ./test/core/if.wast:637 +assert_return(() => invoke($0, `as-binary-operands`, [1]), [value("i32", 12)]); + +// ./test/core/if.wast:639 +assert_return(() => invoke($0, `as-compare-operands`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:640 +assert_return(() => invoke($0, `as-compare-operands`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:642 +assert_return(() => invoke($0, `as-mixed-operands`, [0]), [value("i32", -3)]); + +// ./test/core/if.wast:643 +assert_return(() => invoke($0, `as-mixed-operands`, [1]), [value("i32", 27)]); + +// ./test/core/if.wast:645 +assert_return(() => invoke($0, `break-bare`, []), [value("i32", 19)]); + +// ./test/core/if.wast:646 +assert_return(() => invoke($0, `break-value`, [1]), [value("i32", 18)]); + +// ./test/core/if.wast:647 +assert_return(() => invoke($0, `break-value`, [0]), [value("i32", 21)]); + +// ./test/core/if.wast:648 +assert_return( + () => invoke($0, `break-multi-value`, [0]), + [value("i32", -18), value("i32", 18), value("i64", -18n)], +); + +// ./test/core/if.wast:651 +assert_return( + () => invoke($0, `break-multi-value`, [1]), + [value("i32", 18), value("i32", -18), value("i64", 18n)], +); + +// ./test/core/if.wast:655 +assert_return(() => invoke($0, `param`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:656 +assert_return(() => invoke($0, `param`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:657 +assert_return(() => invoke($0, `params`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:658 +assert_return(() => invoke($0, `params`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:659 +assert_return(() => invoke($0, `params-id`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:660 +assert_return(() => invoke($0, `params-id`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:661 +assert_return(() => invoke($0, `param-break`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:662 +assert_return(() => invoke($0, `param-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:663 +assert_return(() => invoke($0, `params-break`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:664 +assert_return(() => invoke($0, `params-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:665 +assert_return(() => invoke($0, `params-id-break`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:666 +assert_return(() => invoke($0, `params-id-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:668 +assert_return(() => invoke($0, `effects`, [1]), [value("i32", -14)]); + +// ./test/core/if.wast:669 +assert_return(() => invoke($0, `effects`, [0]), [value("i32", -6)]); + +// ./test/core/if.wast:671 +assert_return(() => invoke($0, `add64_u_with_carry`, [0n, 0n, 0]), [value("i64", 0n), value("i32", 0)]); + +// ./test/core/if.wast:675 +assert_return( + () => invoke($0, `add64_u_with_carry`, [100n, 124n, 0]), + [value("i64", 224n), value("i32", 0)], +); + +// ./test/core/if.wast:679 +assert_return( + () => invoke($0, `add64_u_with_carry`, [-1n, 0n, 0]), + [value("i64", -1n), value("i32", 0)], +); + +// ./test/core/if.wast:683 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 1n, 0]), [value("i64", 0n), value("i32", 1)]); + +// ./test/core/if.wast:687 +assert_return( + () => invoke($0, `add64_u_with_carry`, [-1n, -1n, 0]), + [value("i64", -2n), value("i32", 1)], +); + +// ./test/core/if.wast:691 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 0n, 1]), [value("i64", 0n), value("i32", 1)]); + +// ./test/core/if.wast:695 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 1n, 1]), [value("i64", 1n), value("i32", 1)]); + +// ./test/core/if.wast:699 +assert_return( + () => invoke($0, `add64_u_with_carry`, [ + -9223372036854775808n, + -9223372036854775808n, + 0, + ]), + [value("i64", 0n), value("i32", 1)], +); + +// ./test/core/if.wast:704 +assert_return(() => invoke($0, `add64_u_saturated`, [0n, 0n]), [value("i64", 0n)]); + +// ./test/core/if.wast:707 +assert_return(() => invoke($0, `add64_u_saturated`, [1230n, 23n]), [value("i64", 1253n)]); + +// ./test/core/if.wast:710 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, 0n]), [value("i64", -1n)]); + +// ./test/core/if.wast:713 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, 1n]), [value("i64", -1n)]); + +// ./test/core/if.wast:716 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, -1n]), [value("i64", -1n)]); + +// ./test/core/if.wast:719 +assert_return( + () => invoke($0, `add64_u_saturated`, [-9223372036854775808n, -9223372036854775808n]), + [value("i64", -1n)], +); + +// ./test/core/if.wast:723 +assert_return(() => invoke($0, `type-use`, []), []); + +// ./test/core/if.wast:725 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (type $$sig) (result i32) (param i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:734 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (param i32) (type $$sig) (result i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:743 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (param i32) (result i32) (type $$sig) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:752 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (result i32) (type $$sig) (param i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:761 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (result i32) (param i32) (type $$sig) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:770 +assert_malformed( + () => instantiate(`(func (i32.const 0) (if (result i32) (param i32) (i32.const 1) (then))) `), + `unexpected token`, +); + +// ./test/core/if.wast:777 +assert_malformed( + () => instantiate(`(func (i32.const 0) (i32.const 1) (if (param $$x i32) (then (drop)) (else (drop))) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:785 +assert_malformed( + () => instantiate(`(type $$sig (func)) (func (i32.const 1) (if (type $$sig) (result i32) (then (i32.const 0)) (else (i32.const 2))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:795 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 1) (if (type $$sig) (result i32) (then (i32.const 0)) (else (i32.const 2))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:805 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (i32.const 1) (if (type $$sig) (param i32) (then (drop)) (else (drop))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:815 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (func (i32.const 0) (i32.const 1) (if (type $$sig) (param i32) (result i32) (then)) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:825 +assert_invalid( + () => instantiate(`(module + (type $$sig (func)) + (func (i32.const 1) (if (type $$sig) (i32.const 0) (then))) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:833 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:837 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:841 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:845 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:850 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:854 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:858 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:862 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:867 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-void + (if (i32.const 1) (then (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:873 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-void-else + (if (i32.const 1) (then (i32.const 1)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:879 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-void + (if (i32.const 1) (then) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:885 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-void + (if (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:892 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-void + (if (i32.const 1) (then (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:898 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-void-else + (if (i32.const 1) (then (i32.const 1) (i32.const 2)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:904 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-nums-vs-void + (if (i32.const 1) (then) (else (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:910 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-nums-vs-void + (if (i32.const 1) (then (i32.const 1) (i32.const 2)) (else (i32.const 2) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:917 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:923 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:929 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:936 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then) (else (i32.const 0) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:942 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 0) (i32.const 1)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:948 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:955 +assert_invalid( + () => instantiate(`(module (func $$type-no-else-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:961 +assert_invalid( + () => instantiate(`(module (func $$type-no-else-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:968 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:974 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:980 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:987 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (nop)) (else (i32.const 0) (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:993 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 0) (i32.const 0)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:999 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (nop)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1006 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1012 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1018 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1025 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1031 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1037 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1044 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1051 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1058 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1066 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1072 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1078 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1085 +assert_invalid( + () => instantiate(`(module (func $$type-both-different-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (f64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1091 +assert_invalid( + () => instantiate(`(module (func $$type-both-different-value-nums-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1098 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-unreached-select (result i32) + (if (result i64) + (i32.const 0) + (then (select (unreachable) (unreachable) (unreachable))) + (else (i64.const 0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1108 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (i64.const 0)) + (else (select (unreachable) (unreachable) (unreachable))) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1118 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (select (unreachable) (unreachable) (unreachable))) + (else (select (unreachable) (unreachable) (unreachable))) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1129 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (br 0)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1135 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1141 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-last-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (br 0)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1147 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-last-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1154 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1163 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1172 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1181 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1191 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1200 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (nop)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1209 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1218 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0 (nop)) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1228 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1237 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1246 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1255 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1264 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-partial-vs-nums (result i32 i32) + (i32.const 1) + (if (result i32 i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1274 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-partial-vs-nums (result i32 i32) + (i32.const 1) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1285 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty + (if (then)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1293 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-block + (i32.const 0) + (block (if (then))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1302 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-loop + (i32.const 0) + (loop (if (then))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1311 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (if (then)))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1320 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (if (then)) (i32.const 0))) + (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1330 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br + (i32.const 0) + (block (br 0 (if(then))) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1339 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br_if + (i32.const 0) + (block (br_if 0 (if(then)) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1348 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br_table + (i32.const 0) + (block (br_table 0 (if(then))) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1357 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-return + (return (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1365 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-select + (select (if(then)) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1373 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-call + (call 1 (if(then))) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1382 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-condition-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (if(then)) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1398 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-local.set + (local i32) + (local.set 0 (if(then))) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1407 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-local.tee + (local i32) + (local.tee 0 (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1416 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-condition-empty-in-global.set + (global.set $$x (if(then))) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1425 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-condition-empty-in-memory.grow + (memory.grow (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1434 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-condition-empty-in-load + (i32.load (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1443 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-condition-empty-in-store + (i32.store (if(then)) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1453 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-num + (if (param i32) (i32.const 1) (then (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1459 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (if (param i32 f64) (i32.const 1) (then (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1465 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (f32.const 0) (if (param i32) (i32.const 1) (then (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1471 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (f32.const 0) (if (param f32 i32) (i32.const 1) (then (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1477 +assert_invalid( + () => instantiate(`(module (func $$type-param-nested-void-vs-num + (block (if (param i32) (i32.const 1) (then (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1483 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (block (if (param i32 f64) (i32.const 1) (then (drop) (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1489 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (block (f32.const 0) (if (param i32) (i32.const 1) (then (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1495 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (block (f32.const 0) (if (param f32 i32) (i32.const 1) (then (drop) (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1502 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) if (param $$x i32) end) `), + `unexpected token`, +); + +// ./test/core/if.wast:1506 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (if (param $$x i32) (then))) `), + `unexpected token`, +); + +// ./test/core/if.wast:1511 +assert_malformed(() => instantiate(`(func i32.const 0 if end $$l) `), `mismatching label`); + +// ./test/core/if.wast:1515 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1519 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l end) `), + `mismatching label`, +); + +// ./test/core/if.wast:1523 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$l end) `), + `mismatching label`, +); + +// ./test/core/if.wast:1527 +assert_malformed( + () => instantiate(`(func i32.const 0 if else end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1531 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1535 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l1 end $$l2) `), + `mismatching label`, +); + +// ./test/core/if.wast:1539 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1543 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$a end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1547 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$l end $$l) `), + `mismatching label`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/local_get.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/local_get.wast.js new file mode 100644 index 0000000000..c51b00bd31 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/local_get.wast.js @@ -0,0 +1,279 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/local_get.wast + +// ./test/core/local_get.wast:3 +let $0 = instantiate(`(module + ;; Typing + + (func (export "type-local-i32") (result i32) (local i32) (local.get 0)) + (func (export "type-local-i64") (result i64) (local i64) (local.get 0)) + (func (export "type-local-f32") (result f32) (local f32) (local.get 0)) + (func (export "type-local-f64") (result f64) (local f64) (local.get 0)) + + (func (export "type-param-i32") (param i32) (result i32) (local.get 0)) + (func (export "type-param-i64") (param i64) (result i64) (local.get 0)) + (func (export "type-param-f32") (param f32) (result f32) (local.get 0)) + (func (export "type-param-f64") (param f64) (result f64) (local.get 0)) + + (func (export "type-mixed") (param i64 f32 f64 i32 i32) + (local f32 i64 i64 f64) + (drop (i64.eqz (local.get 0))) + (drop (f32.neg (local.get 1))) + (drop (f64.neg (local.get 2))) + (drop (i32.eqz (local.get 3))) + (drop (i32.eqz (local.get 4))) + (drop (f32.neg (local.get 5))) + (drop (i64.eqz (local.get 6))) + (drop (i64.eqz (local.get 7))) + (drop (f64.neg (local.get 8))) + ) + + ;; Reading + + (func (export "read") (param i64 f32 f64 i32 i32) (result f64) + (local f32 i64 i64 f64) + (local.set 5 (f32.const 5.5)) + (local.set 6 (i64.const 6)) + (local.set 8 (f64.const 8)) + (f64.add + (f64.convert_i64_u (local.get 0)) + (f64.add + (f64.promote_f32 (local.get 1)) + (f64.add + (local.get 2) + (f64.add + (f64.convert_i32_u (local.get 3)) + (f64.add + (f64.convert_i32_s (local.get 4)) + (f64.add + (f64.promote_f32 (local.get 5)) + (f64.add + (f64.convert_i64_u (local.get 6)) + (f64.add + (f64.convert_i64_u (local.get 7)) + (local.get 8) + ) + ) + ) + ) + ) + ) + ) + ) + ) + + ;; As parameter of control constructs and instructions + + (func (export "as-block-value") (param i32) (result i32) + (block (result i32) (local.get 0)) + ) + (func (export "as-loop-value") (param i32) (result i32) + (loop (result i32) (local.get 0)) + ) + (func (export "as-br-value") (param i32) (result i32) + (block (result i32) (br 0 (local.get 0))) + ) + (func (export "as-br_if-value") (param i32) (result i32) + (block $$l0 (result i32) (br_if $$l0 (local.get 0) (i32.const 1))) + ) + + (func (export "as-br_if-value-cond") (param i32) (result i32) + (block (result i32) + (br_if 0 (local.get 0) (local.get 0)) + ) + ) + (func (export "as-br_table-value") (param i32) (result i32) + (block + (block + (block + (br_table 0 1 2 (local.get 0)) + (return (i32.const 0)) + ) + (return (i32.const 1)) + ) + (return (i32.const 2)) + ) + (i32.const 3) + ) + + (func (export "as-return-value") (param i32) (result i32) + (return (local.get 0)) + ) + + (func (export "as-if-then") (param i32) (result i32) + (if (result i32) (local.get 0) (then (local.get 0)) (else (i32.const 0))) + ) + (func (export "as-if-else") (param i32) (result i32) + (if (result i32) (local.get 0) (then (i32.const 1)) (else (local.get 0))) + ) +)`); + +// ./test/core/local_get.wast:109 +assert_return(() => invoke($0, `type-local-i32`, []), [value("i32", 0)]); + +// ./test/core/local_get.wast:110 +assert_return(() => invoke($0, `type-local-i64`, []), [value("i64", 0n)]); + +// ./test/core/local_get.wast:111 +assert_return(() => invoke($0, `type-local-f32`, []), [value("f32", 0)]); + +// ./test/core/local_get.wast:112 +assert_return(() => invoke($0, `type-local-f64`, []), [value("f64", 0)]); + +// ./test/core/local_get.wast:114 +assert_return(() => invoke($0, `type-param-i32`, [2]), [value("i32", 2)]); + +// ./test/core/local_get.wast:115 +assert_return(() => invoke($0, `type-param-i64`, [3n]), [value("i64", 3n)]); + +// ./test/core/local_get.wast:116 +assert_return(() => invoke($0, `type-param-f32`, [value("f32", 4.4)]), [value("f32", 4.4)]); + +// ./test/core/local_get.wast:117 +assert_return(() => invoke($0, `type-param-f64`, [value("f64", 5.5)]), [value("f64", 5.5)]); + +// ./test/core/local_get.wast:119 +assert_return(() => invoke($0, `as-block-value`, [6]), [value("i32", 6)]); + +// ./test/core/local_get.wast:120 +assert_return(() => invoke($0, `as-loop-value`, [7]), [value("i32", 7)]); + +// ./test/core/local_get.wast:122 +assert_return(() => invoke($0, `as-br-value`, [8]), [value("i32", 8)]); + +// ./test/core/local_get.wast:123 +assert_return(() => invoke($0, `as-br_if-value`, [9]), [value("i32", 9)]); + +// ./test/core/local_get.wast:124 +assert_return(() => invoke($0, `as-br_if-value-cond`, [10]), [value("i32", 10)]); + +// ./test/core/local_get.wast:125 +assert_return(() => invoke($0, `as-br_table-value`, [1]), [value("i32", 2)]); + +// ./test/core/local_get.wast:127 +assert_return(() => invoke($0, `as-return-value`, [0]), [value("i32", 0)]); + +// ./test/core/local_get.wast:129 +assert_return(() => invoke($0, `as-if-then`, [1]), [value("i32", 1)]); + +// ./test/core/local_get.wast:130 +assert_return(() => invoke($0, `as-if-else`, [0]), [value("i32", 0)]); + +// ./test/core/local_get.wast:132 +assert_return(() => invoke($0, `type-mixed`, [1n, value("f32", 2.2), value("f64", 3.3), 4, 5]), []); + +// ./test/core/local_get.wast:138 +assert_return( + () => invoke($0, `read`, [1n, value("f32", 2), value("f64", 3.3), 4, 5]), + [value("f64", 34.8)], +); + +// ./test/core/local_get.wast:148 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result i64) (local i32) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:152 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result i32) (local f32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:156 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result f64) (local f64 i64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:164 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param i32) (result i64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:168 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f32) (result i32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:172 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f64 i64) (result f64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:180 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-i32 (local i32) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:184 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-i64 (local i64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:188 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-f32 (local f32) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:192 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-f64 (local f64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:200 +assert_invalid( + () => instantiate(`(module (func $$unbound-local (local i32 i64) (local.get 3) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:204 +assert_invalid( + () => instantiate(`(module (func $$large-local (local i32 i64) (local.get 14324343) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:209 +assert_invalid( + () => instantiate(`(module (func $$unbound-param (param i32 i64) (local.get 2) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:213 +assert_invalid( + () => instantiate(`(module (func $$large-param (param i32 i64) (local.get 714324343) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:218 +assert_invalid( + () => instantiate(`(module (func $$unbound-mixed (param i32) (local i32 i64) (local.get 3) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:222 +assert_invalid( + () => instantiate(`(module (func $$large-mixed (param i64) (local i32 i64) (local.get 214324343) drop))`), + `unknown local`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/ref.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/ref.wast.js new file mode 100644 index 0000000000..5d2fce2314 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/ref.wast.js @@ -0,0 +1,110 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/ref.wast + +// ./test/core/ref.wast:3 +let $0 = instantiate(`(module + (type $$t (func)) + + (func + (param + funcref + externref + (ref func) + (ref extern) + (ref 0) + (ref $$t) + (ref 0) + (ref $$t) + (ref null func) + (ref null extern) + (ref null 0) + (ref null $$t) + ) + ) +)`); + +// ./test/core/ref.wast:27 +assert_invalid( + () => instantiate(`(module (type $$type-func-param-invalid (func (param (ref 1)))))`), + `unknown type`, +); + +// ./test/core/ref.wast:31 +assert_invalid( + () => instantiate(`(module (type $$type-func-result-invalid (func (result (ref 1)))))`), + `unknown type`, +); + +// ./test/core/ref.wast:36 +assert_invalid( + () => instantiate(`(module (global $$global-invalid (ref null 1) (ref.null 1)))`), + `unknown type`, +); + +// ./test/core/ref.wast:41 +assert_invalid( + () => instantiate(`(module (table $$table-invalid 10 (ref null 1)))`), + `unknown type`, +); + +// ./test/core/ref.wast:46 +assert_invalid( + () => instantiate(`(module (elem $$elem-invalid (ref 1)))`), + `unknown type`, +); + +// ./test/core/ref.wast:51 +assert_invalid( + () => instantiate(`(module (func $$func-param-invalid (param (ref 1))))`), + `unknown type`, +); + +// ./test/core/ref.wast:55 +assert_invalid( + () => instantiate(`(module (func $$func-result-invalid (result (ref 1))))`), + `unknown type`, +); + +// ./test/core/ref.wast:59 +assert_invalid( + () => instantiate(`(module (func $$func-local-invalid (local (ref null 1))))`), + `unknown type`, +); + +// ./test/core/ref.wast:64 +assert_invalid( + () => instantiate(`(module (func $$block-result-invalid (drop (block (result (ref 1)) (unreachable)))))`), + `unknown type`, +); + +// ./test/core/ref.wast:68 +assert_invalid( + () => instantiate(`(module (func $$loop-result-invalid (drop (loop (result (ref 1)) (unreachable)))))`), + `unknown type`, +); + +// ./test/core/ref.wast:72 +assert_invalid( + () => instantiate(`(module (func $$if-invalid (drop (if (result (ref 1)) (then) (else)))))`), + `unknown type`, +); + +// ./test/core/ref.wast:77 +assert_invalid( + () => instantiate(`(module (func $$select-result-invalid (drop (select (result (ref 1)) (unreachable)))))`), + `unknown type`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/ref_as_non_null.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/ref_as_non_null.wast.js new file mode 100644 index 0000000000..af2628a7b6 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/ref_as_non_null.wast.js @@ -0,0 +1,71 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/ref_as_non_null.wast + +// ./test/core/ref_as_non_null.wast:1 +let $0 = instantiate(`(module + (type $$t (func (result i32))) + + (func $$nn (param $$r (ref $$t)) (result i32) + (call_ref $$t (ref.as_non_null (local.get $$r))) + ) + (func $$n (param $$r (ref null $$t)) (result i32) + (call_ref $$t (ref.as_non_null (local.get $$r))) + ) + + (elem func $$f) + (func $$f (result i32) (i32.const 7)) + + (func (export "nullable-null") (result i32) (call $$n (ref.null $$t))) + (func (export "nonnullable-f") (result i32) (call $$nn (ref.func $$f))) + (func (export "nullable-f") (result i32) (call $$n (ref.func $$f))) + + (func (export "unreachable") (result i32) + (unreachable) + (ref.as_non_null) + (call $$nn) + ) +)`); + +// ./test/core/ref_as_non_null.wast:25 +assert_trap(() => invoke($0, `unreachable`, []), `unreachable`); + +// ./test/core/ref_as_non_null.wast:27 +assert_trap(() => invoke($0, `nullable-null`, []), `null reference`); + +// ./test/core/ref_as_non_null.wast:28 +assert_return(() => invoke($0, `nonnullable-f`, []), [value("i32", 7)]); + +// ./test/core/ref_as_non_null.wast:29 +assert_return(() => invoke($0, `nullable-f`, []), [value("i32", 7)]); + +// ./test/core/ref_as_non_null.wast:31 +assert_invalid( + () => instantiate(`(module + (type $$t (func (result i32))) + (func $$g (param $$r (ref $$t)) (drop (ref.as_non_null (local.get $$r)))) + (func (call $$g (ref.null $$t))) + )`), + `type mismatch`, +); + +// ./test/core/ref_as_non_null.wast:41 +let $1 = instantiate(`(module + (type $$t (func)) + (func (param $$r (ref $$t)) (drop (ref.as_non_null (local.get $$r)))) + (func (param $$r (ref func)) (drop (ref.as_non_null (local.get $$r)))) + (func (param $$r (ref extern)) (drop (ref.as_non_null (local.get $$r)))) +)`); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/ref_func.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/ref_func.wast.js new file mode 100644 index 0000000000..3ca5cea002 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/ref_func.wast.js @@ -0,0 +1,156 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/ref_func.wast + +// ./test/core/ref_func.wast:1 +let $0 = instantiate(`(module + (func (export "f") (param $$x i32) (result i32) (local.get $$x)) +)`); + +// ./test/core/ref_func.wast:4 +register($0, `M`); + +// ./test/core/ref_func.wast:6 +let $1 = instantiate(`(module + (func $$f (import "M" "f") (param i32) (result i32)) + (func $$g (param $$x i32) (result i32) + (i32.add (local.get $$x) (i32.const 1)) + ) + + (global funcref (ref.func $$f)) + (global funcref (ref.func $$g)) + (global $$v (mut funcref) (ref.func $$f)) + + (global funcref (ref.func $$gf1)) + (global funcref (ref.func $$gf2)) + (func (drop (ref.func $$ff1)) (drop (ref.func $$ff2))) + (elem declare func $$gf1 $$ff1) + (elem declare funcref (ref.func $$gf2) (ref.func $$ff2)) + (func $$gf1) + (func $$gf2) + (func $$ff1) + (func $$ff2) + + (func (export "is_null-f") (result i32) + (ref.is_null (ref.func $$f)) + ) + (func (export "is_null-g") (result i32) + (ref.is_null (ref.func $$g)) + ) + (func (export "is_null-v") (result i32) + (ref.is_null (global.get $$v)) + ) + + (func (export "set-f") (global.set $$v (ref.func $$f))) + (func (export "set-g") (global.set $$v (ref.func $$g))) + + (table $$t 1 funcref) + (elem declare func $$f $$g) + + (func (export "call-f") (param $$x i32) (result i32) + (table.set $$t (i32.const 0) (ref.func $$f)) + (call_indirect $$t (param i32) (result i32) (local.get $$x) (i32.const 0)) + ) + (func (export "call-g") (param $$x i32) (result i32) + (table.set $$t (i32.const 0) (ref.func $$g)) + (call_indirect $$t (param i32) (result i32) (local.get $$x) (i32.const 0)) + ) + (func (export "call-v") (param $$x i32) (result i32) + (table.set $$t (i32.const 0) (global.get $$v)) + (call_indirect $$t (param i32) (result i32) (local.get $$x) (i32.const 0)) + ) +)`); + +// ./test/core/ref_func.wast:56 +assert_return(() => invoke($1, `is_null-f`, []), [value("i32", 0)]); + +// ./test/core/ref_func.wast:57 +assert_return(() => invoke($1, `is_null-g`, []), [value("i32", 0)]); + +// ./test/core/ref_func.wast:58 +assert_return(() => invoke($1, `is_null-v`, []), [value("i32", 0)]); + +// ./test/core/ref_func.wast:60 +assert_return(() => invoke($1, `call-f`, [4]), [value("i32", 4)]); + +// ./test/core/ref_func.wast:61 +assert_return(() => invoke($1, `call-g`, [4]), [value("i32", 5)]); + +// ./test/core/ref_func.wast:62 +assert_return(() => invoke($1, `call-v`, [4]), [value("i32", 4)]); + +// ./test/core/ref_func.wast:63 +invoke($1, `set-g`, []); + +// ./test/core/ref_func.wast:64 +assert_return(() => invoke($1, `call-v`, [4]), [value("i32", 5)]); + +// ./test/core/ref_func.wast:65 +invoke($1, `set-f`, []); + +// ./test/core/ref_func.wast:66 +assert_return(() => invoke($1, `call-v`, [4]), [value("i32", 4)]); + +// ./test/core/ref_func.wast:68 +assert_invalid( + () => instantiate(`(module + (func $$f (import "M" "f") (param i32) (result i32)) + (func $$g (import "M" "g") (param i32) (result i32)) + (global funcref (ref.func 7)) + )`), + `unknown function 7`, +); + +// ./test/core/ref_func.wast:80 +let $2 = instantiate(`(module + (func $$f1) + (func $$f2) + (func $$f3) + (func $$f4) + (func $$f5) + (func $$f6) + + (table $$t 1 funcref) + + (global funcref (ref.func $$f1)) + (export "f" (func $$f2)) + (elem (table $$t) (i32.const 0) func $$f3) + (elem (table $$t) (i32.const 0) funcref (ref.func $$f4)) + (elem func $$f5) + (elem funcref (ref.func $$f6)) + + (func + (ref.func $$f1) + (ref.func $$f2) + (ref.func $$f3) + (ref.func $$f4) + (ref.func $$f5) + (ref.func $$f6) + (return) + ) +)`); + +// ./test/core/ref_func.wast:108 +assert_invalid( + () => instantiate(`(module (func $$f (drop (ref.func $$f))))`), + `undeclared function reference`, +); + +// ./test/core/ref_func.wast:112 +assert_invalid( + () => instantiate(`(module (start $$f) (func $$f (drop (ref.func $$f))))`), + `undeclared function reference`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/return_call_ref.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/return_call_ref.wast.js new file mode 100644 index 0000000000..3ea51a8cb0 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/return_call_ref.wast.js @@ -0,0 +1,460 @@ +// |jit-test| --wasm-tail-calls; skip-if: !wasmTailCallsEnabled() +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/return_call_ref.wast + +// ./test/core/return_call_ref.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definitions + (type $$proc (func)) + (type $$-i32 (func (result i32))) + (type $$-i64 (func (result i64))) + (type $$-f32 (func (result f32))) + (type $$-f64 (func (result f64))) + + (type $$i32-i32 (func (param i32) (result i32))) + (type $$i64-i64 (func (param i64) (result i64))) + (type $$f32-f32 (func (param f32) (result f32))) + (type $$f64-f64 (func (param f64) (result f64))) + + (type $$f32-i32 (func (param f32 i32) (result i32))) + (type $$i32-i64 (func (param i32 i64) (result i64))) + (type $$f64-f32 (func (param f64 f32) (result f32))) + (type $$i64-f64 (func (param i64 f64) (result f64))) + + (type $$i64i64-i64 (func (param i64 i64) (result i64))) + + (func $$const-i32 (result i32) (i32.const 0x132)) + (func $$const-i64 (result i64) (i64.const 0x164)) + (func $$const-f32 (result f32) (f32.const 0xf32)) + (func $$const-f64 (result f64) (f64.const 0xf64)) + + (func $$id-i32 (param i32) (result i32) (local.get 0)) + (func $$id-i64 (param i64) (result i64) (local.get 0)) + (func $$id-f32 (param f32) (result f32) (local.get 0)) + (func $$id-f64 (param f64) (result f64) (local.get 0)) + + (func $$f32-i32 (param f32 i32) (result i32) (local.get 1)) + (func $$i32-i64 (param i32 i64) (result i64) (local.get 1)) + (func $$f64-f32 (param f64 f32) (result f32) (local.get 1)) + (func $$i64-f64 (param i64 f64) (result f64) (local.get 1)) + + (global $$const-i32 (ref $$-i32) (ref.func $$const-i32)) + (global $$const-i64 (ref $$-i64) (ref.func $$const-i64)) + (global $$const-f32 (ref $$-f32) (ref.func $$const-f32)) + (global $$const-f64 (ref $$-f64) (ref.func $$const-f64)) + + (global $$id-i32 (ref $$i32-i32) (ref.func $$id-i32)) + (global $$id-i64 (ref $$i64-i64) (ref.func $$id-i64)) + (global $$id-f32 (ref $$f32-f32) (ref.func $$id-f32)) + (global $$id-f64 (ref $$f64-f64) (ref.func $$id-f64)) + + (global $$f32-i32 (ref $$f32-i32) (ref.func $$f32-i32)) + (global $$i32-i64 (ref $$i32-i64) (ref.func $$i32-i64)) + (global $$f64-f32 (ref $$f64-f32) (ref.func $$f64-f32)) + (global $$i64-f64 (ref $$i64-f64) (ref.func $$i64-f64)) + + (elem declare func + $$const-i32 $$const-i64 $$const-f32 $$const-f64 + $$id-i32 $$id-i64 $$id-f32 $$id-f64 + $$f32-i32 $$i32-i64 $$f64-f32 $$i64-f64 + ) + + ;; Typing + + (func (export "type-i32") (result i32) + (return_call_ref $$-i32 (global.get $$const-i32)) + ) + (func (export "type-i64") (result i64) + (return_call_ref $$-i64 (global.get $$const-i64)) + ) + (func (export "type-f32") (result f32) + (return_call_ref $$-f32 (global.get $$const-f32)) + ) + (func (export "type-f64") (result f64) + (return_call_ref $$-f64 (global.get $$const-f64)) + ) + + (func (export "type-first-i32") (result i32) + (return_call_ref $$i32-i32 (i32.const 32) (global.get $$id-i32)) + ) + (func (export "type-first-i64") (result i64) + (return_call_ref $$i64-i64 (i64.const 64) (global.get $$id-i64)) + ) + (func (export "type-first-f32") (result f32) + (return_call_ref $$f32-f32 (f32.const 1.32) (global.get $$id-f32)) + ) + (func (export "type-first-f64") (result f64) + (return_call_ref $$f64-f64 (f64.const 1.64) (global.get $$id-f64)) + ) + + (func (export "type-second-i32") (result i32) + (return_call_ref $$f32-i32 (f32.const 32.1) (i32.const 32) (global.get $$f32-i32)) + ) + (func (export "type-second-i64") (result i64) + (return_call_ref $$i32-i64 (i32.const 32) (i64.const 64) (global.get $$i32-i64)) + ) + (func (export "type-second-f32") (result f32) + (return_call_ref $$f64-f32 (f64.const 64) (f32.const 32) (global.get $$f64-f32)) + ) + (func (export "type-second-f64") (result f64) + (return_call_ref $$i64-f64 (i64.const 64) (f64.const 64.1) (global.get $$i64-f64)) + ) + + ;; Null + + (func (export "null") + (return_call_ref $$proc (ref.null $$proc)) + ) + + ;; Recursion + + (global $$fac-acc (ref $$i64i64-i64) (ref.func $$fac-acc)) + + (elem declare func $$fac-acc) + (func $$fac-acc (export "fac-acc") (param i64 i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (local.get 1)) + (else + (return_call_ref $$i64i64-i64 + (i64.sub (local.get 0) (i64.const 1)) + (i64.mul (local.get 0) (local.get 1)) + (global.get $$fac-acc) + ) + ) + ) + ) + + (global $$count (ref $$i64-i64) (ref.func $$count)) + + (elem declare func $$count) + (func $$count (export "count") (param i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (local.get 0)) + (else + (return_call_ref $$i64-i64 + (i64.sub (local.get 0) (i64.const 1)) + (global.get $$count) + ) + ) + ) + ) + + (global $$even (ref $$i64-i64) (ref.func $$even)) + (global $$odd (ref $$i64-i64) (ref.func $$odd)) + + (elem declare func $$even) + (func $$even (export "even") (param i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (i64.const 44)) + (else + (return_call_ref $$i64-i64 + (i64.sub (local.get 0) (i64.const 1)) + (global.get $$odd) + ) + ) + ) + ) + (elem declare func $$odd) + (func $$odd (export "odd") (param i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (i64.const 99)) + (else + (return_call_ref $$i64-i64 + (i64.sub (local.get 0) (i64.const 1)) + (global.get $$even) + ) + ) + ) + ) +)`); + +// ./test/core/return_call_ref.wast:168 +assert_return(() => invoke($0, `type-i32`, []), [value("i32", 306)]); + +// ./test/core/return_call_ref.wast:169 +assert_return(() => invoke($0, `type-i64`, []), [value("i64", 356n)]); + +// ./test/core/return_call_ref.wast:170 +assert_return(() => invoke($0, `type-f32`, []), [value("f32", 3890)]); + +// ./test/core/return_call_ref.wast:171 +assert_return(() => invoke($0, `type-f64`, []), [value("f64", 3940)]); + +// ./test/core/return_call_ref.wast:173 +assert_return(() => invoke($0, `type-first-i32`, []), [value("i32", 32)]); + +// ./test/core/return_call_ref.wast:174 +assert_return(() => invoke($0, `type-first-i64`, []), [value("i64", 64n)]); + +// ./test/core/return_call_ref.wast:175 +assert_return(() => invoke($0, `type-first-f32`, []), [value("f32", 1.32)]); + +// ./test/core/return_call_ref.wast:176 +assert_return(() => invoke($0, `type-first-f64`, []), [value("f64", 1.64)]); + +// ./test/core/return_call_ref.wast:178 +assert_return(() => invoke($0, `type-second-i32`, []), [value("i32", 32)]); + +// ./test/core/return_call_ref.wast:179 +assert_return(() => invoke($0, `type-second-i64`, []), [value("i64", 64n)]); + +// ./test/core/return_call_ref.wast:180 +assert_return(() => invoke($0, `type-second-f32`, []), [value("f32", 32)]); + +// ./test/core/return_call_ref.wast:181 +assert_return(() => invoke($0, `type-second-f64`, []), [value("f64", 64.1)]); + +// ./test/core/return_call_ref.wast:183 +assert_trap(() => invoke($0, `null`, []), `null function`); + +// ./test/core/return_call_ref.wast:185 +assert_return(() => invoke($0, `fac-acc`, [0n, 1n]), [value("i64", 1n)]); + +// ./test/core/return_call_ref.wast:186 +assert_return(() => invoke($0, `fac-acc`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/return_call_ref.wast:187 +assert_return(() => invoke($0, `fac-acc`, [5n, 1n]), [value("i64", 120n)]); + +// ./test/core/return_call_ref.wast:188 +assert_return(() => invoke($0, `fac-acc`, [25n, 1n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/return_call_ref.wast:193 +assert_return(() => invoke($0, `count`, [0n]), [value("i64", 0n)]); + +// ./test/core/return_call_ref.wast:194 +assert_return(() => invoke($0, `count`, [1000n]), [value("i64", 0n)]); + +// ./test/core/return_call_ref.wast:195 +assert_return(() => invoke($0, `count`, [1000000n]), [value("i64", 0n)]); + +// ./test/core/return_call_ref.wast:197 +assert_return(() => invoke($0, `even`, [0n]), [value("i64", 44n)]); + +// ./test/core/return_call_ref.wast:198 +assert_return(() => invoke($0, `even`, [1n]), [value("i64", 99n)]); + +// ./test/core/return_call_ref.wast:199 +assert_return(() => invoke($0, `even`, [100n]), [value("i64", 44n)]); + +// ./test/core/return_call_ref.wast:200 +assert_return(() => invoke($0, `even`, [77n]), [value("i64", 99n)]); + +// ./test/core/return_call_ref.wast:201 +assert_return(() => invoke($0, `even`, [1000000n]), [value("i64", 44n)]); + +// ./test/core/return_call_ref.wast:202 +assert_return(() => invoke($0, `even`, [1000001n]), [value("i64", 99n)]); + +// ./test/core/return_call_ref.wast:203 +assert_return(() => invoke($0, `odd`, [0n]), [value("i64", 99n)]); + +// ./test/core/return_call_ref.wast:204 +assert_return(() => invoke($0, `odd`, [1n]), [value("i64", 44n)]); + +// ./test/core/return_call_ref.wast:205 +assert_return(() => invoke($0, `odd`, [200n]), [value("i64", 99n)]); + +// ./test/core/return_call_ref.wast:206 +assert_return(() => invoke($0, `odd`, [77n]), [value("i64", 44n)]); + +// ./test/core/return_call_ref.wast:207 +assert_return(() => invoke($0, `odd`, [1000000n]), [value("i64", 99n)]); + +// ./test/core/return_call_ref.wast:208 +assert_return(() => invoke($0, `odd`, [999999n]), [value("i64", 44n)]); + +// ./test/core/return_call_ref.wast:213 +let $1 = instantiate(`(module + (type $$t (func)) + (type $$t1 (func (result (ref $$t)))) + (type $$t2 (func (result (ref null $$t)))) + (type $$t3 (func (result (ref func)))) + (type $$t4 (func (result (ref null func)))) + (elem declare func $$f11 $$f22 $$f33 $$f44) + (func $$f11 (result (ref $$t)) (return_call_ref $$t1 (ref.func $$f11))) + (func $$f21 (result (ref null $$t)) (return_call_ref $$t1 (ref.func $$f11))) + (func $$f22 (result (ref null $$t)) (return_call_ref $$t2 (ref.func $$f22))) + (func $$f31 (result (ref func)) (return_call_ref $$t1 (ref.func $$f11))) + (func $$f33 (result (ref func)) (return_call_ref $$t3 (ref.func $$f33))) + (func $$f41 (result (ref null func)) (return_call_ref $$t1 (ref.func $$f11))) + (func $$f42 (result (ref null func)) (return_call_ref $$t2 (ref.func $$f22))) + (func $$f43 (result (ref null func)) (return_call_ref $$t3 (ref.func $$f33))) + (func $$f44 (result (ref null func)) (return_call_ref $$t4 (ref.func $$f44))) +)`); + +// ./test/core/return_call_ref.wast:231 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (type $$t2 (func (result (ref null $$t)))) + (elem declare func $$f22) + (func $$f12 (result (ref $$t)) (return_call_ref $$t2 (ref.func $$f22))) + (func $$f22 (result (ref null $$t)) (return_call_ref $$t2 (ref.func $$f22))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_ref.wast:242 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (type $$t3 (func (result (ref func)))) + (elem declare func $$f33) + (func $$f13 (result (ref $$t)) (return_call_ref $$t3 (ref.func $$f33))) + (func $$f33 (result (ref func)) (return_call_ref $$t3 (ref.func $$f33))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_ref.wast:253 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (type $$t4 (func (result (ref null func)))) + (elem declare func $$f44) + (func $$f14 (result (ref $$t)) (return_call_ref $$t4 (ref.func $$f44))) + (func $$f44 (result (ref null func)) (return_call_ref $$t4 (ref.func $$f44))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_ref.wast:264 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (type $$t3 (func (result (ref func)))) + (elem declare func $$f33) + (func $$f23 (result (ref null $$t)) (return_call_ref $$t3 (ref.func $$f33))) + (func $$f33 (result (ref func)) (return_call_ref $$t3 (ref.func $$f33))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_ref.wast:275 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (type $$t4 (func (result (ref null func)))) + (elem declare func $$f44) + (func $$f24 (result (ref null $$t)) (return_call_ref $$t4 (ref.func $$f44))) + (func $$f44 (result (ref null func)) (return_call_ref $$t4 (ref.func $$f44))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_ref.wast:286 +assert_invalid( + () => instantiate(`(module + (type $$t4 (func (result (ref null func)))) + (elem declare func $$f44) + (func $$f34 (result (ref func)) (return_call_ref $$t4 (ref.func $$f44))) + (func $$f44 (result (ref null func)) (return_call_ref $$t4 (ref.func $$f44))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_ref.wast:299 +let $2 = instantiate(`(module + (type $$t (func (result i32))) + (func (export "unreachable") (result i32) + (unreachable) + (return_call_ref $$t) + ) +)`); + +// ./test/core/return_call_ref.wast:306 +assert_trap(() => invoke($2, `unreachable`, []), `unreachable`); + +// ./test/core/return_call_ref.wast:308 +let $3 = instantiate(`(module + (elem declare func $$f) + (type $$t (func (param i32) (result i32))) + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "unreachable") (result i32) + (unreachable) + (ref.func $$f) + (return_call_ref $$t) + ) +)`); + +// ./test/core/return_call_ref.wast:319 +assert_trap(() => invoke($3, `unreachable`, []), `unreachable`); + +// ./test/core/return_call_ref.wast:321 +let $4 = instantiate(`(module + (elem declare func $$f) + (type $$t (func (param i32) (result i32))) + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "unreachable") (result i32) + (unreachable) + (i32.const 0) + (ref.func $$f) + (return_call_ref $$t) + (i32.const 0) + ) +)`); + +// ./test/core/return_call_ref.wast:334 +assert_trap(() => invoke($4, `unreachable`, []), `unreachable`); + +// ./test/core/return_call_ref.wast:336 +assert_invalid( + () => instantiate(`(module + (elem declare func $$f) + (type $$t (func (param i32) (result i32))) + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "unreachable") (result i32) + (unreachable) + (i64.const 0) + (ref.func $$f) + (return_call_ref $$t) + ) + )`), + `type mismatch`, +); + +// ./test/core/return_call_ref.wast:352 +assert_invalid( + () => instantiate(`(module + (elem declare func $$f) + (type $$t (func (param i32) (result i32))) + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "unreachable") (result i32) + (unreachable) + (ref.func $$f) + (return_call_ref $$t) + (i64.const 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/return_call_ref.wast:368 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (func $$f (param $$r externref) + (return_call_ref $$t (local.get $$r)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/function-references/unreached-valid.wast.js b/js/src/jit-test/tests/wasm/spec/function-references/unreached-valid.wast.js new file mode 100644 index 0000000000..e25a157431 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/function-references/unreached-valid.wast.js @@ -0,0 +1,109 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/unreached-valid.wast + +// ./test/core/unreached-valid.wast:1 +let $0 = instantiate(`(module + + ;; Check that both sides of the select are evaluated + (func (export "select-trap-left") (param $$cond i32) (result i32) + (select (unreachable) (i32.const 0) (local.get $$cond)) + ) + (func (export "select-trap-right") (param $$cond i32) (result i32) + (select (i32.const 0) (unreachable) (local.get $$cond)) + ) + + (func (export "select-unreached") + (unreachable) (select) + (unreachable) (i32.const 0) (select) + (unreachable) (i32.const 0) (i32.const 0) (select) + (unreachable) (i32.const 0) (i32.const 0) (i32.const 0) (select) + (unreachable) (f32.const 0) (i32.const 0) (select) + (unreachable) + ) + + (func (export "select-unreached-result1") (result i32) + (unreachable) (i32.add (select)) + ) + + (func (export "select-unreached-result2") (result i64) + (unreachable) (i64.add (select (i64.const 0) (i32.const 0))) + ) + + (func (export "select-unreached-num") + (unreachable) + (select) + (i32.eqz) + (drop) + ) + (func (export "select-unreached-ref") + (unreachable) + (select) + (ref.is_null) + (drop) + ) + + (type $$t (func (param i32) (result i32))) + (func (export "call_ref-unreached") (result i32) + (unreachable) + (call_ref $$t) + ) +)`); + +// ./test/core/unreached-valid.wast:48 +assert_trap(() => invoke($0, `select-trap-left`, [1]), `unreachable`); + +// ./test/core/unreached-valid.wast:49 +assert_trap(() => invoke($0, `select-trap-left`, [0]), `unreachable`); + +// ./test/core/unreached-valid.wast:50 +assert_trap(() => invoke($0, `select-trap-right`, [1]), `unreachable`); + +// ./test/core/unreached-valid.wast:51 +assert_trap(() => invoke($0, `select-trap-right`, [0]), `unreachable`); + +// ./test/core/unreached-valid.wast:53 +assert_trap(() => invoke($0, `select-unreached-result1`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:54 +assert_trap(() => invoke($0, `select-unreached-result2`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:55 +assert_trap(() => invoke($0, `select-unreached-num`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:56 +assert_trap(() => invoke($0, `select-unreached-ref`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:58 +assert_trap(() => invoke($0, `call_ref-unreached`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:63 +let $1 = instantiate(`(module + (func (export "meet-bottom") + (block (result f64) + (block (result f32) + (unreachable) + (br_table 0 1 1 (i32.const 1)) + ) + (drop) + (f64.const 0) + ) + (drop) + ) +)`); + +// ./test/core/unreached-valid.wast:77 +assert_trap(() => invoke($1, `meet-bottom`, []), `unreachable`); diff --git a/js/src/jit-test/tests/wasm/spec/gc/array.wast.js b/js/src/jit-test/tests/wasm/spec/gc/array.wast.js new file mode 100644 index 0000000000..4161a6b5f9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/array.wast.js @@ -0,0 +1,385 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/array.wast + +// ./test/core/gc/array.wast:3 +let $0 = instantiate(`(module + (type (array i8)) + (type (array i16)) + (type (array i32)) + (type (array i64)) + (type (array f32)) + (type (array f64)) + (type (array anyref)) + (type (array (ref struct))) + (type (array (ref 0))) + (type (array (ref null 1))) + (type (array (mut i8))) + (type (array (mut i16))) + (type (array (mut i32))) + (type (array (mut i64))) + (type (array (mut i32))) + (type (array (mut i64))) + (type (array (mut anyref))) + (type (array (mut (ref struct)))) + (type (array (mut (ref 0)))) + (type (array (mut (ref null i31)))) +)`); + +// ./test/core/gc/array.wast:27 +assert_invalid( + () => instantiate(`(module + (type (array (mut (ref null 10)))) + )`), + `unknown type`, +); + +// ./test/core/gc/array.wast:37 +let $1 = instantiate(`(module + (rec + (type $$s0 (array (ref $$s1))) + (type $$s1 (array (ref $$s0))) + ) + + (func (param (ref $$forward))) + + (type $$forward (array i32)) +)`); + +// ./test/core/gc/array.wast:48 +assert_invalid(() => instantiate(`(module (type (array (ref 1))))`), `unknown type`); + +// ./test/core/gc/array.wast:52 +assert_invalid(() => instantiate(`(module (type (array (mut (ref 1)))))`), `unknown type`); + +// ./test/core/gc/array.wast:60 +let $2 = instantiate(`(module + (type $$vec (array f32)) + (type $$mvec (array (mut f32))) + + (global (ref $$vec) (array.new $$vec (f32.const 1) (i32.const 3))) + (global (ref $$vec) (array.new_default $$vec (i32.const 3))) + + (func $$new (export "new") (result (ref $$vec)) + (array.new_default $$vec (i32.const 3)) + ) + + (func $$get (param $$i i32) (param $$v (ref $$vec)) (result f32) + (array.get $$vec (local.get $$v) (local.get $$i)) + ) + (func (export "get") (param $$i i32) (result f32) + (call $$get (local.get $$i) (call $$new)) + ) + + (func $$set_get (param $$i i32) (param $$v (ref $$mvec)) (param $$y f32) (result f32) + (array.set $$mvec (local.get $$v) (local.get $$i) (local.get $$y)) + (array.get $$mvec (local.get $$v) (local.get $$i)) + ) + (func (export "set_get") (param $$i i32) (param $$y f32) (result f32) + (call $$set_get (local.get $$i) + (array.new_default $$mvec (i32.const 3)) + (local.get $$y) + ) + ) + + (func $$len (param $$v (ref array)) (result i32) + (array.len (local.get $$v)) + ) + (func (export "len") (result i32) + (call $$len (call $$new)) + ) +)`); + +// ./test/core/gc/array.wast:97 +assert_return(() => invoke($2, `new`, []), [new RefWithType('arrayref')]); + +// ./test/core/gc/array.wast:98 +assert_return(() => invoke($2, `new`, []), [new RefWithType('eqref')]); + +// ./test/core/gc/array.wast:99 +assert_return(() => invoke($2, `get`, [0]), [value("f32", 0)]); + +// ./test/core/gc/array.wast:100 +assert_return(() => invoke($2, `set_get`, [1, value("f32", 7)]), [value("f32", 7)]); + +// ./test/core/gc/array.wast:101 +assert_return(() => invoke($2, `len`, []), [value("i32", 3)]); + +// ./test/core/gc/array.wast:103 +assert_trap(() => invoke($2, `get`, [10]), `out of bounds array access`); + +// ./test/core/gc/array.wast:104 +assert_trap(() => invoke($2, `set_get`, [10, value("f32", 7)]), `out of bounds array access`); + +// ./test/core/gc/array.wast:106 +let $3 = instantiate(`(module + (type $$vec (array f32)) + (type $$mvec (array (mut f32))) + + (global (ref $$vec) (array.new_fixed $$vec 2 (f32.const 1) (f32.const 2))) + + (func $$new (export "new") (result (ref $$vec)) + (array.new_fixed $$vec 2 (f32.const 1) (f32.const 2)) + ) + + (func $$get (param $$i i32) (param $$v (ref $$vec)) (result f32) + (array.get $$vec (local.get $$v) (local.get $$i)) + ) + (func (export "get") (param $$i i32) (result f32) + (call $$get (local.get $$i) (call $$new)) + ) + + (func $$set_get (param $$i i32) (param $$v (ref $$mvec)) (param $$y f32) (result f32) + (array.set $$mvec (local.get $$v) (local.get $$i) (local.get $$y)) + (array.get $$mvec (local.get $$v) (local.get $$i)) + ) + (func (export "set_get") (param $$i i32) (param $$y f32) (result f32) + (call $$set_get (local.get $$i) + (array.new_fixed $$mvec 3 (f32.const 1) (f32.const 2) (f32.const 3)) + (local.get $$y) + ) + ) + + (func $$len (param $$v (ref array)) (result i32) + (array.len (local.get $$v)) + ) + (func (export "len") (result i32) + (call $$len (call $$new)) + ) +)`); + +// ./test/core/gc/array.wast:142 +assert_return(() => invoke($3, `new`, []), [new RefWithType('arrayref')]); + +// ./test/core/gc/array.wast:143 +assert_return(() => invoke($3, `new`, []), [new RefWithType('eqref')]); + +// ./test/core/gc/array.wast:144 +assert_return(() => invoke($3, `get`, [0]), [value("f32", 1)]); + +// ./test/core/gc/array.wast:145 +assert_return(() => invoke($3, `set_get`, [1, value("f32", 7)]), [value("f32", 7)]); + +// ./test/core/gc/array.wast:146 +assert_return(() => invoke($3, `len`, []), [value("i32", 2)]); + +// ./test/core/gc/array.wast:148 +assert_trap(() => invoke($3, `get`, [10]), `out of bounds array access`); + +// ./test/core/gc/array.wast:149 +assert_trap(() => invoke($3, `set_get`, [10, value("f32", 7)]), `out of bounds array access`); + +// ./test/core/gc/array.wast:151 +let $4 = instantiate(`(module + (type $$vec (array i8)) + (type $$mvec (array (mut i8))) + + (data $$d "\\00\\01\\02\\ff\\04") + + (func $$new (export "new") (result (ref $$vec)) + (array.new_data $$vec $$d (i32.const 1) (i32.const 3)) + ) + + (func $$get_u (param $$i i32) (param $$v (ref $$vec)) (result i32) + (array.get_u $$vec (local.get $$v) (local.get $$i)) + ) + (func (export "get_u") (param $$i i32) (result i32) + (call $$get_u (local.get $$i) (call $$new)) + ) + + (func $$get_s (param $$i i32) (param $$v (ref $$vec)) (result i32) + (array.get_s $$vec (local.get $$v) (local.get $$i)) + ) + (func (export "get_s") (param $$i i32) (result i32) + (call $$get_s (local.get $$i) (call $$new)) + ) + + (func $$set_get (param $$i i32) (param $$v (ref $$mvec)) (param $$y i32) (result i32) + (array.set $$mvec (local.get $$v) (local.get $$i) (local.get $$y)) + (array.get_u $$mvec (local.get $$v) (local.get $$i)) + ) + (func (export "set_get") (param $$i i32) (param $$y i32) (result i32) + (call $$set_get (local.get $$i) + (array.new_data $$mvec $$d (i32.const 1) (i32.const 3)) + (local.get $$y) + ) + ) + + (func $$len (param $$v (ref array)) (result i32) + (array.len (local.get $$v)) + ) + (func (export "len") (result i32) + (call $$len (call $$new)) + ) +)`); + +// ./test/core/gc/array.wast:194 +assert_return(() => invoke($4, `new`, []), [new RefWithType('arrayref')]); + +// ./test/core/gc/array.wast:195 +assert_return(() => invoke($4, `new`, []), [new RefWithType('eqref')]); + +// ./test/core/gc/array.wast:196 +assert_return(() => invoke($4, `get_u`, [2]), [value("i32", 255)]); + +// ./test/core/gc/array.wast:197 +assert_return(() => invoke($4, `get_s`, [2]), [value("i32", -1)]); + +// ./test/core/gc/array.wast:198 +assert_return(() => invoke($4, `set_get`, [1, 7]), [value("i32", 7)]); + +// ./test/core/gc/array.wast:199 +assert_return(() => invoke($4, `len`, []), [value("i32", 3)]); + +// ./test/core/gc/array.wast:201 +assert_trap(() => invoke($4, `get_u`, [10]), `out of bounds array access`); + +// ./test/core/gc/array.wast:202 +assert_trap(() => invoke($4, `get_s`, [10]), `out of bounds array access`); + +// ./test/core/gc/array.wast:203 +assert_trap(() => invoke($4, `set_get`, [10, 7]), `out of bounds array access`); + +// ./test/core/gc/array.wast:205 +let $5 = instantiate(`(module + (type $$bvec (array i8)) + (type $$vec (array (ref $$bvec))) + (type $$mvec (array (mut (ref $$bvec)))) + (type $$nvec (array (ref null $$bvec))) + (type $$avec (array (mut anyref))) + + (elem $$e (ref $$bvec) + (array.new $$bvec (i32.const 7) (i32.const 3)) + (array.new_fixed $$bvec 2 (i32.const 1) (i32.const 2)) + ) + + (func $$new (export "new") (result (ref $$vec)) + (array.new_elem $$vec $$e (i32.const 0) (i32.const 2)) + ) + + (func $$sub1 (result (ref $$nvec)) + (array.new_elem $$nvec $$e (i32.const 0) (i32.const 2)) + ) + (func $$sub2 (result (ref $$avec)) + (array.new_elem $$avec $$e (i32.const 0) (i32.const 2)) + ) + + (func $$get (param $$i i32) (param $$j i32) (param $$v (ref $$vec)) (result i32) + (array.get_u $$bvec (array.get $$vec (local.get $$v) (local.get $$i)) (local.get $$j)) + ) + (func (export "get") (param $$i i32) (param $$j i32) (result i32) + (call $$get (local.get $$i) (local.get $$j) (call $$new)) + ) + + (func $$set_get (param $$i i32) (param $$j i32) (param $$v (ref $$mvec)) (param $$y i32) (result i32) + (array.set $$mvec (local.get $$v) (local.get $$i) (array.get $$mvec (local.get $$v) (local.get $$y))) + (array.get_u $$bvec (array.get $$mvec (local.get $$v) (local.get $$i)) (local.get $$j)) + ) + (func (export "set_get") (param $$i i32) (param $$j i32) (param $$y i32) (result i32) + (call $$set_get (local.get $$i) (local.get $$j) + (array.new_elem $$mvec $$e (i32.const 0) (i32.const 2)) + (local.get $$y) + ) + ) + + (func $$len (param $$v (ref array)) (result i32) + (array.len (local.get $$v)) + ) + (func (export "len") (result i32) + (call $$len (call $$new)) + ) +)`); + +// ./test/core/gc/array.wast:254 +assert_return(() => invoke($5, `new`, []), [new RefWithType('arrayref')]); + +// ./test/core/gc/array.wast:255 +assert_return(() => invoke($5, `new`, []), [new RefWithType('eqref')]); + +// ./test/core/gc/array.wast:256 +assert_return(() => invoke($5, `get`, [0, 0]), [value("i32", 7)]); + +// ./test/core/gc/array.wast:257 +assert_return(() => invoke($5, `get`, [1, 0]), [value("i32", 1)]); + +// ./test/core/gc/array.wast:258 +assert_return(() => invoke($5, `set_get`, [0, 1, 1]), [value("i32", 2)]); + +// ./test/core/gc/array.wast:259 +assert_return(() => invoke($5, `len`, []), [value("i32", 2)]); + +// ./test/core/gc/array.wast:261 +assert_trap(() => invoke($5, `get`, [10, 0]), `out of bounds array access`); + +// ./test/core/gc/array.wast:262 +assert_trap(() => invoke($5, `set_get`, [10, 0, 0]), `out of bounds array access`); + +// ./test/core/gc/array.wast:264 +assert_invalid( + () => instantiate(`(module + (type $$a (array i64)) + (func (export "array.set-immutable") (param $$a (ref $$a)) + (array.set $$a (local.get $$a) (i32.const 0) (i64.const 1)) + ) + )`), + `array is immutable`, +); + +// ./test/core/gc/array.wast:274 +assert_invalid( + () => instantiate(`(module + (type $$bvec (array i8)) + + (data $$d "\\00\\01\\02\\03\\04") + + (global (ref $$bvec) + (array.new_data $$bvec $$d (i32.const 1) (i32.const 3)) + ) + )`), + `constant expression required`, +); + +// ./test/core/gc/array.wast:287 +assert_invalid( + () => instantiate(`(module + (type $$bvec (array i8)) + (type $$vvec (array (ref $$bvec))) + + (elem $$e (ref $$bvec) (ref.null $$bvec)) + + (global (ref $$vvec) + (array.new_elem $$vvec $$e (i32.const 0) (i32.const 1)) + ) + )`), + `constant expression required`, +); + +// ./test/core/gc/array.wast:304 +let $6 = instantiate(`(module + (type $$t (array (mut i32))) + (func (export "array.get-null") + (local (ref null $$t)) (drop (array.get $$t (local.get 0) (i32.const 0))) + ) + (func (export "array.set-null") + (local (ref null $$t)) (array.set $$t (local.get 0) (i32.const 0) (i32.const 0)) + ) +)`); + +// ./test/core/gc/array.wast:314 +assert_trap(() => invoke($6, `array.get-null`, []), `null array reference`); + +// ./test/core/gc/array.wast:315 +assert_trap(() => invoke($6, `array.set-null`, []), `null array reference`); diff --git a/js/src/jit-test/tests/wasm/spec/gc/array_copy.wast.js b/js/src/jit-test/tests/wasm/spec/gc/array_copy.wast.js new file mode 100644 index 0000000000..0109df19e9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/array_copy.wast.js @@ -0,0 +1,202 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/array_copy.wast + +// ./test/core/gc/array_copy.wast:5 +assert_invalid( + () => instantiate(`(module + (type $$a (array i8)) + (type $$b (array (mut i8))) + + (func (export "array.copy-immutable") (param $$1 (ref $$a)) (param $$2 (ref $$b)) + (array.copy $$a $$b (local.get $$1) (i32.const 0) (local.get $$2) (i32.const 0) (i32.const 0)) + ) + )`), + `array is immutable`, +); + +// ./test/core/gc/array_copy.wast:17 +assert_invalid( + () => instantiate(`(module + (type $$a (array (mut i8))) + (type $$b (array i16)) + + (func (export "array.copy-packed-invalid") (param $$1 (ref $$a)) (param $$2 (ref $$b)) + (array.copy $$a $$b (local.get $$1) (i32.const 0) (local.get $$2) (i32.const 0) (i32.const 0)) + ) + )`), + `array types do not match`, +); + +// ./test/core/gc/array_copy.wast:29 +assert_invalid( + () => instantiate(`(module + (type $$a (array (mut i8))) + (type $$b (array (mut (ref $$a)))) + + (func (export "array.copy-ref-invalid-1") (param $$1 (ref $$a)) (param $$2 (ref $$b)) + (array.copy $$a $$b (local.get $$1) (i32.const 0) (local.get $$2) (i32.const 0) (i32.const 0)) + ) + )`), + `array types do not match`, +); + +// ./test/core/gc/array_copy.wast:41 +assert_invalid( + () => instantiate(`(module + (type $$a (array (mut i8))) + (type $$b (array (mut (ref $$a)))) + (type $$c (array (mut (ref $$b)))) + + (func (export "array.copy-ref-invalid-1") (param $$1 (ref $$b)) (param $$2 (ref $$c)) + (array.copy $$b $$c (local.get $$1) (i32.const 0) (local.get $$2) (i32.const 0) (i32.const 0)) + ) + )`), + `array types do not match`, +); + +// ./test/core/gc/array_copy.wast:54 +let $0 = instantiate(`(module + (type $$arr8 (array i8)) + (type $$arr8_mut (array (mut i8))) + + (global $$g_arr8 (ref $$arr8) (array.new $$arr8 (i32.const 10) (i32.const 12))) + (global $$g_arr8_mut (mut (ref $$arr8_mut)) (array.new_default $$arr8_mut (i32.const 12))) + + (data $$d1 "abcdefghijkl") + + (func (export "array_get_nth") (param $$1 i32) (result i32) + (array.get_u $$arr8_mut (global.get $$g_arr8_mut) (local.get $$1)) + ) + + (func (export "array_copy-null-left") + (array.copy $$arr8_mut $$arr8 (ref.null $$arr8_mut) (i32.const 0) (global.get $$g_arr8) (i32.const 0) (i32.const 0)) + ) + + (func (export "array_copy-null-right") + (array.copy $$arr8_mut $$arr8 (global.get $$g_arr8_mut) (i32.const 0) (ref.null $$arr8) (i32.const 0) (i32.const 0)) + ) + + (func (export "array_copy") (param $$1 i32) (param $$2 i32) (param $$3 i32) + (array.copy $$arr8_mut $$arr8 (global.get $$g_arr8_mut) (local.get $$1) (global.get $$g_arr8) (local.get $$2) (local.get $$3)) + ) + + (func (export "array_copy_overlap_test-1") + (local $$1 (ref $$arr8_mut)) + (array.new_data $$arr8_mut $$d1 (i32.const 0) (i32.const 12)) + (local.set $$1) + (array.copy $$arr8_mut $$arr8_mut (local.get $$1) (i32.const 1) (local.get $$1) (i32.const 0) (i32.const 11)) + (global.set $$g_arr8_mut (local.get $$1)) + ) + + (func (export "array_copy_overlap_test-2") + (local $$1 (ref $$arr8_mut)) + (array.new_data $$arr8_mut $$d1 (i32.const 0) (i32.const 12)) + (local.set $$1) + (array.copy $$arr8_mut $$arr8_mut (local.get $$1) (i32.const 0) (local.get $$1) (i32.const 1) (i32.const 11)) + (global.set $$g_arr8_mut (local.get $$1)) + ) +)`); + +// ./test/core/gc/array_copy.wast:97 +assert_trap(() => invoke($0, `array_copy-null-left`, []), `null array reference`); + +// ./test/core/gc/array_copy.wast:98 +assert_trap(() => invoke($0, `array_copy-null-right`, []), `null array reference`); + +// ./test/core/gc/array_copy.wast:101 +assert_trap(() => invoke($0, `array_copy`, [13, 0, 0]), `out of bounds array access`); + +// ./test/core/gc/array_copy.wast:102 +assert_trap(() => invoke($0, `array_copy`, [0, 13, 0]), `out of bounds array access`); + +// ./test/core/gc/array_copy.wast:105 +assert_trap(() => invoke($0, `array_copy`, [0, 0, 13]), `out of bounds array access`); + +// ./test/core/gc/array_copy.wast:106 +assert_trap(() => invoke($0, `array_copy`, [0, 0, 13]), `out of bounds array access`); + +// ./test/core/gc/array_copy.wast:109 +assert_return(() => invoke($0, `array_copy`, [12, 0, 0]), []); + +// ./test/core/gc/array_copy.wast:110 +assert_return(() => invoke($0, `array_copy`, [0, 12, 0]), []); + +// ./test/core/gc/array_copy.wast:113 +assert_return(() => invoke($0, `array_get_nth`, [0]), [value("i32", 0)]); + +// ./test/core/gc/array_copy.wast:114 +assert_return(() => invoke($0, `array_get_nth`, [5]), [value("i32", 0)]); + +// ./test/core/gc/array_copy.wast:115 +assert_return(() => invoke($0, `array_get_nth`, [11]), [value("i32", 0)]); + +// ./test/core/gc/array_copy.wast:116 +assert_trap(() => invoke($0, `array_get_nth`, [12]), `out of bounds array access`); + +// ./test/core/gc/array_copy.wast:119 +assert_return(() => invoke($0, `array_copy`, [0, 0, 2]), []); + +// ./test/core/gc/array_copy.wast:120 +assert_return(() => invoke($0, `array_get_nth`, [0]), [value("i32", 10)]); + +// ./test/core/gc/array_copy.wast:121 +assert_return(() => invoke($0, `array_get_nth`, [1]), [value("i32", 10)]); + +// ./test/core/gc/array_copy.wast:122 +assert_return(() => invoke($0, `array_get_nth`, [2]), [value("i32", 0)]); + +// ./test/core/gc/array_copy.wast:125 +assert_return(() => invoke($0, `array_copy_overlap_test-1`, []), []); + +// ./test/core/gc/array_copy.wast:126 +assert_return(() => invoke($0, `array_get_nth`, [0]), [value("i32", 97)]); + +// ./test/core/gc/array_copy.wast:127 +assert_return(() => invoke($0, `array_get_nth`, [1]), [value("i32", 97)]); + +// ./test/core/gc/array_copy.wast:128 +assert_return(() => invoke($0, `array_get_nth`, [2]), [value("i32", 98)]); + +// ./test/core/gc/array_copy.wast:129 +assert_return(() => invoke($0, `array_get_nth`, [5]), [value("i32", 101)]); + +// ./test/core/gc/array_copy.wast:130 +assert_return(() => invoke($0, `array_get_nth`, [10]), [value("i32", 106)]); + +// ./test/core/gc/array_copy.wast:131 +assert_return(() => invoke($0, `array_get_nth`, [11]), [value("i32", 107)]); + +// ./test/core/gc/array_copy.wast:133 +assert_return(() => invoke($0, `array_copy_overlap_test-2`, []), []); + +// ./test/core/gc/array_copy.wast:134 +assert_return(() => invoke($0, `array_get_nth`, [0]), [value("i32", 98)]); + +// ./test/core/gc/array_copy.wast:135 +assert_return(() => invoke($0, `array_get_nth`, [1]), [value("i32", 99)]); + +// ./test/core/gc/array_copy.wast:136 +assert_return(() => invoke($0, `array_get_nth`, [5]), [value("i32", 103)]); + +// ./test/core/gc/array_copy.wast:137 +assert_return(() => invoke($0, `array_get_nth`, [9]), [value("i32", 107)]); + +// ./test/core/gc/array_copy.wast:138 +assert_return(() => invoke($0, `array_get_nth`, [10]), [value("i32", 108)]); + +// ./test/core/gc/array_copy.wast:139 +assert_return(() => invoke($0, `array_get_nth`, [11]), [value("i32", 108)]); diff --git a/js/src/jit-test/tests/wasm/spec/gc/array_fill.wast.js b/js/src/jit-test/tests/wasm/spec/gc/array_fill.wast.js new file mode 100644 index 0000000000..271b1690c4 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/array_fill.wast.js @@ -0,0 +1,112 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/array_fill.wast + +// ./test/core/gc/array_fill.wast:5 +assert_invalid( + () => instantiate(`(module + (type $$a (array i8)) + + (func (export "array.fill-immutable") (param $$1 (ref $$a)) (param $$2 i32) + (array.fill $$a (local.get $$1) (i32.const 0) (local.get $$2) (i32.const 0)) + ) + )`), + `array is immutable`, +); + +// ./test/core/gc/array_fill.wast:16 +assert_invalid( + () => instantiate(`(module + (type $$a (array (mut i8))) + + (func (export "array.fill-invalid-1") (param $$1 (ref $$a)) (param $$2 funcref) + (array.fill $$a (local.get $$1) (i32.const 0) (local.get $$2) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/array_fill.wast:27 +assert_invalid( + () => instantiate(`(module + (type $$b (array (mut funcref))) + + (func (export "array.fill-invalid-1") (param $$1 (ref $$b)) (param $$2 i32) + (array.fill $$b (local.get $$1) (i32.const 0) (local.get $$2) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/array_fill.wast:38 +let $0 = instantiate(`(module + (type $$arr8 (array i8)) + (type $$arr8_mut (array (mut i8))) + + (global $$g_arr8 (ref $$arr8) (array.new $$arr8 (i32.const 10) (i32.const 12))) + (global $$g_arr8_mut (mut (ref $$arr8_mut)) (array.new_default $$arr8_mut (i32.const 12))) + + (func (export "array_get_nth") (param $$1 i32) (result i32) + (array.get_u $$arr8_mut (global.get $$g_arr8_mut) (local.get $$1)) + ) + + (func (export "array_fill-null") + (array.fill $$arr8_mut (ref.null $$arr8_mut) (i32.const 0) (i32.const 0) (i32.const 0)) + ) + + (func (export "array_fill") (param $$1 i32) (param $$2 i32) (param $$3 i32) + (array.fill $$arr8_mut (global.get $$g_arr8_mut) (local.get $$1) (local.get $$2) (local.get $$3)) + ) +)`); + +// ./test/core/gc/array_fill.wast:59 +assert_trap(() => invoke($0, `array_fill-null`, []), `null array reference`); + +// ./test/core/gc/array_fill.wast:62 +assert_trap(() => invoke($0, `array_fill`, [13, 0, 0]), `out of bounds array access`); + +// ./test/core/gc/array_fill.wast:65 +assert_trap(() => invoke($0, `array_fill`, [0, 0, 13]), `out of bounds array access`); + +// ./test/core/gc/array_fill.wast:68 +assert_return(() => invoke($0, `array_fill`, [12, 0, 0]), []); + +// ./test/core/gc/array_fill.wast:71 +assert_return(() => invoke($0, `array_get_nth`, [0]), [value("i32", 0)]); + +// ./test/core/gc/array_fill.wast:72 +assert_return(() => invoke($0, `array_get_nth`, [5]), [value("i32", 0)]); + +// ./test/core/gc/array_fill.wast:73 +assert_return(() => invoke($0, `array_get_nth`, [11]), [value("i32", 0)]); + +// ./test/core/gc/array_fill.wast:74 +assert_trap(() => invoke($0, `array_get_nth`, [12]), `out of bounds array access`); + +// ./test/core/gc/array_fill.wast:77 +assert_return(() => invoke($0, `array_fill`, [2, 11, 2]), []); + +// ./test/core/gc/array_fill.wast:78 +assert_return(() => invoke($0, `array_get_nth`, [1]), [value("i32", 0)]); + +// ./test/core/gc/array_fill.wast:79 +assert_return(() => invoke($0, `array_get_nth`, [2]), [value("i32", 11)]); + +// ./test/core/gc/array_fill.wast:80 +assert_return(() => invoke($0, `array_get_nth`, [3]), [value("i32", 11)]); + +// ./test/core/gc/array_fill.wast:81 +assert_return(() => invoke($0, `array_get_nth`, [4]), [value("i32", 0)]); diff --git a/js/src/jit-test/tests/wasm/spec/gc/binary-gc.wast.js b/js/src/jit-test/tests/wasm/spec/gc/binary-gc.wast.js new file mode 100644 index 0000000000..e63be7b2fd --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/binary-gc.wast.js @@ -0,0 +1,30 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/binary-gc.wast + +// ./test/core/gc/binary-gc.wast:1 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01" ;; Type section id + "\\04" ;; Type section length + "\\01" ;; Types vector length + "\\5e" ;; Array type, -0x22 + "\\78" ;; Storage type: i8 or -0x08 + "\\02" ;; Mutability, should be 0 or 1, but isn't + )`), + `malformed mutability`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/br_if.wast.js b/js/src/jit-test/tests/wasm/spec/gc/br_if.wast.js new file mode 100644 index 0000000000..511ee003fb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/br_if.wast.js @@ -0,0 +1,886 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/br_if.wast + +// ./test/core/br_if.wast:3 +let $0 = instantiate(`(module + (func $$dummy) + + (func (export "type-i32") + (block (drop (i32.ctz (br_if 0 (i32.const 0) (i32.const 1))))) + ) + (func (export "type-i64") + (block (drop (i64.ctz (br_if 0 (i64.const 0) (i32.const 1))))) + ) + (func (export "type-f32") + (block (drop (f32.neg (br_if 0 (f32.const 0) (i32.const 1))))) + ) + (func (export "type-f64") + (block (drop (f64.neg (br_if 0 (f64.const 0) (i32.const 1))))) + ) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (br_if 0 (i64.const 2) (i32.const 1)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (br_if 0 (f32.const 3) (i32.const 1)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (br_if 0 (f64.const 4) (i32.const 1)))) + ) + + (func (export "as-block-first") (param i32) (result i32) + (block (br_if 0 (local.get 0)) (return (i32.const 2))) (i32.const 3) + ) + (func (export "as-block-mid") (param i32) (result i32) + (block (call $$dummy) (br_if 0 (local.get 0)) (return (i32.const 2))) + (i32.const 3) + ) + (func (export "as-block-last") (param i32) + (block (call $$dummy) (call $$dummy) (br_if 0 (local.get 0))) + ) + (func (export "as-block-first-value") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 10) (local.get 0))) (return (i32.const 11)) + ) + ) + (func (export "as-block-mid-value") (param i32) (result i32) + (block (result i32) + (call $$dummy) + (drop (br_if 0 (i32.const 20) (local.get 0))) + (return (i32.const 21)) + ) + ) + (func (export "as-block-last-value") (param i32) (result i32) + (block (result i32) + (call $$dummy) (call $$dummy) (br_if 0 (i32.const 11) (local.get 0)) + ) + ) + + (func (export "as-loop-first") (param i32) (result i32) + (block (loop (br_if 1 (local.get 0)) (return (i32.const 2)))) (i32.const 3) + ) + (func (export "as-loop-mid") (param i32) (result i32) + (block (loop (call $$dummy) (br_if 1 (local.get 0)) (return (i32.const 2)))) + (i32.const 4) + ) + (func (export "as-loop-last") (param i32) + (loop (call $$dummy) (br_if 1 (local.get 0))) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (br_if 0 (i32.const 1) (i32.const 2)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (br_if 0 (i32.const 1) (i32.const 2)) (i32.const 3))) + (i32.const 4) + ) + ) + (func (export "as-br_if-value-cond") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 2) (br_if 0 (i32.const 1) (local.get 0)))) + (i32.const 4) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (br_if 0 (i32.const 1) (i32.const 2)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (br_if 0 (i32.const 1) (i32.const 2)) (i32.const 3)) (i32.const 4) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 2) (br_if 0 (i32.const 1) (i32.const 3))) (i32.const 4) + ) + ) + (func (export "as-return-value") (result i64) + (block (result i64) (return (br_if 0 (i64.const 1) (i32.const 2)))) + ) + + (func (export "as-if-cond") (param i32) (result i32) + (block (result i32) + (if (result i32) + (br_if 0 (i32.const 1) (local.get 0)) + (then (i32.const 2)) + (else (i32.const 3)) + ) + ) + ) + (func (export "as-if-then") (param i32 i32) + (block + (if (local.get 0) (then (br_if 1 (local.get 1))) (else (call $$dummy))) + ) + ) + (func (export "as-if-else") (param i32 i32) + (block + (if (local.get 0) (then (call $$dummy)) (else (br_if 1 (local.get 1)))) + ) + ) + + (func (export "as-select-first") (param i32) (result i32) + (block (result i32) + (select (br_if 0 (i32.const 3) (i32.const 10)) (i32.const 2) (local.get 0)) + ) + ) + (func (export "as-select-second") (param i32) (result i32) + (block (result i32) + (select (i32.const 1) (br_if 0 (i32.const 3) (i32.const 10)) (local.get 0)) + ) + ) + (func (export "as-select-cond") (result i32) + (block (result i32) + (select (i32.const 1) (i32.const 2) (br_if 0 (i32.const 3) (i32.const 10))) + ) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (block (result i32) + (call $$f + (br_if 0 (i32.const 12) (i32.const 1)) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call-mid") (result i32) + (block (result i32) + (call $$f + (i32.const 1) (br_if 0 (i32.const 13) (i32.const 1)) (i32.const 3) + ) + ) + ) + (func (export "as-call-last") (result i32) + (block (result i32) + (call $$f + (i32.const 1) (i32.const 2) (br_if 0 (i32.const 14) (i32.const 1)) + ) + ) + ) + + (func $$func (param i32 i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-func") (result i32) + (block (result i32) + (call_indirect (type $$check) + (br_if 0 (i32.const 4) (i32.const 10)) + (i32.const 1) (i32.const 2) (i32.const 0) + ) + ) + ) + + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (br_if 0 (i32.const 4) (i32.const 10)) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (br_if 0 (i32.const 4) (i32.const 10)) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (i32.const 3) (br_if 0 (i32.const 4) (i32.const 10)) + ) + ) + ) + + (func (export "as-local.set-value") (param i32) (result i32) + (local i32) + (block (result i32) + (local.set 0 (br_if 0 (i32.const 17) (local.get 0))) + (i32.const -1) + ) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (block (result i32) + (local.tee 0 (br_if 0 (i32.const 1) (local.get 0))) + (return (i32.const -1)) + ) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (param i32) (result i32) + (block (result i32) + (global.set $$a (br_if 0 (i32.const 1) (local.get 0))) + (return (i32.const -1)) + ) + ) + + (memory 1) + (func (export "as-load-address") (result i32) + (block (result i32) (i32.load (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-loadN-address") (result i32) + (block (result i32) (i32.load8_s (br_if 0 (i32.const 30) (i32.const 1)))) + ) + + (func (export "as-store-address") (result i32) + (block (result i32) + (i32.store (br_if 0 (i32.const 30) (i32.const 1)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-store-value") (result i32) + (block (result i32) + (i32.store (i32.const 2) (br_if 0 (i32.const 31) (i32.const 1))) (i32.const -1) + ) + ) + + (func (export "as-storeN-address") (result i32) + (block (result i32) + (i32.store8 (br_if 0 (i32.const 32) (i32.const 1)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-storeN-value") (result i32) + (block (result i32) + (i32.store16 (i32.const 2) (br_if 0 (i32.const 33) (i32.const 1))) (i32.const -1) + ) + ) + + (func (export "as-unary-operand") (result f64) + (block (result f64) (f64.neg (br_if 0 (f64.const 1.0) (i32.const 1)))) + ) + (func (export "as-binary-left") (result i32) + (block (result i32) (i32.add (br_if 0 (i32.const 1) (i32.const 1)) (i32.const 10))) + ) + (func (export "as-binary-right") (result i32) + (block (result i32) (i32.sub (i32.const 10) (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-test-operand") (result i32) + (block (result i32) (i32.eqz (br_if 0 (i32.const 0) (i32.const 1)))) + ) + (func (export "as-compare-left") (result i32) + (block (result i32) (i32.le_u (br_if 0 (i32.const 1) (i32.const 1)) (i32.const 10))) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) (i32.ne (i32.const 10) (br_if 0 (i32.const 1) (i32.const 42)))) + ) + + (func (export "as-memory.grow-size") (result i32) + (block (result i32) (memory.grow (br_if 0 (i32.const 1) (i32.const 1)))) + ) + + (func (export "nested-block-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (i32.add + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) + (i32.const 16) + ) + ) + ) + ) + ) + + (func (export "nested-br-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + (i32.const 1) + )) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value-cond") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 1) + ) + )) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + (i32.const 1) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value-index") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 1) + ) + ) + (i32.const 16) + ) + ) + ) + +)`); + +// ./test/core/br_if.wast:372 +assert_return(() => invoke($0, `type-i32`, []), []); + +// ./test/core/br_if.wast:373 +assert_return(() => invoke($0, `type-i64`, []), []); + +// ./test/core/br_if.wast:374 +assert_return(() => invoke($0, `type-f32`, []), []); + +// ./test/core/br_if.wast:375 +assert_return(() => invoke($0, `type-f64`, []), []); + +// ./test/core/br_if.wast:377 +assert_return(() => invoke($0, `type-i32-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:378 +assert_return(() => invoke($0, `type-i64-value`, []), [value("i64", 2n)]); + +// ./test/core/br_if.wast:379 +assert_return(() => invoke($0, `type-f32-value`, []), [value("f32", 3)]); + +// ./test/core/br_if.wast:380 +assert_return(() => invoke($0, `type-f64-value`, []), [value("f64", 4)]); + +// ./test/core/br_if.wast:382 +assert_return(() => invoke($0, `as-block-first`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:383 +assert_return(() => invoke($0, `as-block-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:384 +assert_return(() => invoke($0, `as-block-mid`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:385 +assert_return(() => invoke($0, `as-block-mid`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:386 +assert_return(() => invoke($0, `as-block-last`, [0]), []); + +// ./test/core/br_if.wast:387 +assert_return(() => invoke($0, `as-block-last`, [1]), []); + +// ./test/core/br_if.wast:389 +assert_return(() => invoke($0, `as-block-first-value`, [0]), [value("i32", 11)]); + +// ./test/core/br_if.wast:390 +assert_return(() => invoke($0, `as-block-first-value`, [1]), [value("i32", 10)]); + +// ./test/core/br_if.wast:391 +assert_return(() => invoke($0, `as-block-mid-value`, [0]), [value("i32", 21)]); + +// ./test/core/br_if.wast:392 +assert_return(() => invoke($0, `as-block-mid-value`, [1]), [value("i32", 20)]); + +// ./test/core/br_if.wast:393 +assert_return(() => invoke($0, `as-block-last-value`, [0]), [value("i32", 11)]); + +// ./test/core/br_if.wast:394 +assert_return(() => invoke($0, `as-block-last-value`, [1]), [value("i32", 11)]); + +// ./test/core/br_if.wast:396 +assert_return(() => invoke($0, `as-loop-first`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:397 +assert_return(() => invoke($0, `as-loop-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:398 +assert_return(() => invoke($0, `as-loop-mid`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:399 +assert_return(() => invoke($0, `as-loop-mid`, [1]), [value("i32", 4)]); + +// ./test/core/br_if.wast:400 +assert_return(() => invoke($0, `as-loop-last`, [0]), []); + +// ./test/core/br_if.wast:401 +assert_return(() => invoke($0, `as-loop-last`, [1]), []); + +// ./test/core/br_if.wast:403 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:405 +assert_return(() => invoke($0, `as-br_if-cond`, []), []); + +// ./test/core/br_if.wast:406 +assert_return(() => invoke($0, `as-br_if-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:407 +assert_return(() => invoke($0, `as-br_if-value-cond`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:408 +assert_return(() => invoke($0, `as-br_if-value-cond`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:410 +assert_return(() => invoke($0, `as-br_table-index`, []), []); + +// ./test/core/br_if.wast:411 +assert_return(() => invoke($0, `as-br_table-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:412 +assert_return(() => invoke($0, `as-br_table-value-index`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:414 +assert_return(() => invoke($0, `as-return-value`, []), [value("i64", 1n)]); + +// ./test/core/br_if.wast:416 +assert_return(() => invoke($0, `as-if-cond`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:417 +assert_return(() => invoke($0, `as-if-cond`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:418 +assert_return(() => invoke($0, `as-if-then`, [0, 0]), []); + +// ./test/core/br_if.wast:419 +assert_return(() => invoke($0, `as-if-then`, [4, 0]), []); + +// ./test/core/br_if.wast:420 +assert_return(() => invoke($0, `as-if-then`, [0, 1]), []); + +// ./test/core/br_if.wast:421 +assert_return(() => invoke($0, `as-if-then`, [4, 1]), []); + +// ./test/core/br_if.wast:422 +assert_return(() => invoke($0, `as-if-else`, [0, 0]), []); + +// ./test/core/br_if.wast:423 +assert_return(() => invoke($0, `as-if-else`, [3, 0]), []); + +// ./test/core/br_if.wast:424 +assert_return(() => invoke($0, `as-if-else`, [0, 1]), []); + +// ./test/core/br_if.wast:425 +assert_return(() => invoke($0, `as-if-else`, [3, 1]), []); + +// ./test/core/br_if.wast:427 +assert_return(() => invoke($0, `as-select-first`, [0]), [value("i32", 3)]); + +// ./test/core/br_if.wast:428 +assert_return(() => invoke($0, `as-select-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:429 +assert_return(() => invoke($0, `as-select-second`, [0]), [value("i32", 3)]); + +// ./test/core/br_if.wast:430 +assert_return(() => invoke($0, `as-select-second`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:431 +assert_return(() => invoke($0, `as-select-cond`, []), [value("i32", 3)]); + +// ./test/core/br_if.wast:433 +assert_return(() => invoke($0, `as-call-first`, []), [value("i32", 12)]); + +// ./test/core/br_if.wast:434 +assert_return(() => invoke($0, `as-call-mid`, []), [value("i32", 13)]); + +// ./test/core/br_if.wast:435 +assert_return(() => invoke($0, `as-call-last`, []), [value("i32", 14)]); + +// ./test/core/br_if.wast:437 +assert_return(() => invoke($0, `as-call_indirect-func`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:438 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:439 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:440 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:442 +assert_return(() => invoke($0, `as-local.set-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:443 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 17)]); + +// ./test/core/br_if.wast:445 +assert_return(() => invoke($0, `as-local.tee-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:446 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:448 +assert_return(() => invoke($0, `as-global.set-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:449 +assert_return(() => invoke($0, `as-global.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:451 +assert_return(() => invoke($0, `as-load-address`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:452 +assert_return(() => invoke($0, `as-loadN-address`, []), [value("i32", 30)]); + +// ./test/core/br_if.wast:454 +assert_return(() => invoke($0, `as-store-address`, []), [value("i32", 30)]); + +// ./test/core/br_if.wast:455 +assert_return(() => invoke($0, `as-store-value`, []), [value("i32", 31)]); + +// ./test/core/br_if.wast:456 +assert_return(() => invoke($0, `as-storeN-address`, []), [value("i32", 32)]); + +// ./test/core/br_if.wast:457 +assert_return(() => invoke($0, `as-storeN-value`, []), [value("i32", 33)]); + +// ./test/core/br_if.wast:459 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("f64", 1)]); + +// ./test/core/br_if.wast:460 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:461 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:462 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/br_if.wast:463 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:464 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:465 +assert_return(() => invoke($0, `as-memory.grow-size`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:467 +assert_return(() => invoke($0, `nested-block-value`, [0]), [value("i32", 21)]); + +// ./test/core/br_if.wast:468 +assert_return(() => invoke($0, `nested-block-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:469 +assert_return(() => invoke($0, `nested-br-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:470 +assert_return(() => invoke($0, `nested-br-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:471 +assert_return(() => invoke($0, `nested-br_if-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:472 +assert_return(() => invoke($0, `nested-br_if-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:473 +assert_return(() => invoke($0, `nested-br_if-value-cond`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:474 +assert_return(() => invoke($0, `nested-br_if-value-cond`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:475 +assert_return(() => invoke($0, `nested-br_table-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:476 +assert_return(() => invoke($0, `nested-br_table-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:477 +assert_return(() => invoke($0, `nested-br_table-value-index`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:478 +assert_return(() => invoke($0, `nested-br_table-value-index`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:480 +assert_invalid( + () => instantiate(`(module (func $$type-false-i32 (block (i32.ctz (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:484 +assert_invalid( + () => instantiate(`(module (func $$type-false-i64 (block (i64.ctz (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:488 +assert_invalid( + () => instantiate(`(module (func $$type-false-f32 (block (f32.neg (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:492 +assert_invalid( + () => instantiate(`(module (func $$type-false-f64 (block (f64.neg (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:497 +assert_invalid( + () => instantiate(`(module (func $$type-true-i32 (block (i32.ctz (br_if 0 (i32.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:501 +assert_invalid( + () => instantiate(`(module (func $$type-true-i64 (block (i64.ctz (br_if 0 (i64.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:505 +assert_invalid( + () => instantiate(`(module (func $$type-true-f32 (block (f32.neg (br_if 0 (f32.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:509 +assert_invalid( + () => instantiate(`(module (func $$type-true-f64 (block (f64.neg (br_if 0 (i64.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:514 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (i32.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:520 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (i32.const 1)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:526 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-num-vs-void + (block (br_if 0 (i32.const 0) (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:532 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-num-vs-void + (block (br_if 0 (i32.const 0) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:539 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (nop) (i32.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:545 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (nop) (i32.const 1)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:551 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-num-vs-num (result i32) + (block (result i32) + (drop (br_if 0 (i64.const 1) (i32.const 0))) (i32.const 1) + ) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:559 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-num-vs-num (result i32) + (block (result i32) + (drop (br_if 0 (i64.const 1) (i32.const 0))) (i32.const 1) + ) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:568 +assert_invalid( + () => instantiate(`(module (func $$type-cond-empty-vs-i32 + (block (br_if 0)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:574 +assert_invalid( + () => instantiate(`(module (func $$type-cond-void-vs-i32 + (block (br_if 0 (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:580 +assert_invalid( + () => instantiate(`(module (func $$type-cond-num-vs-i32 + (block (br_if 0 (i64.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:586 +assert_invalid( + () => instantiate(`(module (func $$type-arg-cond-void-vs-i32 (result i32) + (block (result i32) (br_if 0 (i32.const 0) (nop)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:592 +assert_invalid( + () => instantiate(`(module (func $$type-arg-void-vs-num-nested (result i32) + (block (result i32) (i32.const 0) (block (br_if 1 (i32.const 1)))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:598 +assert_invalid( + () => instantiate(`(module (func $$type-arg-cond-num-vs-i32 (result i32) + (block (result i32) (br_if 0 (i32.const 0) (i64.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:605 +assert_invalid( + () => instantiate(`(module + (func $$type-1st-cond-empty-in-then + (block + (i32.const 0) (i32.const 0) + (if (result i32) (then (br_if 0))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:617 +assert_invalid( + () => instantiate(`(module + (func $$type-2nd-cond-empty-in-then + (block + (i32.const 0) (i32.const 0) + (if (result i32) (then (br_if 0 (i32.const 1)))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:629 +assert_invalid( + () => instantiate(`(module + (func $$type-1st-cond-empty-in-return + (block (result i32) + (return (br_if 0)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:640 +assert_invalid( + () => instantiate(`(module + (func $$type-2nd-cond-empty-in-return + (block (result i32) + (return (br_if 0 (i32.const 1))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:653 +assert_invalid( + () => instantiate(`(module (func $$unbound-label (br_if 1 (i32.const 1))))`), + `unknown label`, +); + +// ./test/core/br_if.wast:657 +assert_invalid( + () => instantiate(`(module (func $$unbound-nested-label (block (block (br_if 5 (i32.const 1))))))`), + `unknown label`, +); + +// ./test/core/br_if.wast:661 +assert_invalid( + () => instantiate(`(module (func $$large-label (br_if 0x10000001 (i32.const 1))))`), + `unknown label`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/br_on_cast.wast.js b/js/src/jit-test/tests/wasm/spec/gc/br_on_cast.wast.js new file mode 100644 index 0000000000..23ea05818a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/br_on_cast.wast.js @@ -0,0 +1,337 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/br_on_cast.wast + +// ./test/core/gc/br_on_cast.wast:3 +let $0 = instantiate(`(module + (type $$ft (func (result i32))) + (type $$st (struct (field i16))) + (type $$at (array i8)) + + (table 10 anyref) + + (elem declare func $$f) + (func $$f (result i32) (i32.const 9)) + + (func (export "init") (param $$x externref) + (table.set (i32.const 0) (ref.null any)) + (table.set (i32.const 1) (ref.i31 (i32.const 7))) + (table.set (i32.const 2) (struct.new $$st (i32.const 6))) + (table.set (i32.const 3) (array.new $$at (i32.const 5) (i32.const 3))) + (table.set (i32.const 4) (any.convert_extern (local.get $$x))) + ) + + (func (export "br_on_null") (param $$i i32) (result i32) + (block $$l + (br_on_null $$l (table.get (local.get $$i))) + (return (i32.const -1)) + ) + (i32.const 0) + ) + (func (export "br_on_i31") (param $$i i32) (result i32) + (block $$l (result (ref i31)) + (br_on_cast $$l anyref (ref i31) (table.get (local.get $$i))) + (return (i32.const -1)) + ) + (i31.get_u) + ) + (func (export "br_on_struct") (param $$i i32) (result i32) + (block $$l (result (ref struct)) + (br_on_cast $$l anyref (ref struct) (table.get (local.get $$i))) + (return (i32.const -1)) + ) + (block $$l2 (param structref) (result (ref $$st)) + (block $$l3 (param structref) (result (ref $$at)) + (br_on_cast $$l2 structref (ref $$st)) + (br_on_cast $$l3 anyref (ref $$at)) + (return (i32.const -2)) + ) + (return (array.get_u $$at (i32.const 0))) + ) + (struct.get_s $$st 0) + ) + (func (export "br_on_array") (param $$i i32) (result i32) + (block $$l (result (ref array)) + (br_on_cast $$l anyref (ref array) (table.get (local.get $$i))) + (return (i32.const -1)) + ) + (array.len) + ) + + (func (export "null-diff") (param $$i i32) (result i32) + (block $$l (result (ref null struct)) + (block (result (ref any)) + (br_on_cast $$l (ref null any) (ref null struct) (table.get (local.get $$i))) + ) + (return (i32.const 0)) + ) + (return (i32.const 1)) + ) +)`); + +// ./test/core/gc/br_on_cast.wast:69 +invoke($0, `init`, [externref(0)]); + +// ./test/core/gc/br_on_cast.wast:71 +assert_return(() => invoke($0, `br_on_null`, [0]), [value("i32", 0)]); + +// ./test/core/gc/br_on_cast.wast:72 +assert_return(() => invoke($0, `br_on_null`, [1]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:73 +assert_return(() => invoke($0, `br_on_null`, [2]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:74 +assert_return(() => invoke($0, `br_on_null`, [3]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:75 +assert_return(() => invoke($0, `br_on_null`, [4]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:77 +assert_return(() => invoke($0, `br_on_i31`, [0]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:78 +assert_return(() => invoke($0, `br_on_i31`, [1]), [value("i32", 7)]); + +// ./test/core/gc/br_on_cast.wast:79 +assert_return(() => invoke($0, `br_on_i31`, [2]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:80 +assert_return(() => invoke($0, `br_on_i31`, [3]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:81 +assert_return(() => invoke($0, `br_on_i31`, [4]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:83 +assert_return(() => invoke($0, `br_on_struct`, [0]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:84 +assert_return(() => invoke($0, `br_on_struct`, [1]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:85 +assert_return(() => invoke($0, `br_on_struct`, [2]), [value("i32", 6)]); + +// ./test/core/gc/br_on_cast.wast:86 +assert_return(() => invoke($0, `br_on_struct`, [3]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:87 +assert_return(() => invoke($0, `br_on_struct`, [4]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:89 +assert_return(() => invoke($0, `br_on_array`, [0]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:90 +assert_return(() => invoke($0, `br_on_array`, [1]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:91 +assert_return(() => invoke($0, `br_on_array`, [2]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:92 +assert_return(() => invoke($0, `br_on_array`, [3]), [value("i32", 3)]); + +// ./test/core/gc/br_on_cast.wast:93 +assert_return(() => invoke($0, `br_on_array`, [4]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast.wast:95 +assert_return(() => invoke($0, `null-diff`, [0]), [value("i32", 1)]); + +// ./test/core/gc/br_on_cast.wast:96 +assert_return(() => invoke($0, `null-diff`, [1]), [value("i32", 0)]); + +// ./test/core/gc/br_on_cast.wast:97 +assert_return(() => invoke($0, `null-diff`, [2]), [value("i32", 1)]); + +// ./test/core/gc/br_on_cast.wast:98 +assert_return(() => invoke($0, `null-diff`, [3]), [value("i32", 0)]); + +// ./test/core/gc/br_on_cast.wast:99 +assert_return(() => invoke($0, `null-diff`, [4]), [value("i32", 0)]); + +// ./test/core/gc/br_on_cast.wast:104 +let $1 = instantiate(`(module + (type $$t0 (sub (struct))) + (type $$t1 (sub $$t0 (struct (field i32)))) + (type $$t1' (sub $$t0 (struct (field i32)))) + (type $$t2 (sub $$t1 (struct (field i32 i32)))) + (type $$t2' (sub $$t1' (struct (field i32 i32)))) + (type $$t3 (sub $$t0 (struct (field i32 i32)))) + (type $$t0' (sub $$t0 (struct))) + (type $$t4 (sub $$t0' (struct (field i32 i32)))) + + (table 20 structref) + + (func $$init + (table.set (i32.const 0) (struct.new_default $$t0)) + (table.set (i32.const 10) (struct.new_default $$t0')) + (table.set (i32.const 1) (struct.new_default $$t1)) + (table.set (i32.const 11) (struct.new_default $$t1')) + (table.set (i32.const 2) (struct.new_default $$t2)) + (table.set (i32.const 12) (struct.new_default $$t2')) + (table.set (i32.const 3) (struct.new_default $$t3)) + (table.set (i32.const 4) (struct.new_default $$t4)) + ) + + (func (export "test-sub") + (call $$init) + (block $$l (result structref) + ;; must succeed + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (ref.null struct)))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (table.get (i32.const 0))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (table.get (i32.const 1))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (table.get (i32.const 2))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (table.get (i32.const 3))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (table.get (i32.const 4))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t1) (ref.null struct)))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t1) (table.get (i32.const 1))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t1) (table.get (i32.const 2))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t2) (ref.null struct)))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t2) (table.get (i32.const 2))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t3) (ref.null struct)))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t3) (table.get (i32.const 3))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t4) (ref.null struct)))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t4) (table.get (i32.const 4))))) + + ;; must not succeed + (br_on_cast $$l anyref (ref $$t1) (table.get (i32.const 0))) + (br_on_cast $$l anyref (ref $$t1) (table.get (i32.const 3))) + (br_on_cast $$l anyref (ref $$t1) (table.get (i32.const 4))) + + (br_on_cast $$l anyref (ref $$t2) (table.get (i32.const 0))) + (br_on_cast $$l anyref (ref $$t2) (table.get (i32.const 1))) + (br_on_cast $$l anyref (ref $$t2) (table.get (i32.const 3))) + (br_on_cast $$l anyref (ref $$t2) (table.get (i32.const 4))) + + (br_on_cast $$l anyref (ref $$t3) (table.get (i32.const 0))) + (br_on_cast $$l anyref (ref $$t3) (table.get (i32.const 1))) + (br_on_cast $$l anyref (ref $$t3) (table.get (i32.const 2))) + (br_on_cast $$l anyref (ref $$t3) (table.get (i32.const 4))) + + (br_on_cast $$l anyref (ref $$t4) (table.get (i32.const 0))) + (br_on_cast $$l anyref (ref $$t4) (table.get (i32.const 1))) + (br_on_cast $$l anyref (ref $$t4) (table.get (i32.const 2))) + (br_on_cast $$l anyref (ref $$t4) (table.get (i32.const 3))) + + (return) + ) + (unreachable) + ) + + (func (export "test-canon") + (call $$init) + (block $$l + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0') (table.get (i32.const 0))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0') (table.get (i32.const 1))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0') (table.get (i32.const 2))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0') (table.get (i32.const 3))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0') (table.get (i32.const 4))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (table.get (i32.const 10))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (table.get (i32.const 11))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t0) (table.get (i32.const 12))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t1') (table.get (i32.const 1))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t1') (table.get (i32.const 2))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t1) (table.get (i32.const 11))))) + (drop (block (result structref) (br_on_cast 0 structref (ref $$t1) (table.get (i32.const 12))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t2') (table.get (i32.const 2))))) + + (drop (block (result structref) (br_on_cast 0 structref (ref $$t2) (table.get (i32.const 12))))) + + (return) + ) + (unreachable) + ) +)`); + +// ./test/core/gc/br_on_cast.wast:205 +invoke($1, `test-sub`, []); + +// ./test/core/gc/br_on_cast.wast:206 +invoke($1, `test-canon`, []); + +// ./test/core/gc/br_on_cast.wast:211 +let $2 = instantiate(`(module + (type $$t (struct)) + + (func (param (ref any)) (result (ref $$t)) + (block (result (ref any)) (br_on_cast 1 (ref any) (ref $$t) (local.get 0))) (unreachable) + ) + (func (param (ref null any)) (result (ref $$t)) + (block (result (ref null any)) (br_on_cast 1 (ref null any) (ref $$t) (local.get 0))) (unreachable) + ) + (func (param (ref null any)) (result (ref null $$t)) + (block (result (ref null any)) (br_on_cast 1 (ref null any) (ref null $$t) (local.get 0))) (unreachable) + ) +)`); + +// ./test/core/gc/br_on_cast.wast:225 +assert_invalid( + () => instantiate(`(module + (type $$t (struct)) + (func (param (ref any)) (result (ref $$t)) + (block (result (ref any)) (br_on_cast 1 (ref null any) (ref null $$t) (local.get 0))) (unreachable) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/br_on_cast.wast:234 +assert_invalid( + () => instantiate(`(module + (type $$t (struct)) + (func (param (ref any)) (result (ref null $$t)) + (block (result (ref any)) (br_on_cast 1 (ref any) (ref null $$t) (local.get 0))) (unreachable) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/br_on_cast.wast:243 +assert_invalid( + () => instantiate(`(module + (type $$t (struct)) + (func (param (ref null any)) (result (ref $$t)) + (block (result (ref any)) (br_on_cast 1 (ref null any) (ref $$t) (local.get 0))) (unreachable) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/br_on_cast.wast:252 +assert_invalid( + () => instantiate(`(module + (func (result anyref) + (br_on_cast 0 eqref anyref (unreachable)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/br_on_cast.wast:260 +assert_invalid( + () => instantiate(`(module + (func (result anyref) + (br_on_cast 0 structref arrayref (unreachable)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/br_on_cast_fail.wast.js b/js/src/jit-test/tests/wasm/spec/gc/br_on_cast_fail.wast.js new file mode 100644 index 0000000000..4d402f2803 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/br_on_cast_fail.wast.js @@ -0,0 +1,352 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/br_on_cast_fail.wast + +// ./test/core/gc/br_on_cast_fail.wast:3 +let $0 = instantiate(`(module + (type $$ft (func (result i32))) + (type $$st (struct (field i16))) + (type $$at (array i8)) + + (table 10 anyref) + + (elem declare func $$f) + (func $$f (result i32) (i32.const 9)) + + (func (export "init") (param $$x externref) + (table.set (i32.const 0) (ref.null any)) + (table.set (i32.const 1) (ref.i31 (i32.const 7))) + (table.set (i32.const 2) (struct.new $$st (i32.const 6))) + (table.set (i32.const 3) (array.new $$at (i32.const 5) (i32.const 3))) + (table.set (i32.const 4) (any.convert_extern (local.get $$x))) + ) + + (func (export "br_on_non_null") (param $$i i32) (result i32) + (block $$l (result (ref any)) + (br_on_non_null $$l (table.get (local.get $$i))) + (return (i32.const 0)) + ) + (return (i32.const -1)) + ) + (func (export "br_on_non_i31") (param $$i i32) (result i32) + (block $$l (result anyref) + (br_on_cast_fail $$l anyref (ref i31) (table.get (local.get $$i))) + (return (i31.get_u)) + ) + (return (i32.const -1)) + ) + (func (export "br_on_non_struct") (param $$i i32) (result i32) + (block $$l (result anyref) + (br_on_cast_fail $$l anyref (ref struct) (table.get (local.get $$i))) + (block $$l2 (param structref) (result (ref $$st)) + (block $$l3 (param structref) (result (ref $$at)) + (br_on_cast $$l2 structref (ref $$st)) + (br_on_cast $$l3 anyref (ref $$at)) + (return (i32.const -2)) + ) + (return (array.get_u $$at (i32.const 0))) + ) + (return (struct.get_s $$st 0)) + ) + (return (i32.const -1)) + ) + (func (export "br_on_non_array") (param $$i i32) (result i32) + (block $$l (result anyref) + (br_on_cast_fail $$l anyref (ref array) (table.get (local.get $$i))) + (return (array.len)) + ) + (return (i32.const -1)) + ) + + (func (export "null-diff") (param $$i i32) (result i32) + (block $$l (result (ref any)) + (block (result (ref null struct)) + (br_on_cast_fail $$l (ref null any) (ref null struct) (table.get (local.get $$i))) + ) + (return (i32.const 1)) + ) + (return (i32.const 0)) + ) +)`); + +// ./test/core/gc/br_on_cast_fail.wast:69 +invoke($0, `init`, [externref(0)]); + +// ./test/core/gc/br_on_cast_fail.wast:71 +assert_return(() => invoke($0, `br_on_non_null`, [0]), [value("i32", 0)]); + +// ./test/core/gc/br_on_cast_fail.wast:72 +assert_return(() => invoke($0, `br_on_non_null`, [1]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:73 +assert_return(() => invoke($0, `br_on_non_null`, [2]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:74 +assert_return(() => invoke($0, `br_on_non_null`, [3]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:75 +assert_return(() => invoke($0, `br_on_non_null`, [4]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:77 +assert_return(() => invoke($0, `br_on_non_i31`, [0]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:78 +assert_return(() => invoke($0, `br_on_non_i31`, [1]), [value("i32", 7)]); + +// ./test/core/gc/br_on_cast_fail.wast:79 +assert_return(() => invoke($0, `br_on_non_i31`, [2]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:80 +assert_return(() => invoke($0, `br_on_non_i31`, [3]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:81 +assert_return(() => invoke($0, `br_on_non_i31`, [4]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:83 +assert_return(() => invoke($0, `br_on_non_struct`, [0]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:84 +assert_return(() => invoke($0, `br_on_non_struct`, [1]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:85 +assert_return(() => invoke($0, `br_on_non_struct`, [2]), [value("i32", 6)]); + +// ./test/core/gc/br_on_cast_fail.wast:86 +assert_return(() => invoke($0, `br_on_non_struct`, [3]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:87 +assert_return(() => invoke($0, `br_on_non_struct`, [4]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:89 +assert_return(() => invoke($0, `br_on_non_array`, [0]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:90 +assert_return(() => invoke($0, `br_on_non_array`, [1]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:91 +assert_return(() => invoke($0, `br_on_non_array`, [2]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:92 +assert_return(() => invoke($0, `br_on_non_array`, [3]), [value("i32", 3)]); + +// ./test/core/gc/br_on_cast_fail.wast:93 +assert_return(() => invoke($0, `br_on_non_array`, [4]), [value("i32", -1)]); + +// ./test/core/gc/br_on_cast_fail.wast:95 +assert_return(() => invoke($0, `null-diff`, [0]), [value("i32", 1)]); + +// ./test/core/gc/br_on_cast_fail.wast:96 +assert_return(() => invoke($0, `null-diff`, [1]), [value("i32", 0)]); + +// ./test/core/gc/br_on_cast_fail.wast:97 +assert_return(() => invoke($0, `null-diff`, [2]), [value("i32", 1)]); + +// ./test/core/gc/br_on_cast_fail.wast:98 +assert_return(() => invoke($0, `null-diff`, [3]), [value("i32", 0)]); + +// ./test/core/gc/br_on_cast_fail.wast:99 +assert_return(() => invoke($0, `null-diff`, [4]), [value("i32", 0)]); + +// ./test/core/gc/br_on_cast_fail.wast:104 +let $1 = instantiate(`(module + (type $$t0 (sub (struct))) + (type $$t1 (sub $$t0 (struct (field i32)))) + (type $$t1' (sub $$t0 (struct (field i32)))) + (type $$t2 (sub $$t1 (struct (field i32 i32)))) + (type $$t2' (sub $$t1' (struct (field i32 i32)))) + (type $$t3 (sub $$t0 (struct (field i32 i32)))) + (type $$t0' (sub $$t0 (struct))) + (type $$t4 (sub $$t0' (struct (field i32 i32)))) + + (table 20 structref) + + (func $$init + (table.set (i32.const 0) (struct.new_default $$t0)) + (table.set (i32.const 10) (struct.new_default $$t0)) + (table.set (i32.const 1) (struct.new_default $$t1)) + (table.set (i32.const 11) (struct.new_default $$t1')) + (table.set (i32.const 2) (struct.new_default $$t2)) + (table.set (i32.const 12) (struct.new_default $$t2')) + (table.set (i32.const 3) (struct.new_default $$t3 )) + (table.set (i32.const 4) (struct.new_default $$t4)) + ) + + (func (export "test-sub") + (call $$init) + (block $$l (result structref) + ;; must not succeed + (br_on_cast_fail $$l structref (ref null $$t0) (ref.null struct)) + (br_on_cast_fail $$l structref (ref null $$t0) (table.get (i32.const 0))) + (br_on_cast_fail $$l structref (ref null $$t0) (table.get (i32.const 1))) + (br_on_cast_fail $$l structref (ref null $$t0) (table.get (i32.const 2))) + (br_on_cast_fail $$l structref (ref null $$t0) (table.get (i32.const 3))) + (br_on_cast_fail $$l structref (ref null $$t0) (table.get (i32.const 4))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 0))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 1))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 2))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 3))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 4))) + + (br_on_cast_fail $$l structref (ref null $$t1) (ref.null struct)) + (br_on_cast_fail $$l structref (ref null $$t1) (table.get (i32.const 1))) + (br_on_cast_fail $$l structref (ref null $$t1) (table.get (i32.const 2))) + (br_on_cast_fail $$l structref (ref $$t1) (table.get (i32.const 1))) + (br_on_cast_fail $$l structref (ref $$t1) (table.get (i32.const 2))) + + (br_on_cast_fail $$l structref (ref null $$t2) (ref.null struct)) + (br_on_cast_fail $$l structref (ref null $$t2) (table.get (i32.const 2))) + (br_on_cast_fail $$l structref (ref $$t2) (table.get (i32.const 2))) + + (br_on_cast_fail $$l structref (ref null $$t3) (ref.null struct)) + (br_on_cast_fail $$l structref (ref null $$t3) (table.get (i32.const 3))) + (br_on_cast_fail $$l structref (ref $$t3) (table.get (i32.const 3))) + + (br_on_cast_fail $$l structref (ref null $$t4) (ref.null struct)) + (br_on_cast_fail $$l structref (ref null $$t4) (table.get (i32.const 4))) + (br_on_cast_fail $$l structref (ref $$t4) (table.get (i32.const 4))) + + ;; must succeed + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t0) (ref.null struct)))) + + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t1) (ref.null struct)))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t1) (table.get (i32.const 0))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t1) (table.get (i32.const 3))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t1) (table.get (i32.const 4))))) + + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t2) (ref.null struct)))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t2) (table.get (i32.const 0))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t2) (table.get (i32.const 1))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t2) (table.get (i32.const 3))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t2) (table.get (i32.const 4))))) + + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t3) (ref.null struct)))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t3) (table.get (i32.const 0))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t3) (table.get (i32.const 1))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t3) (table.get (i32.const 2))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t3) (table.get (i32.const 4))))) + + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t4) (ref.null struct)))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t4) (table.get (i32.const 0))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t4) (table.get (i32.const 1))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t4) (table.get (i32.const 2))))) + (drop (block (result structref) (br_on_cast_fail 0 structref (ref $$t4) (table.get (i32.const 3))))) + + (return) + ) + (unreachable) + ) + + (func (export "test-canon") + (call $$init) + (block $$l (result structref) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 0))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 1))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 2))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 3))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 4))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 10))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 11))) + (br_on_cast_fail $$l structref (ref $$t0) (table.get (i32.const 12))) + + (br_on_cast_fail $$l structref (ref $$t1') (table.get (i32.const 1))) + (br_on_cast_fail $$l structref (ref $$t1') (table.get (i32.const 2))) + + (br_on_cast_fail $$l structref (ref $$t1) (table.get (i32.const 11))) + (br_on_cast_fail $$l structref (ref $$t1) (table.get (i32.const 12))) + + (br_on_cast_fail $$l structref (ref $$t2') (table.get (i32.const 2))) + + (br_on_cast_fail $$l structref (ref $$t2) (table.get (i32.const 12))) + + (return) + ) + (unreachable) + ) +)`); + +// ./test/core/gc/br_on_cast_fail.wast:220 +invoke($1, `test-sub`, []); + +// ./test/core/gc/br_on_cast_fail.wast:221 +invoke($1, `test-canon`, []); + +// ./test/core/gc/br_on_cast_fail.wast:226 +let $2 = instantiate(`(module + (type $$t (struct)) + + (func (param (ref any)) (result (ref any)) + (block (result (ref $$t)) (br_on_cast_fail 1 (ref any) (ref $$t) (local.get 0))) + ) + (func (param (ref null any)) (result (ref null any)) + (block (result (ref $$t)) (br_on_cast_fail 1 (ref null any) (ref $$t) (local.get 0))) + ) + (func (param (ref null any)) (result (ref null any)) + (block (result (ref null $$t)) (br_on_cast_fail 1 (ref null any) (ref null $$t) (local.get 0))) + ) +)`); + +// ./test/core/gc/br_on_cast_fail.wast:240 +assert_invalid( + () => instantiate(`(module + (type $$t (struct)) + (func (param (ref any)) (result (ref any)) + (block (result (ref $$t)) (br_on_cast_fail 1 (ref null any) (ref null $$t) (local.get 0))) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/br_on_cast_fail.wast:249 +assert_invalid( + () => instantiate(`(module + (type $$t (struct)) + (func (param (ref any)) (result (ref any)) + (block (result (ref null $$t)) (br_on_cast_fail 1 (ref any) (ref null $$t) (local.get 0))) (ref.as_non_null) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/br_on_cast_fail.wast:258 +assert_invalid( + () => instantiate(`(module + (type $$t (struct)) + (func (param (ref null any)) (result (ref any)) + (block (result (ref $$t)) (br_on_cast_fail 1 (ref null any) (ref $$t) (local.get 0))) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/br_on_cast_fail.wast:267 +assert_invalid( + () => instantiate(`(module + (func (result anyref) + (br_on_cast_fail 0 eqref anyref (unreachable)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/br_on_cast_fail.wast:275 +assert_invalid( + () => instantiate(`(module + (func (result anyref) + (br_on_cast_fail 0 structref arrayref (unreachable)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/comments.wast.js b/js/src/jit-test/tests/wasm/spec/gc/comments.wast.js new file mode 100644 index 0000000000..32a78a1e3c --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/comments.wast.js @@ -0,0 +1,51 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/comments.wast + +// ./test/core/comments.wast:10:0 +let $0 = instantiate(`(module;;comment +)`); + +// ./test/core/comments.wast:57:11 +let $1 = instantiate(`(module(;comment;) +(;comment;))`); + +// ./test/core/comments.wast:67 +let $2 = instantiate(`(module + (;comment(;nested(;further;)nested;)comment;) +)`); + +// ./test/core/comments.wast:76 +let $3 = instantiate(`(module + (;comment;;comment(;nested;)comment;) +)`); + +// ./test/core/comments.wast:83:8 +let $4 = instantiate(`(func (export "f1") (result i32) (i32.const 1) ;; comment + (return (i32.const 2)) + ) (func (export "f2") (result i32) (i32.const 1) ;; comment (return (i32.const 2)) + ) (func (export "f3") (result i32) (i32.const 1) ;; comment + (return (i32.const 2)) + ) `); + +// ./test/core/comments.wast:104 +assert_return(() => invoke($4, `f1`, []), [value("i32", 2)]); + +// ./test/core/comments.wast:105 +assert_return(() => invoke($4, `f2`, []), [value("i32", 2)]); + +// ./test/core/comments.wast:106 +assert_return(() => invoke($4, `f3`, []), [value("i32", 2)]); diff --git a/js/src/jit-test/tests/wasm/spec/gc/directives.txt b/js/src/jit-test/tests/wasm/spec/gc/directives.txt new file mode 100644 index 0000000000..c071d8b980 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; --wasm-gc; skip-if: !wasmGcEnabled() \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/gc/extern.wast.js b/js/src/jit-test/tests/wasm/spec/gc/extern.wast.js new file mode 100644 index 0000000000..d292e157da --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/extern.wast.js @@ -0,0 +1,101 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/extern.wast + +// ./test/core/gc/extern.wast:1 +let $0 = instantiate(`(module + (type $$ft (func)) + (type $$st (struct)) + (type $$at (array i8)) + + (table 10 anyref) + + (elem declare func $$f) + (func $$f) + + (func (export "init") (param $$x externref) + (table.set (i32.const 0) (ref.null any)) + (table.set (i32.const 1) (ref.i31 (i32.const 7))) + (table.set (i32.const 2) (struct.new_default $$st)) + (table.set (i32.const 3) (array.new_default $$at (i32.const 0))) + (table.set (i32.const 4) (any.convert_extern (local.get $$x))) + ) + + (func (export "internalize") (param externref) (result anyref) + (any.convert_extern (local.get 0)) + ) + (func (export "externalize") (param anyref) (result externref) + (extern.convert_any (local.get 0)) + ) + + (func (export "externalize-i") (param i32) (result externref) + (extern.convert_any (table.get (local.get 0))) + ) + (func (export "externalize-ii") (param i32) (result anyref) + (any.convert_extern (extern.convert_any (table.get (local.get 0)))) + ) +)`); + +// ./test/core/gc/extern.wast:34 +invoke($0, `init`, [externref(0)]); + +// ./test/core/gc/extern.wast:36 +assert_return(() => invoke($0, `internalize`, [externref(1)]), [new HostRefResult(1)]); + +// ./test/core/gc/extern.wast:37 +assert_return(() => invoke($0, `internalize`, [null]), [value('anyref', null)]); + +// ./test/core/gc/extern.wast:39 +assert_return(() => invoke($0, `externalize`, [hostref(2)]), [new ExternRefResult(2)]); + +// ./test/core/gc/extern.wast:40 +assert_return(() => invoke($0, `externalize`, [null]), [value('externref', null)]); + +// ./test/core/gc/extern.wast:42 +assert_return(() => invoke($0, `externalize-i`, [0]), [value('externref', null)]); + +// ./test/core/gc/extern.wast:43 +assert_return(() => invoke($0, `externalize-i`, [1]), [new RefWithType('externref')]); + +// ./test/core/gc/extern.wast:44 +assert_return(() => invoke($0, `externalize-i`, [2]), [new RefWithType('externref')]); + +// ./test/core/gc/extern.wast:45 +assert_return(() => invoke($0, `externalize-i`, [3]), [new RefWithType('externref')]); + +// ./test/core/gc/extern.wast:46 +assert_return(() => invoke($0, `externalize-i`, [4]), [new RefWithType('externref')]); + +// ./test/core/gc/extern.wast:47 +assert_return(() => invoke($0, `externalize-i`, [5]), [value('externref', null)]); + +// ./test/core/gc/extern.wast:49 +assert_return(() => invoke($0, `externalize-ii`, [0]), [value('anyref', null)]); + +// ./test/core/gc/extern.wast:50 +assert_return(() => invoke($0, `externalize-ii`, [1]), [new RefWithType('i31ref')]); + +// ./test/core/gc/extern.wast:51 +assert_return(() => invoke($0, `externalize-ii`, [2]), [new RefWithType('structref')]); + +// ./test/core/gc/extern.wast:52 +assert_return(() => invoke($0, `externalize-ii`, [3]), [new RefWithType('arrayref')]); + +// ./test/core/gc/extern.wast:53 +assert_return(() => invoke($0, `externalize-ii`, [4]), [new HostRefResult(0)]); + +// ./test/core/gc/extern.wast:54 +assert_return(() => invoke($0, `externalize-ii`, [5]), [value('anyref', null)]); diff --git a/js/src/jit-test/tests/wasm/spec/gc/float_literals.wast.js b/js/src/jit-test/tests/wasm/spec/gc/float_literals.wast.js new file mode 100644 index 0000000000..c352ebec75 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/float_literals.wast.js @@ -0,0 +1,776 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/float_literals.wast + +// ./test/core/float_literals.wast:3 +let $0 = instantiate(`(module + ;; f32 special values + (func (export "f32.nan") (result i32) (i32.reinterpret_f32 (f32.const nan))) + (func (export "f32.positive_nan") (result i32) (i32.reinterpret_f32 (f32.const +nan))) + (func (export "f32.negative_nan") (result i32) (i32.reinterpret_f32 (f32.const -nan))) + (func (export "f32.plain_nan") (result i32) (i32.reinterpret_f32 (f32.const nan:0x400000))) + (func (export "f32.informally_known_as_plain_snan") (result i32) (i32.reinterpret_f32 (f32.const nan:0x200000))) + (func (export "f32.all_ones_nan") (result i32) (i32.reinterpret_f32 (f32.const -nan:0x7fffff))) + (func (export "f32.misc_nan") (result i32) (i32.reinterpret_f32 (f32.const nan:0x012345))) + (func (export "f32.misc_positive_nan") (result i32) (i32.reinterpret_f32 (f32.const +nan:0x304050))) + (func (export "f32.misc_negative_nan") (result i32) (i32.reinterpret_f32 (f32.const -nan:0x2abcde))) + (func (export "f32.infinity") (result i32) (i32.reinterpret_f32 (f32.const inf))) + (func (export "f32.positive_infinity") (result i32) (i32.reinterpret_f32 (f32.const +inf))) + (func (export "f32.negative_infinity") (result i32) (i32.reinterpret_f32 (f32.const -inf))) + + ;; f32 numbers + (func (export "f32.zero") (result i32) (i32.reinterpret_f32 (f32.const 0x0.0p0))) + (func (export "f32.positive_zero") (result i32) (i32.reinterpret_f32 (f32.const +0x0.0p0))) + (func (export "f32.negative_zero") (result i32) (i32.reinterpret_f32 (f32.const -0x0.0p0))) + (func (export "f32.misc") (result i32) (i32.reinterpret_f32 (f32.const 0x1.921fb6p+2))) + (func (export "f32.min_positive") (result i32) (i32.reinterpret_f32 (f32.const 0x1p-149))) + (func (export "f32.min_normal") (result i32) (i32.reinterpret_f32 (f32.const 0x1p-126))) + (func (export "f32.max_finite") (result i32) (i32.reinterpret_f32 (f32.const 0x1.fffffep+127))) + (func (export "f32.max_subnormal") (result i32) (i32.reinterpret_f32 (f32.const 0x1.fffffcp-127))) + (func (export "f32.trailing_dot") (result i32) (i32.reinterpret_f32 (f32.const 0x1.p10))) + + ;; f32 in decimal format + (func (export "f32_dec.zero") (result i32) (i32.reinterpret_f32 (f32.const 0.0e0))) + (func (export "f32_dec.positive_zero") (result i32) (i32.reinterpret_f32 (f32.const +0.0e0))) + (func (export "f32_dec.negative_zero") (result i32) (i32.reinterpret_f32 (f32.const -0.0e0))) + (func (export "f32_dec.misc") (result i32) (i32.reinterpret_f32 (f32.const 6.28318548202514648))) + (func (export "f32_dec.min_positive") (result i32) (i32.reinterpret_f32 (f32.const 1.4013e-45))) + (func (export "f32_dec.min_normal") (result i32) (i32.reinterpret_f32 (f32.const 1.1754944e-38))) + (func (export "f32_dec.max_subnormal") (result i32) (i32.reinterpret_f32 (f32.const 1.1754942e-38))) + (func (export "f32_dec.max_finite") (result i32) (i32.reinterpret_f32 (f32.const 3.4028234e+38))) + (func (export "f32_dec.trailing_dot") (result i32) (i32.reinterpret_f32 (f32.const 1.e10))) + + ;; https://twitter.com/Archivd/status/994637336506912768 + (func (export "f32_dec.root_beer_float") (result i32) (i32.reinterpret_f32 (f32.const 1.000000119))) + + ;; f64 special values + (func (export "f64.nan") (result i64) (i64.reinterpret_f64 (f64.const nan))) + (func (export "f64.positive_nan") (result i64) (i64.reinterpret_f64 (f64.const +nan))) + (func (export "f64.negative_nan") (result i64) (i64.reinterpret_f64 (f64.const -nan))) + (func (export "f64.plain_nan") (result i64) (i64.reinterpret_f64 (f64.const nan:0x8000000000000))) + (func (export "f64.informally_known_as_plain_snan") (result i64) (i64.reinterpret_f64 (f64.const nan:0x4000000000000))) + (func (export "f64.all_ones_nan") (result i64) (i64.reinterpret_f64 (f64.const -nan:0xfffffffffffff))) + (func (export "f64.misc_nan") (result i64) (i64.reinterpret_f64 (f64.const nan:0x0123456789abc))) + (func (export "f64.misc_positive_nan") (result i64) (i64.reinterpret_f64 (f64.const +nan:0x3040506070809))) + (func (export "f64.misc_negative_nan") (result i64) (i64.reinterpret_f64 (f64.const -nan:0x2abcdef012345))) + (func (export "f64.infinity") (result i64) (i64.reinterpret_f64 (f64.const inf))) + (func (export "f64.positive_infinity") (result i64) (i64.reinterpret_f64 (f64.const +inf))) + (func (export "f64.negative_infinity") (result i64) (i64.reinterpret_f64 (f64.const -inf))) + + ;; f64 numbers + (func (export "f64.zero") (result i64) (i64.reinterpret_f64 (f64.const 0x0.0p0))) + (func (export "f64.positive_zero") (result i64) (i64.reinterpret_f64 (f64.const +0x0.0p0))) + (func (export "f64.negative_zero") (result i64) (i64.reinterpret_f64 (f64.const -0x0.0p0))) + (func (export "f64.misc") (result i64) (i64.reinterpret_f64 (f64.const 0x1.921fb54442d18p+2))) + (func (export "f64.min_positive") (result i64) (i64.reinterpret_f64 (f64.const 0x0.0000000000001p-1022))) + (func (export "f64.min_normal") (result i64) (i64.reinterpret_f64 (f64.const 0x1p-1022))) + (func (export "f64.max_subnormal") (result i64) (i64.reinterpret_f64 (f64.const 0x0.fffffffffffffp-1022))) + (func (export "f64.max_finite") (result i64) (i64.reinterpret_f64 (f64.const 0x1.fffffffffffffp+1023))) + (func (export "f64.trailing_dot") (result i64) (i64.reinterpret_f64 (f64.const 0x1.p100))) + + ;; f64 numbers in decimal format + (func (export "f64_dec.zero") (result i64) (i64.reinterpret_f64 (f64.const 0.0e0))) + (func (export "f64_dec.positive_zero") (result i64) (i64.reinterpret_f64 (f64.const +0.0e0))) + (func (export "f64_dec.negative_zero") (result i64) (i64.reinterpret_f64 (f64.const -0.0e0))) + (func (export "f64_dec.misc") (result i64) (i64.reinterpret_f64 (f64.const 6.28318530717958623))) + (func (export "f64_dec.min_positive") (result i64) (i64.reinterpret_f64 (f64.const 4.94066e-324))) + (func (export "f64_dec.min_normal") (result i64) (i64.reinterpret_f64 (f64.const 2.2250738585072012e-308))) + (func (export "f64_dec.max_subnormal") (result i64) (i64.reinterpret_f64 (f64.const 2.2250738585072011e-308))) + (func (export "f64_dec.max_finite") (result i64) (i64.reinterpret_f64 (f64.const 1.7976931348623157e+308))) + (func (export "f64_dec.trailing_dot") (result i64) (i64.reinterpret_f64 (f64.const 1.e100))) + + ;; https://twitter.com/Archivd/status/994637336506912768 + (func (export "f64_dec.root_beer_float") (result i64) (i64.reinterpret_f64 (f64.const 1.000000119))) + + (func (export "f32-dec-sep1") (result f32) (f32.const 1_000_000)) + (func (export "f32-dec-sep2") (result f32) (f32.const 1_0_0_0)) + (func (export "f32-dec-sep3") (result f32) (f32.const 100_3.141_592)) + (func (export "f32-dec-sep4") (result f32) (f32.const 99e+1_3)) + (func (export "f32-dec-sep5") (result f32) (f32.const 122_000.11_3_54E0_2_3)) + (func (export "f32-hex-sep1") (result f32) (f32.const 0xa_0f_00_99)) + (func (export "f32-hex-sep2") (result f32) (f32.const 0x1_a_A_0_f)) + (func (export "f32-hex-sep3") (result f32) (f32.const 0xa0_ff.f141_a59a)) + (func (export "f32-hex-sep4") (result f32) (f32.const 0xf0P+1_3)) + (func (export "f32-hex-sep5") (result f32) (f32.const 0x2a_f00a.1f_3_eep2_3)) + + (func (export "f64-dec-sep1") (result f64) (f64.const 1_000_000)) + (func (export "f64-dec-sep2") (result f64) (f64.const 1_0_0_0)) + (func (export "f64-dec-sep3") (result f64) (f64.const 100_3.141_592)) + (func (export "f64-dec-sep4") (result f64) (f64.const 99e-1_23)) + (func (export "f64-dec-sep5") (result f64) (f64.const 122_000.11_3_54e0_2_3)) + (func (export "f64-hex-sep1") (result f64) (f64.const 0xa_f00f_0000_9999)) + (func (export "f64-hex-sep2") (result f64) (f64.const 0x1_a_A_0_f)) + (func (export "f64-hex-sep3") (result f64) (f64.const 0xa0_ff.f141_a59a)) + (func (export "f64-hex-sep4") (result f64) (f64.const 0xf0P+1_3)) + (func (export "f64-hex-sep5") (result f64) (f64.const 0x2a_f00a.1f_3_eep2_3)) +)`); + +// ./test/core/float_literals.wast:105 +assert_return(() => invoke($0, `f32.nan`, []), [value("i32", 2143289344)]); + +// ./test/core/float_literals.wast:106 +assert_return(() => invoke($0, `f32.positive_nan`, []), [value("i32", 2143289344)]); + +// ./test/core/float_literals.wast:107 +assert_return(() => invoke($0, `f32.negative_nan`, []), [value("i32", -4194304)]); + +// ./test/core/float_literals.wast:108 +assert_return(() => invoke($0, `f32.plain_nan`, []), [value("i32", 2143289344)]); + +// ./test/core/float_literals.wast:109 +assert_return(() => invoke($0, `f32.informally_known_as_plain_snan`, []), [value("i32", 2141192192)]); + +// ./test/core/float_literals.wast:110 +assert_return(() => invoke($0, `f32.all_ones_nan`, []), [value("i32", -1)]); + +// ./test/core/float_literals.wast:111 +assert_return(() => invoke($0, `f32.misc_nan`, []), [value("i32", 2139169605)]); + +// ./test/core/float_literals.wast:112 +assert_return(() => invoke($0, `f32.misc_positive_nan`, []), [value("i32", 2142257232)]); + +// ./test/core/float_literals.wast:113 +assert_return(() => invoke($0, `f32.misc_negative_nan`, []), [value("i32", -5587746)]); + +// ./test/core/float_literals.wast:114 +assert_return(() => invoke($0, `f32.infinity`, []), [value("i32", 2139095040)]); + +// ./test/core/float_literals.wast:115 +assert_return(() => invoke($0, `f32.positive_infinity`, []), [value("i32", 2139095040)]); + +// ./test/core/float_literals.wast:116 +assert_return(() => invoke($0, `f32.negative_infinity`, []), [value("i32", -8388608)]); + +// ./test/core/float_literals.wast:117 +assert_return(() => invoke($0, `f32.zero`, []), [value("i32", 0)]); + +// ./test/core/float_literals.wast:118 +assert_return(() => invoke($0, `f32.positive_zero`, []), [value("i32", 0)]); + +// ./test/core/float_literals.wast:119 +assert_return(() => invoke($0, `f32.negative_zero`, []), [value("i32", -2147483648)]); + +// ./test/core/float_literals.wast:120 +assert_return(() => invoke($0, `f32.misc`, []), [value("i32", 1086918619)]); + +// ./test/core/float_literals.wast:121 +assert_return(() => invoke($0, `f32.min_positive`, []), [value("i32", 1)]); + +// ./test/core/float_literals.wast:122 +assert_return(() => invoke($0, `f32.min_normal`, []), [value("i32", 8388608)]); + +// ./test/core/float_literals.wast:123 +assert_return(() => invoke($0, `f32.max_subnormal`, []), [value("i32", 8388607)]); + +// ./test/core/float_literals.wast:124 +assert_return(() => invoke($0, `f32.max_finite`, []), [value("i32", 2139095039)]); + +// ./test/core/float_literals.wast:125 +assert_return(() => invoke($0, `f32.trailing_dot`, []), [value("i32", 1149239296)]); + +// ./test/core/float_literals.wast:126 +assert_return(() => invoke($0, `f32_dec.zero`, []), [value("i32", 0)]); + +// ./test/core/float_literals.wast:127 +assert_return(() => invoke($0, `f32_dec.positive_zero`, []), [value("i32", 0)]); + +// ./test/core/float_literals.wast:128 +assert_return(() => invoke($0, `f32_dec.negative_zero`, []), [value("i32", -2147483648)]); + +// ./test/core/float_literals.wast:129 +assert_return(() => invoke($0, `f32_dec.misc`, []), [value("i32", 1086918619)]); + +// ./test/core/float_literals.wast:130 +assert_return(() => invoke($0, `f32_dec.min_positive`, []), [value("i32", 1)]); + +// ./test/core/float_literals.wast:131 +assert_return(() => invoke($0, `f32_dec.min_normal`, []), [value("i32", 8388608)]); + +// ./test/core/float_literals.wast:132 +assert_return(() => invoke($0, `f32_dec.max_subnormal`, []), [value("i32", 8388607)]); + +// ./test/core/float_literals.wast:133 +assert_return(() => invoke($0, `f32_dec.max_finite`, []), [value("i32", 2139095039)]); + +// ./test/core/float_literals.wast:134 +assert_return(() => invoke($0, `f32_dec.trailing_dot`, []), [value("i32", 1343554297)]); + +// ./test/core/float_literals.wast:135 +assert_return(() => invoke($0, `f32_dec.root_beer_float`, []), [value("i32", 1065353217)]); + +// ./test/core/float_literals.wast:137 +assert_return(() => invoke($0, `f64.nan`, []), [value("i64", 9221120237041090560n)]); + +// ./test/core/float_literals.wast:138 +assert_return(() => invoke($0, `f64.positive_nan`, []), [value("i64", 9221120237041090560n)]); + +// ./test/core/float_literals.wast:139 +assert_return(() => invoke($0, `f64.negative_nan`, []), [value("i64", -2251799813685248n)]); + +// ./test/core/float_literals.wast:140 +assert_return(() => invoke($0, `f64.plain_nan`, []), [value("i64", 9221120237041090560n)]); + +// ./test/core/float_literals.wast:141 +assert_return( + () => invoke($0, `f64.informally_known_as_plain_snan`, []), + [value("i64", 9219994337134247936n)], +); + +// ./test/core/float_literals.wast:142 +assert_return(() => invoke($0, `f64.all_ones_nan`, []), [value("i64", -1n)]); + +// ./test/core/float_literals.wast:143 +assert_return(() => invoke($0, `f64.misc_nan`, []), [value("i64", 9218888453225749180n)]); + +// ./test/core/float_literals.wast:144 +assert_return(() => invoke($0, `f64.misc_positive_nan`, []), [value("i64", 9219717281780008969n)]); + +// ./test/core/float_literals.wast:145 +assert_return(() => invoke($0, `f64.misc_negative_nan`, []), [value("i64", -3751748707474619n)]); + +// ./test/core/float_literals.wast:146 +assert_return(() => invoke($0, `f64.infinity`, []), [value("i64", 9218868437227405312n)]); + +// ./test/core/float_literals.wast:147 +assert_return(() => invoke($0, `f64.positive_infinity`, []), [value("i64", 9218868437227405312n)]); + +// ./test/core/float_literals.wast:148 +assert_return(() => invoke($0, `f64.negative_infinity`, []), [value("i64", -4503599627370496n)]); + +// ./test/core/float_literals.wast:149 +assert_return(() => invoke($0, `f64.zero`, []), [value("i64", 0n)]); + +// ./test/core/float_literals.wast:150 +assert_return(() => invoke($0, `f64.positive_zero`, []), [value("i64", 0n)]); + +// ./test/core/float_literals.wast:151 +assert_return(() => invoke($0, `f64.negative_zero`, []), [value("i64", -9223372036854775808n)]); + +// ./test/core/float_literals.wast:152 +assert_return(() => invoke($0, `f64.misc`, []), [value("i64", 4618760256179416344n)]); + +// ./test/core/float_literals.wast:153 +assert_return(() => invoke($0, `f64.min_positive`, []), [value("i64", 1n)]); + +// ./test/core/float_literals.wast:154 +assert_return(() => invoke($0, `f64.min_normal`, []), [value("i64", 4503599627370496n)]); + +// ./test/core/float_literals.wast:155 +assert_return(() => invoke($0, `f64.max_subnormal`, []), [value("i64", 4503599627370495n)]); + +// ./test/core/float_literals.wast:156 +assert_return(() => invoke($0, `f64.max_finite`, []), [value("i64", 9218868437227405311n)]); + +// ./test/core/float_literals.wast:157 +assert_return(() => invoke($0, `f64.trailing_dot`, []), [value("i64", 5057542381537067008n)]); + +// ./test/core/float_literals.wast:158 +assert_return(() => invoke($0, `f64_dec.zero`, []), [value("i64", 0n)]); + +// ./test/core/float_literals.wast:159 +assert_return(() => invoke($0, `f64_dec.positive_zero`, []), [value("i64", 0n)]); + +// ./test/core/float_literals.wast:160 +assert_return(() => invoke($0, `f64_dec.negative_zero`, []), [value("i64", -9223372036854775808n)]); + +// ./test/core/float_literals.wast:161 +assert_return(() => invoke($0, `f64_dec.misc`, []), [value("i64", 4618760256179416344n)]); + +// ./test/core/float_literals.wast:162 +assert_return(() => invoke($0, `f64_dec.min_positive`, []), [value("i64", 1n)]); + +// ./test/core/float_literals.wast:163 +assert_return(() => invoke($0, `f64_dec.min_normal`, []), [value("i64", 4503599627370496n)]); + +// ./test/core/float_literals.wast:164 +assert_return(() => invoke($0, `f64_dec.max_subnormal`, []), [value("i64", 4503599627370495n)]); + +// ./test/core/float_literals.wast:165 +assert_return(() => invoke($0, `f64_dec.max_finite`, []), [value("i64", 9218868437227405311n)]); + +// ./test/core/float_literals.wast:166 +assert_return(() => invoke($0, `f64_dec.trailing_dot`, []), [value("i64", 6103021453049119613n)]); + +// ./test/core/float_literals.wast:167 +assert_return(() => invoke($0, `f64_dec.root_beer_float`, []), [value("i64", 4607182419335945764n)]); + +// ./test/core/float_literals.wast:169 +assert_return(() => invoke($0, `f32-dec-sep1`, []), [value("f32", 1000000)]); + +// ./test/core/float_literals.wast:170 +assert_return(() => invoke($0, `f32-dec-sep2`, []), [value("f32", 1000)]); + +// ./test/core/float_literals.wast:171 +assert_return(() => invoke($0, `f32-dec-sep3`, []), [value("f32", 1003.1416)]); + +// ./test/core/float_literals.wast:172 +assert_return(() => invoke($0, `f32-dec-sep4`, []), [value("f32", 990000000000000)]); + +// ./test/core/float_literals.wast:173 +assert_return(() => invoke($0, `f32-dec-sep5`, []), [value("f32", 12200012000000000000000000000)]); + +// ./test/core/float_literals.wast:174 +assert_return(() => invoke($0, `f32-hex-sep1`, []), [value("f32", 168755360)]); + +// ./test/core/float_literals.wast:175 +assert_return(() => invoke($0, `f32-hex-sep2`, []), [value("f32", 109071)]); + +// ./test/core/float_literals.wast:176 +assert_return(() => invoke($0, `f32-hex-sep3`, []), [value("f32", 41215.94)]); + +// ./test/core/float_literals.wast:177 +assert_return(() => invoke($0, `f32-hex-sep4`, []), [value("f32", 1966080)]); + +// ./test/core/float_literals.wast:178 +assert_return(() => invoke($0, `f32-hex-sep5`, []), [value("f32", 23605224000000)]); + +// ./test/core/float_literals.wast:180 +assert_return(() => invoke($0, `f64-dec-sep1`, []), [value("f64", 1000000)]); + +// ./test/core/float_literals.wast:181 +assert_return(() => invoke($0, `f64-dec-sep2`, []), [value("f64", 1000)]); + +// ./test/core/float_literals.wast:182 +assert_return(() => invoke($0, `f64-dec-sep3`, []), [value("f64", 1003.141592)]); + +// ./test/core/float_literals.wast:183 +assert_return( + () => invoke($0, `f64-dec-sep4`, []), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000099), + ], +); + +// ./test/core/float_literals.wast:184 +assert_return(() => invoke($0, `f64-dec-sep5`, []), [value("f64", 12200011354000000000000000000)]); + +// ./test/core/float_literals.wast:185 +assert_return(() => invoke($0, `f64-hex-sep1`, []), [value("f64", 3078696982321561)]); + +// ./test/core/float_literals.wast:186 +assert_return(() => invoke($0, `f64-hex-sep2`, []), [value("f64", 109071)]); + +// ./test/core/float_literals.wast:187 +assert_return(() => invoke($0, `f64-hex-sep3`, []), [value("f64", 41215.94240794191)]); + +// ./test/core/float_literals.wast:188 +assert_return(() => invoke($0, `f64-hex-sep4`, []), [value("f64", 1966080)]); + +// ./test/core/float_literals.wast:189 +assert_return(() => invoke($0, `f64-hex-sep5`, []), [value("f64", 23605225168752)]); + +// ./test/core/float_literals.wast:192 +let $1 = instantiate(`(module binary + ;; (func (export "4294967249") (result f64) (f64.const 4294967249)) + "\\00\\61\\73\\6d\\01\\00\\00\\00\\01\\85\\80\\80\\80\\00\\01\\60" + "\\00\\01\\7c\\03\\82\\80\\80\\80\\00\\01\\00\\07\\8e\\80\\80\\80" + "\\00\\01\\0a\\34\\32\\39\\34\\39\\36\\37\\32\\34\\39\\00\\00\\0a" + "\\91\\80\\80\\80\\00\\01\\8b\\80\\80\\80\\00\\00\\44\\00\\00\\20" + "\\fa\\ff\\ff\\ef\\41\\0b" +)`); + +// ./test/core/float_literals.wast:201 +assert_return(() => invoke($1, `4294967249`, []), [value("f64", 4294967249)]); + +// ./test/core/float_literals.wast:203 +assert_malformed(() => instantiate(`(global f32 (f32.const _100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:207 +assert_malformed(() => instantiate(`(global f32 (f32.const +_100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:211 +assert_malformed(() => instantiate(`(global f32 (f32.const -_100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:215 +assert_malformed(() => instantiate(`(global f32 (f32.const 99_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:219 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1__000)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:223 +assert_malformed(() => instantiate(`(global f32 (f32.const _1.0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:227 +assert_malformed(() => instantiate(`(global f32 (f32.const 1.0_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:231 +assert_malformed(() => instantiate(`(global f32 (f32.const 1_.0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:235 +assert_malformed(() => instantiate(`(global f32 (f32.const 1._0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:239 +assert_malformed(() => instantiate(`(global f32 (f32.const _1e1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:243 +assert_malformed(() => instantiate(`(global f32 (f32.const 1e1_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:247 +assert_malformed(() => instantiate(`(global f32 (f32.const 1_e1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:251 +assert_malformed(() => instantiate(`(global f32 (f32.const 1e_1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:255 +assert_malformed( + () => instantiate(`(global f32 (f32.const _1.0e1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:259 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0e1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:263 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0_e1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:267 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0e_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:271 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0e+_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:275 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0e_+1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:279 +assert_malformed( + () => instantiate(`(global f32 (f32.const _0x100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:283 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0_x100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:287 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x_100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:291 +assert_malformed(() => instantiate(`(global f32 (f32.const 0x00_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:295 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0xff__ffff)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:299 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x_1.0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:303 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:307 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1_.0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:311 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1._0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:315 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x_1p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:319 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1p1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:323 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1_p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:327 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1p_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:331 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x_1.0p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:335 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0p1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:339 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0_p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:343 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0p_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:347 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0p+_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:351 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0p_+1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:355 +assert_malformed( + () => instantiate(`(global f32 (f32.const nan:0x80_0000)) `), + `constant out of range`, +); + +// ./test/core/float_literals.wast:360 +assert_malformed(() => instantiate(`(global f64 (f64.const _100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:364 +assert_malformed(() => instantiate(`(global f64 (f64.const +_100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:368 +assert_malformed(() => instantiate(`(global f64 (f64.const -_100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:372 +assert_malformed(() => instantiate(`(global f64 (f64.const 99_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:376 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1__000)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:380 +assert_malformed(() => instantiate(`(global f64 (f64.const _1.0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:384 +assert_malformed(() => instantiate(`(global f64 (f64.const 1.0_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:388 +assert_malformed(() => instantiate(`(global f64 (f64.const 1_.0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:392 +assert_malformed(() => instantiate(`(global f64 (f64.const 1._0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:396 +assert_malformed(() => instantiate(`(global f64 (f64.const _1e1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:400 +assert_malformed(() => instantiate(`(global f64 (f64.const 1e1_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:404 +assert_malformed(() => instantiate(`(global f64 (f64.const 1_e1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:408 +assert_malformed(() => instantiate(`(global f64 (f64.const 1e_1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:412 +assert_malformed( + () => instantiate(`(global f64 (f64.const _1.0e1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:416 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0e1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:420 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0_e1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:424 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0e_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:428 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0e+_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:432 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0e_+1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:436 +assert_malformed( + () => instantiate(`(global f64 (f64.const _0x100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:440 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0_x100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:444 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x_100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:448 +assert_malformed(() => instantiate(`(global f64 (f64.const 0x00_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:452 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0xff__ffff)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:456 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x_1.0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:460 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:464 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1_.0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:468 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1._0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:472 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x_1p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:476 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1p1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:480 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1_p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:484 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1p_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:488 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x_1.0p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:492 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0p1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:496 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0_p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:500 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0p_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:504 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0p+_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:508 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0p_+1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:512 +assert_malformed( + () => instantiate(`(global f64 (f64.const nan:0x10_0000_0000_0000)) `), + `constant out of range`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/global.wast.js b/js/src/jit-test/tests/wasm/spec/gc/global.wast.js new file mode 100644 index 0000000000..21ace9e66d --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/global.wast.js @@ -0,0 +1,869 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/global.wast + +// ./test/core/global.wast:3 +let $0 = instantiate(`(module + (global (import "spectest" "global_i32") i32) + (global (import "spectest" "global_i64") i64) + + (global $$a i32 (i32.const -2)) + (global (;3;) f32 (f32.const -3)) + (global (;4;) f64 (f64.const -4)) + (global $$b i64 (i64.const -5)) + + (global $$x (mut i32) (i32.const -12)) + (global (;7;) (mut f32) (f32.const -13)) + (global (;8;) (mut f64) (f64.const -14)) + (global $$y (mut i64) (i64.const -15)) + + (global $$z1 i32 (global.get 0)) + (global $$z2 i64 (global.get 1)) + + (global $$r externref (ref.null extern)) + (global $$mr (mut externref) (ref.null extern)) + (global funcref (ref.null func)) + + (func (export "get-a") (result i32) (global.get $$a)) + (func (export "get-b") (result i64) (global.get $$b)) + (func (export "get-r") (result externref) (global.get $$r)) + (func (export "get-mr") (result externref) (global.get $$mr)) + (func (export "get-x") (result i32) (global.get $$x)) + (func (export "get-y") (result i64) (global.get $$y)) + (func (export "get-z1") (result i32) (global.get $$z1)) + (func (export "get-z2") (result i64) (global.get $$z2)) + (func (export "set-x") (param i32) (global.set $$x (local.get 0))) + (func (export "set-y") (param i64) (global.set $$y (local.get 0))) + (func (export "set-mr") (param externref) (global.set $$mr (local.get 0))) + + (func (export "get-3") (result f32) (global.get 3)) + (func (export "get-4") (result f64) (global.get 4)) + (func (export "get-7") (result f32) (global.get 7)) + (func (export "get-8") (result f64) (global.get 8)) + (func (export "set-7") (param f32) (global.set 7 (local.get 0))) + (func (export "set-8") (param f64) (global.set 8 (local.get 0))) + + ;; As the argument of control constructs and instructions + + (memory 1) + + (func $$dummy) + + (func (export "as-select-first") (result i32) + (select (global.get $$x) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (global.get $$x) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (global.get $$x)) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) + (global.get $$x) (call $$dummy) (call $$dummy) + ) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) + (call $$dummy) (global.get $$x) (call $$dummy) + ) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) + (call $$dummy) (call $$dummy) (global.get $$x) + ) + ) + + (func (export "as-if-condition") (result i32) + (if (result i32) (global.get $$x) + (then (call $$dummy) (i32.const 2)) + (else (call $$dummy) (i32.const 3)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (global.get $$x)) (else (i32.const 2)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 2)) (else (global.get $$x)) + ) + ) + + (func (export "as-br_if-first") (result i32) + (block (result i32) + (br_if 0 (global.get $$x) (i32.const 2)) + (return (i32.const 3)) + ) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) + (br_if 0 (i32.const 2) (global.get $$x)) + (return (i32.const 3)) + ) + ) + + (func (export "as-br_table-first") (result i32) + (block (result i32) + (global.get $$x) (i32.const 2) (br_table 0 0) + ) + ) + (func (export "as-br_table-last") (result i32) + (block (result i32) + (i32.const 2) (global.get $$x) (br_table 0 0) + ) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (global.get $$x) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (global.get $$x) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (i32.const 0) (global.get $$x) + ) + ) + ) + + (func (export "as-store-first") + (global.get $$x) (i32.const 1) (i32.store) + ) + (func (export "as-store-last") + (i32.const 0) (global.get $$x) (i32.store) + ) + (func (export "as-load-operand") (result i32) + (i32.load (global.get $$x)) + ) + (func (export "as-memory.grow-value") (result i32) + (memory.grow (global.get $$x)) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + (func (export "as-call-value") (result i32) + (call $$f (global.get $$x)) + ) + + (func (export "as-return-value") (result i32) + (global.get $$x) (return) + ) + (func (export "as-drop-operand") + (drop (global.get $$x)) + ) + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (global.get $$x))) + ) + + (func (export "as-local.set-value") (param i32) (result i32) + (local.set 0 (global.get $$x)) + (local.get 0) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (local.tee 0 (global.get $$x)) + ) + (func (export "as-global.set-value") (result i32) + (global.set $$x (global.get $$x)) + (global.get $$x) + ) + + (func (export "as-unary-operand") (result i32) + (i32.eqz (global.get $$x)) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (global.get $$x) (global.get $$x) + ) + ) + (func (export "as-compare-operand") (result i32) + (i32.gt_u + (global.get 0) (i32.const 1) + ) + ) +)`); + +// ./test/core/global.wast:196 +assert_return(() => invoke($0, `get-a`, []), [value("i32", -2)]); + +// ./test/core/global.wast:197 +assert_return(() => invoke($0, `get-b`, []), [value("i64", -5n)]); + +// ./test/core/global.wast:198 +assert_return(() => invoke($0, `get-r`, []), [value('externref', null)]); + +// ./test/core/global.wast:199 +assert_return(() => invoke($0, `get-mr`, []), [value('externref', null)]); + +// ./test/core/global.wast:200 +assert_return(() => invoke($0, `get-x`, []), [value("i32", -12)]); + +// ./test/core/global.wast:201 +assert_return(() => invoke($0, `get-y`, []), [value("i64", -15n)]); + +// ./test/core/global.wast:202 +assert_return(() => invoke($0, `get-z1`, []), [value("i32", 666)]); + +// ./test/core/global.wast:203 +assert_return(() => invoke($0, `get-z2`, []), [value("i64", 666n)]); + +// ./test/core/global.wast:205 +assert_return(() => invoke($0, `get-3`, []), [value("f32", -3)]); + +// ./test/core/global.wast:206 +assert_return(() => invoke($0, `get-4`, []), [value("f64", -4)]); + +// ./test/core/global.wast:207 +assert_return(() => invoke($0, `get-7`, []), [value("f32", -13)]); + +// ./test/core/global.wast:208 +assert_return(() => invoke($0, `get-8`, []), [value("f64", -14)]); + +// ./test/core/global.wast:210 +assert_return(() => invoke($0, `set-x`, [6]), []); + +// ./test/core/global.wast:211 +assert_return(() => invoke($0, `set-y`, [7n]), []); + +// ./test/core/global.wast:213 +assert_return(() => invoke($0, `set-7`, [value("f32", 8)]), []); + +// ./test/core/global.wast:214 +assert_return(() => invoke($0, `set-8`, [value("f64", 9)]), []); + +// ./test/core/global.wast:216 +assert_return(() => invoke($0, `get-x`, []), [value("i32", 6)]); + +// ./test/core/global.wast:217 +assert_return(() => invoke($0, `get-y`, []), [value("i64", 7n)]); + +// ./test/core/global.wast:218 +assert_return(() => invoke($0, `get-7`, []), [value("f32", 8)]); + +// ./test/core/global.wast:219 +assert_return(() => invoke($0, `get-8`, []), [value("f64", 9)]); + +// ./test/core/global.wast:221 +assert_return(() => invoke($0, `set-7`, [value("f32", 8)]), []); + +// ./test/core/global.wast:222 +assert_return(() => invoke($0, `set-8`, [value("f64", 9)]), []); + +// ./test/core/global.wast:223 +assert_return(() => invoke($0, `set-mr`, [externref(10)]), []); + +// ./test/core/global.wast:225 +assert_return(() => invoke($0, `get-x`, []), [value("i32", 6)]); + +// ./test/core/global.wast:226 +assert_return(() => invoke($0, `get-y`, []), [value("i64", 7n)]); + +// ./test/core/global.wast:227 +assert_return(() => invoke($0, `get-7`, []), [value("f32", 8)]); + +// ./test/core/global.wast:228 +assert_return(() => invoke($0, `get-8`, []), [value("f64", 9)]); + +// ./test/core/global.wast:229 +assert_return(() => invoke($0, `get-mr`, []), [new ExternRefResult(10)]); + +// ./test/core/global.wast:231 +assert_return(() => invoke($0, `as-select-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:232 +assert_return(() => invoke($0, `as-select-mid`, []), [value("i32", 2)]); + +// ./test/core/global.wast:233 +assert_return(() => invoke($0, `as-select-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:235 +assert_return(() => invoke($0, `as-loop-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:236 +assert_return(() => invoke($0, `as-loop-mid`, []), [value("i32", 6)]); + +// ./test/core/global.wast:237 +assert_return(() => invoke($0, `as-loop-last`, []), [value("i32", 6)]); + +// ./test/core/global.wast:239 +assert_return(() => invoke($0, `as-if-condition`, []), [value("i32", 2)]); + +// ./test/core/global.wast:240 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 6)]); + +// ./test/core/global.wast:241 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 6)]); + +// ./test/core/global.wast:243 +assert_return(() => invoke($0, `as-br_if-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:244 +assert_return(() => invoke($0, `as-br_if-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:246 +assert_return(() => invoke($0, `as-br_table-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:247 +assert_return(() => invoke($0, `as-br_table-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:249 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:250 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 2)]); + +// ./test/core/global.wast:251 +assert_trap(() => invoke($0, `as-call_indirect-last`, []), `undefined element`); + +// ./test/core/global.wast:253 +assert_return(() => invoke($0, `as-store-first`, []), []); + +// ./test/core/global.wast:254 +assert_return(() => invoke($0, `as-store-last`, []), []); + +// ./test/core/global.wast:255 +assert_return(() => invoke($0, `as-load-operand`, []), [value("i32", 1)]); + +// ./test/core/global.wast:256 +assert_return(() => invoke($0, `as-memory.grow-value`, []), [value("i32", 1)]); + +// ./test/core/global.wast:258 +assert_return(() => invoke($0, `as-call-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:260 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:261 +assert_return(() => invoke($0, `as-drop-operand`, []), []); + +// ./test/core/global.wast:262 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:264 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 6)]); + +// ./test/core/global.wast:265 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 6)]); + +// ./test/core/global.wast:266 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:268 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 0)]); + +// ./test/core/global.wast:269 +assert_return(() => invoke($0, `as-binary-operand`, []), [value("i32", 36)]); + +// ./test/core/global.wast:270 +assert_return(() => invoke($0, `as-compare-operand`, []), [value("i32", 1)]); + +// ./test/core/global.wast:272 +assert_invalid( + () => instantiate(`(module (global f32 (f32.const 0)) (func (global.set 0 (f32.const 1))))`), + `immutable global`, +); + +// ./test/core/global.wast:277 +assert_invalid( + () => instantiate(`(module (import "spectest" "global_i32" (global i32)) (func (global.set 0 (i32.const 1))))`), + `immutable global`, +); + +// ./test/core/global.wast:283 +let $1 = instantiate(`(module (global (mut f32) (f32.const 0)) (export "a" (global 0)))`); + +// ./test/core/global.wast:284 +let $2 = instantiate(`(module (global (export "a") (mut f32) (f32.const 0)))`); + +// ./test/core/global.wast:286 +assert_invalid( + () => instantiate(`(module (global f32 (f32.neg (f32.const 0))))`), + `constant expression required`, +); + +// ./test/core/global.wast:291 +assert_invalid( + () => instantiate(`(module (global f32 (local.get 0)))`), + `constant expression required`, +); + +// ./test/core/global.wast:296 +assert_invalid( + () => instantiate(`(module (global f32 (f32.neg (f32.const 1))))`), + `constant expression required`, +); + +// ./test/core/global.wast:301 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0) (nop)))`), + `constant expression required`, +); + +// ./test/core/global.wast:306 +assert_invalid( + () => instantiate(`(module (global i32 (i32.ctz (i32.const 0))))`), + `constant expression required`, +); + +// ./test/core/global.wast:311 +assert_invalid( + () => instantiate(`(module (global i32 (nop)))`), + `constant expression required`, +); + +// ./test/core/global.wast:316 +assert_invalid(() => instantiate(`(module (global i32 (f32.const 0)))`), `type mismatch`); + +// ./test/core/global.wast:321 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0) (i32.const 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:326 +assert_invalid( + () => instantiate(`(module (global i32 (;empty instruction sequence;)))`), + `type mismatch`, +); + +// ./test/core/global.wast:331 +assert_invalid( + () => instantiate(`(module (global (import "" "") externref) (global funcref (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:336 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (global.get 0) (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:341 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (i32.const 0) (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:346 +assert_invalid( + () => instantiate(`(module (global i32 (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:351 +assert_invalid( + () => instantiate(`(module (global i32 (global.get 1)) (global i32 (i32.const 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:356 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (global.get 2)))`), + `unknown global`, +); + +// ./test/core/global.wast:361 +let $3 = instantiate(`(module (global i32 (i32.const 0)) (global i32 (global.get 0)))`); + +// ./test/core/global.wast:362 +let $4 = instantiate(`(module (global $$g i32 (i32.const 0)) (global i32 (global.get $$g)))`); + +// ./test/core/global.wast:364 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-mut-i32") (mut i32)) (global i32 (global.get 0)))`), + `constant expression required`, +); + +// ./test/core/global.wast:369 +let $5 = instantiate(`(module + (import "spectest" "global_i32" (global i32)) +)`); + +// ./test/core/global.wast:372 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\98\\80\\80\\80\\00" ;; import section + "\\01" ;; length 1 + "\\08\\73\\70\\65\\63\\74\\65\\73\\74" ;; "spectest" + "\\0a\\67\\6c\\6f\\62\\61\\6c\\5f\\69\\33\\32" ;; "global_i32" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\02" ;; malformed mutability + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:385 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\98\\80\\80\\80\\00" ;; import section + "\\01" ;; length 1 + "\\08\\73\\70\\65\\63\\74\\65\\73\\74" ;; "spectest" + "\\0a\\67\\6c\\6f\\62\\61\\6c\\5f\\69\\33\\32" ;; "global_i32" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\ff" ;; malformed mutability + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:399 +let $6 = instantiate(`(module + (global i32 (i32.const 0)) +)`); + +// ./test/core/global.wast:402 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\06\\86\\80\\80\\80\\00" ;; global section + "\\01" ;; length 1 + "\\7f" ;; i32 + "\\02" ;; malformed mutability + "\\41\\00" ;; i32.const 0 + "\\0b" ;; end + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:414 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\06\\86\\80\\80\\80\\00" ;; global section + "\\01" ;; length 1 + "\\7f" ;; i32 + "\\ff" ;; malformed mutability + "\\41\\00" ;; i32.const 0 + "\\0b" ;; end + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:428 +assert_invalid( + () => instantiate(`(module (func (result i32) (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:433 +assert_invalid( + () => instantiate(`(module + (global i32 (i32.const 0)) + (func (result i32) (global.get 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:441 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (func (result i32) (global.get 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:449 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (global i32 (i32.const 0)) + (func (result i32) (global.get 2)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:459 +assert_invalid( + () => instantiate(`(module (func (i32.const 0) (global.set 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:464 +assert_invalid( + () => instantiate(`(module + (global i32 (i32.const 0)) + (func (i32.const 0) (global.set 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:472 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (func (i32.const 0) (global.set 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:480 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (global i32 (i32.const 0)) + (func (i32.const 0) (global.set 2)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:490 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty + (global.set $$x) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:499 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-block + (i32.const 0) + (block (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:509 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-loop + (i32.const 0) + (loop (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:519 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:529 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:539 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br + (i32.const 0) + (block (br 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:549 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br_if + (i32.const 0) + (block (br_if 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:559 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br_table + (i32.const 0) + (block (br_table 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:569 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-return + (return (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:578 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-select + (select (global.set $$x) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:587 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-call + (call 1 (global.set $$x)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:597 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-global.set-value-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (global.set $$x) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:617 +let $7 = instantiate(`(module + (global (export "g") i32 (i32.const 4)) +)`); + +// ./test/core/global.wast:620 +register($7, `G`); + +// ./test/core/global.wast:622 +let $8 = instantiate(`(module + (global $$g0 (import "G" "g") i32) + (global $$g1 i32 (i32.const 8)) + (global $$g2 i32 (global.get $$g0)) + (global $$g3 i32 (global.get $$g1)) + + (global $$gf funcref (ref.func $$f)) + (func $$f) + + (table $$t 10 funcref (ref.null func)) + (elem (table $$t) (global.get $$g2) funcref (ref.func $$f)) + (elem (table $$t) (global.get $$g3) funcref (global.get $$gf)) + + (memory $$m 1) + (data (global.get $$g2) "\\44\\44\\44\\44") + (data (global.get $$g3) "\\88\\88\\88\\88") + + (func (export "get-elem") (param $$i i32) (result funcref) + (table.get $$t (local.get $$i)) + ) + (func (export "get-data") (param $$i i32) (result i32) + (i32.load (local.get $$i)) + ) +)`); + +// ./test/core/global.wast:647 +assert_return(() => invoke($8, `get-elem`, [0]), [null]); + +// ./test/core/global.wast:648 +assert_return(() => invoke($8, `get-elem`, [4]), [new RefWithType('funcref')]); + +// ./test/core/global.wast:649 +assert_return(() => invoke($8, `get-elem`, [8]), [new RefWithType('funcref')]); + +// ./test/core/global.wast:651 +assert_return(() => invoke($8, `get-data`, [4]), [value("i32", 1145324612)]); + +// ./test/core/global.wast:652 +assert_return(() => invoke($8, `get-data`, [8]), [value("i32", -2004318072)]); + +// ./test/core/global.wast:654 +assert_invalid( + () => instantiate(`(module + (global $$g1 i32 (global.get $$g2)) + (global $$g2 i32 (i32.const 0)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:662 +assert_invalid( + () => instantiate(`(module + (global $$g funcref (ref.null func)) + (table $$t 10 funcref (global.get $$g)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:673 +assert_malformed( + () => instantiate(`(global $$foo i32 (i32.const 0)) (global $$foo i32 (i32.const 0)) `), + `duplicate global`, +); + +// ./test/core/global.wast:680 +assert_malformed( + () => instantiate(`(import "" "" (global $$foo i32)) (global $$foo i32 (i32.const 0)) `), + `duplicate global`, +); + +// ./test/core/global.wast:687 +assert_malformed( + () => instantiate(`(import "" "" (global $$foo i32)) (import "" "" (global $$foo i32)) `), + `duplicate global`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/gc/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/gc/harness/harness.js b/js/src/jit-test/tests/wasm/spec/gc/harness/harness.js new file mode 100644 index 0000000000..a96781e8ed --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/harness/harness.js @@ -0,0 +1,448 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/gc/i31.wast.js b/js/src/jit-test/tests/wasm/spec/gc/i31.wast.js new file mode 100644 index 0000000000..5799deefbf --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/i31.wast.js @@ -0,0 +1,104 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/i31.wast + +// ./test/core/gc/i31.wast:1 +let $0 = instantiate(`(module + (func (export "new") (param $$i i32) (result (ref i31)) + (ref.i31 (local.get $$i)) + ) + + (func (export "get_u") (param $$i i32) (result i32) + (i31.get_u (ref.i31 (local.get $$i))) + ) + (func (export "get_s") (param $$i i32) (result i32) + (i31.get_s (ref.i31 (local.get $$i))) + ) + + (func (export "get_u-null") (result i32) + (i31.get_u (ref.null i31)) + ) + (func (export "get_s-null") (result i32) + (i31.get_u (ref.null i31)) + ) + + (global $$i (ref i31) (ref.i31 (i32.const 2))) + (global $$m (mut (ref i31)) (ref.i31 (i32.const 3))) + (func (export "get_globals") (result i32 i32) + (i31.get_u (global.get $$i)) + (i31.get_u (global.get $$m)) + ) +)`); + +// ./test/core/gc/i31.wast:28 +assert_return(() => invoke($0, `new`, [1]), [new RefWithType('i31ref')]); + +// ./test/core/gc/i31.wast:30 +assert_return(() => invoke($0, `get_u`, [0]), [value("i32", 0)]); + +// ./test/core/gc/i31.wast:31 +assert_return(() => invoke($0, `get_u`, [100]), [value("i32", 100)]); + +// ./test/core/gc/i31.wast:32 +assert_return(() => invoke($0, `get_u`, [-1]), [value("i32", 2147483647)]); + +// ./test/core/gc/i31.wast:33 +assert_return(() => invoke($0, `get_u`, [1073741823]), [value("i32", 1073741823)]); + +// ./test/core/gc/i31.wast:34 +assert_return(() => invoke($0, `get_u`, [1073741824]), [value("i32", 1073741824)]); + +// ./test/core/gc/i31.wast:35 +assert_return(() => invoke($0, `get_u`, [2147483647]), [value("i32", 2147483647)]); + +// ./test/core/gc/i31.wast:36 +assert_return(() => invoke($0, `get_u`, [-1431655766]), [value("i32", 715827882)]); + +// ./test/core/gc/i31.wast:37 +assert_return(() => invoke($0, `get_u`, [-894784854]), [value("i32", 1252698794)]); + +// ./test/core/gc/i31.wast:39 +assert_return(() => invoke($0, `get_s`, [0]), [value("i32", 0)]); + +// ./test/core/gc/i31.wast:40 +assert_return(() => invoke($0, `get_s`, [100]), [value("i32", 100)]); + +// ./test/core/gc/i31.wast:41 +assert_return(() => invoke($0, `get_s`, [-1]), [value("i32", -1)]); + +// ./test/core/gc/i31.wast:42 +assert_return(() => invoke($0, `get_s`, [1073741823]), [value("i32", 1073741823)]); + +// ./test/core/gc/i31.wast:43 +assert_return(() => invoke($0, `get_s`, [1073741824]), [value("i32", -1073741824)]); + +// ./test/core/gc/i31.wast:44 +assert_return(() => invoke($0, `get_s`, [2147483647]), [value("i32", -1)]); + +// ./test/core/gc/i31.wast:45 +assert_return(() => invoke($0, `get_s`, [-1431655766]), [value("i32", 715827882)]); + +// ./test/core/gc/i31.wast:46 +assert_return(() => invoke($0, `get_s`, [-894784854]), [value("i32", -894784854)]); + +// ./test/core/gc/i31.wast:48 +assert_trap(() => invoke($0, `get_u-null`, []), `null i31 reference`); + +// ./test/core/gc/i31.wast:49 +assert_trap(() => invoke($0, `get_s-null`, []), `null i31 reference`); + +// ./test/core/gc/i31.wast:51 +assert_return(() => invoke($0, `get_globals`, []), [value("i32", 2), value("i32", 3)]); diff --git a/js/src/jit-test/tests/wasm/spec/gc/if.wast.js b/js/src/jit-test/tests/wasm/spec/gc/if.wast.js new file mode 100644 index 0000000000..cc79fbf00f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/if.wast.js @@ -0,0 +1,1928 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/if.wast + +// ./test/core/if.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definition + (memory 1) + + (func $$dummy) + + (func (export "empty") (param i32) + (if (local.get 0) (then)) + (if (local.get 0) (then) (else)) + (if $$l (local.get 0) (then)) + (if $$l (local.get 0) (then) (else)) + ) + + (func (export "singular") (param i32) (result i32) + (if (local.get 0) (then (nop))) + (if (local.get 0) (then (nop)) (else (nop))) + (if (result i32) (local.get 0) (then (i32.const 7)) (else (i32.const 8))) + ) + + (func (export "multi") (param i32) (result i32 i32) + (if (local.get 0) (then (call $$dummy) (call $$dummy) (call $$dummy))) + (if (local.get 0) (then) (else (call $$dummy) (call $$dummy) (call $$dummy))) + (if (result i32) (local.get 0) + (then (call $$dummy) (call $$dummy) (i32.const 8) (call $$dummy)) + (else (call $$dummy) (call $$dummy) (i32.const 9) (call $$dummy)) + ) + (if (result i32 i64 i32) (local.get 0) + (then + (call $$dummy) (call $$dummy) (i32.const 1) (call $$dummy) + (call $$dummy) (call $$dummy) (i64.const 2) (call $$dummy) + (call $$dummy) (call $$dummy) (i32.const 3) (call $$dummy) + ) + (else + (call $$dummy) (call $$dummy) (i32.const -1) (call $$dummy) + (call $$dummy) (call $$dummy) (i64.const -2) (call $$dummy) + (call $$dummy) (call $$dummy) (i32.const -3) (call $$dummy) + ) + ) + (drop) (drop) + ) + + (func (export "nested") (param i32 i32) (result i32) + (if (result i32) (local.get 0) + (then + (if (local.get 1) (then (call $$dummy) (block) (nop))) + (if (local.get 1) (then) (else (call $$dummy) (block) (nop))) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 9)) + (else (call $$dummy) (i32.const 10)) + ) + ) + (else + (if (local.get 1) (then (call $$dummy) (block) (nop))) + (if (local.get 1) (then) (else (call $$dummy) (block) (nop))) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 10)) + (else (call $$dummy) (i32.const 11)) + ) + ) + ) + ) + + (func (export "as-select-first") (param i32) (result i32) + (select + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-select-mid") (param i32) (result i32) + (select + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 3) + ) + ) + (func (export "as-select-last") (param i32) (result i32) + (select + (i32.const 2) (i32.const 3) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + + (func (export "as-loop-first") (param i32) (result i32) + (loop (result i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (call $$dummy) (call $$dummy) + ) + ) + (func (export "as-loop-mid") (param i32) (result i32) + (loop (result i32) + (call $$dummy) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (call $$dummy) + ) + ) + (func (export "as-loop-last") (param i32) (result i32) + (loop (result i32) + (call $$dummy) (call $$dummy) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + + (func (export "as-if-condition") (param i32) (result i32) + (if (result i32) + (if (result i32) (local.get 0) + (then (i32.const 1)) (else (i32.const 0)) + ) + (then (call $$dummy) (i32.const 2)) + (else (call $$dummy) (i32.const 3)) + ) + ) + + (func (export "as-br_if-first") (param i32) (result i32) + (block (result i32) + (br_if 0 + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + ) + (return (i32.const 3)) + ) + ) + (func (export "as-br_if-last") (param i32) (result i32) + (block (result i32) + (br_if 0 + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + (return (i32.const 3)) + ) + ) + + (func (export "as-br_table-first") (param i32) (result i32) + (block (result i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + (br_table 0 0) + ) + ) + (func (export "as-br_table-last") (param i32) (result i32) + (block (result i32) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (br_table 0 0) + ) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (i32.const 0) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + ) + + (func (export "as-store-first") (param i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + (i32.store) + ) + (func (export "as-store-last") (param i32) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.store) + ) + + (func (export "as-memory.grow-value") (param i32) (result i32) + (memory.grow + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "as-call-value") (param i32) (result i32) + (call $$f + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (func (export "as-return-value") (param i32) (result i32) + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0))) + (return) + ) + (func (export "as-drop-operand") (param i32) + (drop + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (func (export "as-br-value") (param i32) (result i32) + (block (result i32) + (br 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + ) + (func (export "as-local.set-value") (param i32) (result i32) + (local i32) + (local.set 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (local.get 0) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (local.tee 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (param i32) (result i32) + (global.set $$a + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) (global.get $$a) + ) + (func (export "as-load-operand") (param i32) (result i32) + (i32.load + (if (result i32) (local.get 0) + (then (i32.const 11)) + (else (i32.const 10)) + ) + ) + ) + + (func (export "as-unary-operand") (param i32) (result i32) + (i32.ctz + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 13)) + (else (call $$dummy) (i32.const -13)) + ) + ) + ) + (func (export "as-binary-operand") (param i32 i32) (result i32) + (i32.mul + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 3)) + (else (call $$dummy) (i32.const -3)) + ) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const -5)) + ) + ) + ) + (func (export "as-test-operand") (param i32) (result i32) + (i32.eqz + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 13)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + (func (export "as-compare-operand") (param i32 i32) (result i32) + (f32.gt + (if (result f32) (local.get 0) + (then (call $$dummy) (f32.const 3)) + (else (call $$dummy) (f32.const -3)) + ) + (if (result f32) (local.get 1) + (then (call $$dummy) (f32.const 4)) + (else (call $$dummy) (f32.const -4)) + ) + ) + ) + (func (export "as-binary-operands") (param i32) (result i32) + (i32.mul + (if (result i32 i32) (local.get 0) + (then (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const 3) (call $$dummy) (i32.const -4)) + ) + ) + ) + (func (export "as-compare-operands") (param i32) (result i32) + (f32.gt + (if (result f32 f32) (local.get 0) + (then (call $$dummy) (f32.const 3) (call $$dummy) (f32.const 3)) + (else (call $$dummy) (f32.const -2) (call $$dummy) (f32.const -3)) + ) + ) + ) + (func (export "as-mixed-operands") (param i32) (result i32) + (if (result i32 i32) (local.get 0) + (then (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const -3) (call $$dummy) (i32.const -4)) + ) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "break-bare") (result i32) + (if (i32.const 1) (then (br 0) (unreachable))) + (if (i32.const 1) (then (br 0) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br 0) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_table 0 (i32.const 0)) (unreachable))) + (i32.const 19) + ) + + (func (export "break-value") (param i32) (result i32) + (if (result i32) (local.get 0) + (then (br 0 (i32.const 18)) (i32.const 19)) + (else (br 0 (i32.const 21)) (i32.const 20)) + ) + ) + (func (export "break-multi-value") (param i32) (result i32 i32 i64) + (if (result i32 i32 i64) (local.get 0) + (then + (br 0 (i32.const 18) (i32.const -18) (i64.const 18)) + (i32.const 19) (i32.const -19) (i64.const 19) + ) + (else + (br 0 (i32.const -18) (i32.const 18) (i64.const -18)) + (i32.const -19) (i32.const 19) (i64.const -19) + ) + ) + ) + + (func (export "param") (param i32) (result i32) + (i32.const 1) + (if (param i32) (result i32) (local.get 0) + (then (i32.const 2) (i32.add)) + (else (i32.const -2) (i32.add)) + ) + ) + (func (export "params") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32) (local.get 0) + (then (i32.add)) + (else (i32.sub)) + ) + ) + (func (export "params-id") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32 i32) (local.get 0) (then)) + (i32.add) + ) + (func (export "param-break") (param i32) (result i32) + (i32.const 1) + (if (param i32) (result i32) (local.get 0) + (then (i32.const 2) (i32.add) (br 0)) + (else (i32.const -2) (i32.add) (br 0)) + ) + ) + (func (export "params-break") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32) (local.get 0) + (then (i32.add) (br 0)) + (else (i32.sub) (br 0)) + ) + ) + (func (export "params-id-break") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32 i32) (local.get 0) (then (br 0))) + (i32.add) + ) + + (func (export "effects") (param i32) (result i32) + (local i32) + (if + (block (result i32) (local.set 1 (i32.const 1)) (local.get 0)) + (then + (local.set 1 (i32.mul (local.get 1) (i32.const 3))) + (local.set 1 (i32.sub (local.get 1) (i32.const 5))) + (local.set 1 (i32.mul (local.get 1) (i32.const 7))) + (br 0) + (local.set 1 (i32.mul (local.get 1) (i32.const 100))) + ) + (else + (local.set 1 (i32.mul (local.get 1) (i32.const 5))) + (local.set 1 (i32.sub (local.get 1) (i32.const 7))) + (local.set 1 (i32.mul (local.get 1) (i32.const 3))) + (br 0) + (local.set 1 (i32.mul (local.get 1) (i32.const 1000))) + ) + ) + (local.get 1) + ) + + ;; Examples + + (func $$add64_u_with_carry (export "add64_u_with_carry") + (param $$i i64) (param $$j i64) (param $$c i32) (result i64 i32) + (local $$k i64) + (local.set $$k + (i64.add + (i64.add (local.get $$i) (local.get $$j)) + (i64.extend_i32_u (local.get $$c)) + ) + ) + (return (local.get $$k) (i64.lt_u (local.get $$k) (local.get $$i))) + ) + + (func $$add64_u_saturated (export "add64_u_saturated") + (param i64 i64) (result i64) + (call $$add64_u_with_carry (local.get 0) (local.get 1) (i32.const 0)) + (if (param i64) (result i64) + (then (drop) (i64.const -1)) + ) + ) + + ;; Block signature syntax + + (type $$block-sig-1 (func)) + (type $$block-sig-2 (func (result i32))) + (type $$block-sig-3 (func (param $$x i32))) + (type $$block-sig-4 (func (param i32 f64 i32) (result i32 f64 i32))) + + (func (export "type-use") + (if (type $$block-sig-1) (i32.const 1) (then)) + (if (type $$block-sig-2) (i32.const 1) + (then (i32.const 0)) (else (i32.const 2)) + ) + (if (type $$block-sig-3) (i32.const 1) (then (drop)) (else (drop))) + (i32.const 0) (f64.const 0) (i32.const 0) + (if (type $$block-sig-4) (i32.const 1) (then)) + (drop) (drop) (drop) + (if (type $$block-sig-2) (result i32) (i32.const 1) + (then (i32.const 0)) (else (i32.const 2)) + ) + (if (type $$block-sig-3) (param i32) (i32.const 1) + (then (drop)) (else (drop)) + ) + (i32.const 0) (f64.const 0) (i32.const 0) + (if (type $$block-sig-4) + (param i32) (param f64 i32) (result i32 f64) (result i32) + (i32.const 1) (then) + ) + (drop) (drop) (drop) + ) + + ;; Atypical folded condition syntax + + (func (export "atypical-condition") + i32.const 0 + (if (then) (else)) + (if (i32.const 1) (i32.eqz) (then) (else)) + ) +)`); + +// ./test/core/if.wast:537 +assert_return(() => invoke($0, `empty`, [0]), []); + +// ./test/core/if.wast:538 +assert_return(() => invoke($0, `empty`, [1]), []); + +// ./test/core/if.wast:539 +assert_return(() => invoke($0, `empty`, [100]), []); + +// ./test/core/if.wast:540 +assert_return(() => invoke($0, `empty`, [-2]), []); + +// ./test/core/if.wast:542 +assert_return(() => invoke($0, `singular`, [0]), [value("i32", 8)]); + +// ./test/core/if.wast:543 +assert_return(() => invoke($0, `singular`, [1]), [value("i32", 7)]); + +// ./test/core/if.wast:544 +assert_return(() => invoke($0, `singular`, [10]), [value("i32", 7)]); + +// ./test/core/if.wast:545 +assert_return(() => invoke($0, `singular`, [-10]), [value("i32", 7)]); + +// ./test/core/if.wast:547 +assert_return(() => invoke($0, `multi`, [0]), [value("i32", 9), value("i32", -1)]); + +// ./test/core/if.wast:548 +assert_return(() => invoke($0, `multi`, [1]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:549 +assert_return(() => invoke($0, `multi`, [13]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:550 +assert_return(() => invoke($0, `multi`, [-5]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:552 +assert_return(() => invoke($0, `nested`, [0, 0]), [value("i32", 11)]); + +// ./test/core/if.wast:553 +assert_return(() => invoke($0, `nested`, [1, 0]), [value("i32", 10)]); + +// ./test/core/if.wast:554 +assert_return(() => invoke($0, `nested`, [0, 1]), [value("i32", 10)]); + +// ./test/core/if.wast:555 +assert_return(() => invoke($0, `nested`, [3, 2]), [value("i32", 9)]); + +// ./test/core/if.wast:556 +assert_return(() => invoke($0, `nested`, [0, -100]), [value("i32", 10)]); + +// ./test/core/if.wast:557 +assert_return(() => invoke($0, `nested`, [10, 10]), [value("i32", 9)]); + +// ./test/core/if.wast:558 +assert_return(() => invoke($0, `nested`, [0, -1]), [value("i32", 10)]); + +// ./test/core/if.wast:559 +assert_return(() => invoke($0, `nested`, [-111, -2]), [value("i32", 9)]); + +// ./test/core/if.wast:561 +assert_return(() => invoke($0, `as-select-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:562 +assert_return(() => invoke($0, `as-select-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:563 +assert_return(() => invoke($0, `as-select-mid`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:564 +assert_return(() => invoke($0, `as-select-mid`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:565 +assert_return(() => invoke($0, `as-select-last`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:566 +assert_return(() => invoke($0, `as-select-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:568 +assert_return(() => invoke($0, `as-loop-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:569 +assert_return(() => invoke($0, `as-loop-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:570 +assert_return(() => invoke($0, `as-loop-mid`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:571 +assert_return(() => invoke($0, `as-loop-mid`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:572 +assert_return(() => invoke($0, `as-loop-last`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:573 +assert_return(() => invoke($0, `as-loop-last`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:575 +assert_return(() => invoke($0, `as-if-condition`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:576 +assert_return(() => invoke($0, `as-if-condition`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:578 +assert_return(() => invoke($0, `as-br_if-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:579 +assert_return(() => invoke($0, `as-br_if-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:580 +assert_return(() => invoke($0, `as-br_if-last`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:581 +assert_return(() => invoke($0, `as-br_if-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:583 +assert_return(() => invoke($0, `as-br_table-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:584 +assert_return(() => invoke($0, `as-br_table-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:585 +assert_return(() => invoke($0, `as-br_table-last`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:586 +assert_return(() => invoke($0, `as-br_table-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:588 +assert_return(() => invoke($0, `as-call_indirect-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:589 +assert_return(() => invoke($0, `as-call_indirect-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:590 +assert_return(() => invoke($0, `as-call_indirect-mid`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:591 +assert_return(() => invoke($0, `as-call_indirect-mid`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:592 +assert_return(() => invoke($0, `as-call_indirect-last`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:593 +assert_trap(() => invoke($0, `as-call_indirect-last`, [1]), `undefined element`); + +// ./test/core/if.wast:595 +assert_return(() => invoke($0, `as-store-first`, [0]), []); + +// ./test/core/if.wast:596 +assert_return(() => invoke($0, `as-store-first`, [1]), []); + +// ./test/core/if.wast:597 +assert_return(() => invoke($0, `as-store-last`, [0]), []); + +// ./test/core/if.wast:598 +assert_return(() => invoke($0, `as-store-last`, [1]), []); + +// ./test/core/if.wast:600 +assert_return(() => invoke($0, `as-memory.grow-value`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:601 +assert_return(() => invoke($0, `as-memory.grow-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:603 +assert_return(() => invoke($0, `as-call-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:604 +assert_return(() => invoke($0, `as-call-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:606 +assert_return(() => invoke($0, `as-return-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:607 +assert_return(() => invoke($0, `as-return-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:609 +assert_return(() => invoke($0, `as-drop-operand`, [0]), []); + +// ./test/core/if.wast:610 +assert_return(() => invoke($0, `as-drop-operand`, [1]), []); + +// ./test/core/if.wast:612 +assert_return(() => invoke($0, `as-br-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:613 +assert_return(() => invoke($0, `as-br-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:615 +assert_return(() => invoke($0, `as-local.set-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:616 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:618 +assert_return(() => invoke($0, `as-local.tee-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:619 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:621 +assert_return(() => invoke($0, `as-global.set-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:622 +assert_return(() => invoke($0, `as-global.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:624 +assert_return(() => invoke($0, `as-load-operand`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:625 +assert_return(() => invoke($0, `as-load-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:627 +assert_return(() => invoke($0, `as-unary-operand`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:628 +assert_return(() => invoke($0, `as-unary-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:629 +assert_return(() => invoke($0, `as-unary-operand`, [-1]), [value("i32", 0)]); + +// ./test/core/if.wast:631 +assert_return(() => invoke($0, `as-binary-operand`, [0, 0]), [value("i32", 15)]); + +// ./test/core/if.wast:632 +assert_return(() => invoke($0, `as-binary-operand`, [0, 1]), [value("i32", -12)]); + +// ./test/core/if.wast:633 +assert_return(() => invoke($0, `as-binary-operand`, [1, 0]), [value("i32", -15)]); + +// ./test/core/if.wast:634 +assert_return(() => invoke($0, `as-binary-operand`, [1, 1]), [value("i32", 12)]); + +// ./test/core/if.wast:636 +assert_return(() => invoke($0, `as-test-operand`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:637 +assert_return(() => invoke($0, `as-test-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:639 +assert_return(() => invoke($0, `as-compare-operand`, [0, 0]), [value("i32", 1)]); + +// ./test/core/if.wast:640 +assert_return(() => invoke($0, `as-compare-operand`, [0, 1]), [value("i32", 0)]); + +// ./test/core/if.wast:641 +assert_return(() => invoke($0, `as-compare-operand`, [1, 0]), [value("i32", 1)]); + +// ./test/core/if.wast:642 +assert_return(() => invoke($0, `as-compare-operand`, [1, 1]), [value("i32", 0)]); + +// ./test/core/if.wast:644 +assert_return(() => invoke($0, `as-binary-operands`, [0]), [value("i32", -12)]); + +// ./test/core/if.wast:645 +assert_return(() => invoke($0, `as-binary-operands`, [1]), [value("i32", 12)]); + +// ./test/core/if.wast:647 +assert_return(() => invoke($0, `as-compare-operands`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:648 +assert_return(() => invoke($0, `as-compare-operands`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:650 +assert_return(() => invoke($0, `as-mixed-operands`, [0]), [value("i32", -3)]); + +// ./test/core/if.wast:651 +assert_return(() => invoke($0, `as-mixed-operands`, [1]), [value("i32", 27)]); + +// ./test/core/if.wast:653 +assert_return(() => invoke($0, `break-bare`, []), [value("i32", 19)]); + +// ./test/core/if.wast:654 +assert_return(() => invoke($0, `break-value`, [1]), [value("i32", 18)]); + +// ./test/core/if.wast:655 +assert_return(() => invoke($0, `break-value`, [0]), [value("i32", 21)]); + +// ./test/core/if.wast:656 +assert_return( + () => invoke($0, `break-multi-value`, [0]), + [value("i32", -18), value("i32", 18), value("i64", -18n)], +); + +// ./test/core/if.wast:659 +assert_return( + () => invoke($0, `break-multi-value`, [1]), + [value("i32", 18), value("i32", -18), value("i64", 18n)], +); + +// ./test/core/if.wast:663 +assert_return(() => invoke($0, `param`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:664 +assert_return(() => invoke($0, `param`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:665 +assert_return(() => invoke($0, `params`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:666 +assert_return(() => invoke($0, `params`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:667 +assert_return(() => invoke($0, `params-id`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:668 +assert_return(() => invoke($0, `params-id`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:669 +assert_return(() => invoke($0, `param-break`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:670 +assert_return(() => invoke($0, `param-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:671 +assert_return(() => invoke($0, `params-break`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:672 +assert_return(() => invoke($0, `params-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:673 +assert_return(() => invoke($0, `params-id-break`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:674 +assert_return(() => invoke($0, `params-id-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:676 +assert_return(() => invoke($0, `effects`, [1]), [value("i32", -14)]); + +// ./test/core/if.wast:677 +assert_return(() => invoke($0, `effects`, [0]), [value("i32", -6)]); + +// ./test/core/if.wast:679 +assert_return(() => invoke($0, `add64_u_with_carry`, [0n, 0n, 0]), [value("i64", 0n), value("i32", 0)]); + +// ./test/core/if.wast:683 +assert_return( + () => invoke($0, `add64_u_with_carry`, [100n, 124n, 0]), + [value("i64", 224n), value("i32", 0)], +); + +// ./test/core/if.wast:687 +assert_return( + () => invoke($0, `add64_u_with_carry`, [-1n, 0n, 0]), + [value("i64", -1n), value("i32", 0)], +); + +// ./test/core/if.wast:691 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 1n, 0]), [value("i64", 0n), value("i32", 1)]); + +// ./test/core/if.wast:695 +assert_return( + () => invoke($0, `add64_u_with_carry`, [-1n, -1n, 0]), + [value("i64", -2n), value("i32", 1)], +); + +// ./test/core/if.wast:699 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 0n, 1]), [value("i64", 0n), value("i32", 1)]); + +// ./test/core/if.wast:703 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 1n, 1]), [value("i64", 1n), value("i32", 1)]); + +// ./test/core/if.wast:707 +assert_return( + () => invoke($0, `add64_u_with_carry`, [ + -9223372036854775808n, + -9223372036854775808n, + 0, + ]), + [value("i64", 0n), value("i32", 1)], +); + +// ./test/core/if.wast:712 +assert_return(() => invoke($0, `add64_u_saturated`, [0n, 0n]), [value("i64", 0n)]); + +// ./test/core/if.wast:715 +assert_return(() => invoke($0, `add64_u_saturated`, [1230n, 23n]), [value("i64", 1253n)]); + +// ./test/core/if.wast:718 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, 0n]), [value("i64", -1n)]); + +// ./test/core/if.wast:721 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, 1n]), [value("i64", -1n)]); + +// ./test/core/if.wast:724 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, -1n]), [value("i64", -1n)]); + +// ./test/core/if.wast:727 +assert_return( + () => invoke($0, `add64_u_saturated`, [-9223372036854775808n, -9223372036854775808n]), + [value("i64", -1n)], +); + +// ./test/core/if.wast:731 +assert_return(() => invoke($0, `type-use`, []), []); + +// ./test/core/if.wast:733 +assert_return(() => invoke($0, `atypical-condition`, []), []); + +// ./test/core/if.wast:735 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (type $$sig) (result i32) (param i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:744 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (param i32) (type $$sig) (result i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:753 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (param i32) (result i32) (type $$sig) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:762 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (result i32) (type $$sig) (param i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:771 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (result i32) (param i32) (type $$sig) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:780 +assert_malformed( + () => instantiate(`(func (i32.const 0) (if (result i32) (param i32) (i32.const 1) (then))) `), + `unexpected token`, +); + +// ./test/core/if.wast:787 +assert_malformed( + () => instantiate(`(func (i32.const 0) (i32.const 1) (if (param $$x i32) (then (drop)) (else (drop))) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:795 +assert_malformed( + () => instantiate(`(type $$sig (func)) (func (i32.const 1) (if (type $$sig) (result i32) (then (i32.const 0)) (else (i32.const 2))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:805 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 1) (if (type $$sig) (result i32) (then (i32.const 0)) (else (i32.const 2))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:815 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (i32.const 1) (if (type $$sig) (param i32) (then (drop)) (else (drop))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:825 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (func (i32.const 0) (i32.const 1) (if (type $$sig) (param i32) (result i32) (then)) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:835 +assert_invalid( + () => instantiate(`(module + (type $$sig (func)) + (func (i32.const 1) (if (type $$sig) (i32.const 0) (then))) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:843 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:847 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:851 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:855 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:860 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:864 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:868 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:872 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:877 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-void + (if (i32.const 1) (then (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:883 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-void-else + (if (i32.const 1) (then (i32.const 1)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:889 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-void + (if (i32.const 1) (then) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:895 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-void + (if (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:902 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-void + (if (i32.const 1) (then (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:908 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-void-else + (if (i32.const 1) (then (i32.const 1) (i32.const 2)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:914 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-nums-vs-void + (if (i32.const 1) (then) (else (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:920 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-nums-vs-void + (if (i32.const 1) (then (i32.const 1) (i32.const 2)) (else (i32.const 2) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:927 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:933 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:939 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:946 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then) (else (i32.const 0) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:952 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 0) (i32.const 1)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:958 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:965 +assert_invalid( + () => instantiate(`(module (func $$type-no-else-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:971 +assert_invalid( + () => instantiate(`(module (func $$type-no-else-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:978 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:984 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:990 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:997 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (nop)) (else (i32.const 0) (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1003 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 0) (i32.const 0)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1009 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (nop)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1016 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1022 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1028 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1035 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1041 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1047 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1054 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1061 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1068 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1076 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1082 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1088 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1095 +assert_invalid( + () => instantiate(`(module (func $$type-both-different-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (f64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1101 +assert_invalid( + () => instantiate(`(module (func $$type-both-different-value-nums-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1108 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-unreached-select (result i32) + (if (result i64) + (i32.const 0) + (then (select (unreachable) (unreachable) (unreachable))) + (else (i64.const 0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1118 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (i64.const 0)) + (else (select (unreachable) (unreachable) (unreachable))) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1128 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (select (unreachable) (unreachable) (unreachable))) + (else (select (unreachable) (unreachable) (unreachable))) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1139 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (br 0)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1145 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1151 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-last-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (br 0)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1157 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-last-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1164 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1173 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1182 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1191 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1201 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1210 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (nop)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1219 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1228 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0 (nop)) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1238 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1247 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1256 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1265 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1274 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-partial-vs-nums (result i32 i32) + (i32.const 1) + (if (result i32 i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1284 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-partial-vs-nums (result i32 i32) + (i32.const 1) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1295 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty + (if (then)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1303 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-block + (i32.const 0) + (block (if (then))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1312 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-loop + (i32.const 0) + (loop (if (then))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1321 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (if (then)))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1330 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (if (then)) (i32.const 0))) + (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1340 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br + (i32.const 0) + (block (br 0 (if(then))) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1349 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br_if + (i32.const 0) + (block (br_if 0 (if(then)) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1358 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br_table + (i32.const 0) + (block (br_table 0 (if(then))) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1367 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-return + (return (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1375 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-select + (select (if(then)) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1383 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-call + (call 1 (if(then))) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1392 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-condition-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (if(then)) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1408 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-local.set + (local i32) + (local.set 0 (if(then))) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1417 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-local.tee + (local i32) + (local.tee 0 (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1426 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-condition-empty-in-global.set + (global.set $$x (if(then))) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1435 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-condition-empty-in-memory.grow + (memory.grow (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1444 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-condition-empty-in-load + (i32.load (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1453 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-condition-empty-in-store + (i32.store (if(then)) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1463 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-num + (if (param i32) (i32.const 1) (then (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1469 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (if (param i32 f64) (i32.const 1) (then (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1475 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (f32.const 0) (if (param i32) (i32.const 1) (then (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1481 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (f32.const 0) (if (param f32 i32) (i32.const 1) (then (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1487 +assert_invalid( + () => instantiate(`(module (func $$type-param-nested-void-vs-num + (block (if (param i32) (i32.const 1) (then (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1493 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (block (if (param i32 f64) (i32.const 1) (then (drop) (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1499 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (block (f32.const 0) (if (param i32) (i32.const 1) (then (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1505 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (block (f32.const 0) (if (param f32 i32) (i32.const 1) (then (drop) (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1512 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) if (param $$x i32) end) `), + `unexpected token`, +); + +// ./test/core/if.wast:1516 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (if (param $$x i32) (then))) `), + `unexpected token`, +); + +// ./test/core/if.wast:1521 +assert_malformed(() => instantiate(`(func i32.const 0 if end $$l) `), `mismatching label`); + +// ./test/core/if.wast:1525 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1529 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l end) `), + `mismatching label`, +); + +// ./test/core/if.wast:1533 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$l end) `), + `mismatching label`, +); + +// ./test/core/if.wast:1537 +assert_malformed( + () => instantiate(`(func i32.const 0 if else end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1541 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1545 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l1 end $$l2) `), + `mismatching label`, +); + +// ./test/core/if.wast:1549 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1553 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$a end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1557 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$l end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1561 +assert_malformed( + () => instantiate(`(func (if i32.const 0 (then) (else))) `), + `unexpected token`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/obsolete-keywords.wast.js b/js/src/jit-test/tests/wasm/spec/gc/obsolete-keywords.wast.js new file mode 100644 index 0000000000..9f51433917 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/obsolete-keywords.wast.js @@ -0,0 +1,82 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/obsolete-keywords.wast + +// ./test/core/obsolete-keywords.wast:2 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (current_memory))) `), + `unknown operator current_memory`, +); + +// ./test/core/obsolete-keywords.wast:10 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (grow_memory (i32.const 0)))) `), + `unknown operator grow_memory`, +); + +// ./test/core/obsolete-keywords.wast:19 +assert_malformed( + () => instantiate(`(func (local $$i i32) (drop (get_local $$i))) `), + `unknown operator get_local`, +); + +// ./test/core/obsolete-keywords.wast:26 +assert_malformed( + () => instantiate(`(func (local $$i i32) (set_local $$i (i32.const 0))) `), + `unknown operator set_local`, +); + +// ./test/core/obsolete-keywords.wast:33 +assert_malformed( + () => instantiate(`(func (local $$i i32) (drop (tee_local $$i (i32.const 0)))) `), + `unknown operator tee_local`, +); + +// ./test/core/obsolete-keywords.wast:40 +assert_malformed( + () => instantiate(`(global $$g anyfunc (ref.null func)) `), + `unknown operator anyfunc`, +); + +// ./test/core/obsolete-keywords.wast:47 +assert_malformed( + () => instantiate(`(global $$g i32 (i32.const 0)) (func (drop (get_global $$g))) `), + `unknown operator get_global`, +); + +// ./test/core/obsolete-keywords.wast:55 +assert_malformed( + () => instantiate(`(global $$g (mut i32) (i32.const 0)) (func (set_global $$g (i32.const 0))) `), + `unknown operator set_global`, +); + +// ./test/core/obsolete-keywords.wast:63 +assert_malformed( + () => instantiate(`(func (drop (i32.wrap/i64 (i64.const 0)))) `), + `unknown operator i32.wrap/i64`, +); + +// ./test/core/obsolete-keywords.wast:70 +assert_malformed( + () => instantiate(`(func (drop (i32.trunc_s:sat/f32 (f32.const 0)))) `), + `unknown operator i32.trunc_s:sat/f32`, +); + +// ./test/core/obsolete-keywords.wast:77 +assert_malformed( + () => instantiate(`(func (drop (f32x4.convert_s/i32x4 (v128.const i64x2 0 0)))) `), + `unknown operator f32x4.convert_s/i32x4`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/ref_cast.wast.js b/js/src/jit-test/tests/wasm/spec/gc/ref_cast.wast.js new file mode 100644 index 0000000000..e5dcd20a95 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/ref_cast.wast.js @@ -0,0 +1,279 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/ref_cast.wast + +// ./test/core/gc/ref_cast.wast:3 +let $0 = instantiate(`(module + (type $$ft (func)) + (type $$st (struct)) + (type $$at (array i8)) + + (table 10 anyref) + + (elem declare func $$f) + (func $$f) + + (func (export "init") (param $$x externref) + (table.set (i32.const 0) (ref.null any)) + (table.set (i32.const 1) (ref.i31 (i32.const 7))) + (table.set (i32.const 2) (struct.new_default $$st)) + (table.set (i32.const 3) (array.new_default $$at (i32.const 0))) + (table.set (i32.const 4) (any.convert_extern (local.get $$x))) + (table.set (i32.const 5) (ref.null i31)) + (table.set (i32.const 6) (ref.null struct)) + (table.set (i32.const 7) (ref.null none)) + ) + + (func (export "ref_cast_non_null") (param $$i i32) + (drop (ref.as_non_null (table.get (local.get $$i)))) + (drop (ref.cast (ref null any) (table.get (local.get $$i)))) + ) + (func (export "ref_cast_null") (param $$i i32) + (drop (ref.cast anyref (table.get (local.get $$i)))) + (drop (ref.cast structref (table.get (local.get $$i)))) + (drop (ref.cast arrayref (table.get (local.get $$i)))) + (drop (ref.cast i31ref (table.get (local.get $$i)))) + (drop (ref.cast nullref (table.get (local.get $$i)))) + ) + (func (export "ref_cast_i31") (param $$i i32) + (drop (ref.cast (ref i31) (table.get (local.get $$i)))) + (drop (ref.cast i31ref (table.get (local.get $$i)))) + ) + (func (export "ref_cast_struct") (param $$i i32) + (drop (ref.cast (ref struct) (table.get (local.get $$i)))) + (drop (ref.cast structref (table.get (local.get $$i)))) + ) + (func (export "ref_cast_array") (param $$i i32) + (drop (ref.cast (ref array) (table.get (local.get $$i)))) + (drop (ref.cast arrayref (table.get (local.get $$i)))) + ) +)`); + +// ./test/core/gc/ref_cast.wast:49 +invoke($0, `init`, [externref(0)]); + +// ./test/core/gc/ref_cast.wast:51 +assert_trap(() => invoke($0, `ref_cast_non_null`, [0]), `null reference`); + +// ./test/core/gc/ref_cast.wast:52 +assert_return(() => invoke($0, `ref_cast_non_null`, [1]), []); + +// ./test/core/gc/ref_cast.wast:53 +assert_return(() => invoke($0, `ref_cast_non_null`, [2]), []); + +// ./test/core/gc/ref_cast.wast:54 +assert_return(() => invoke($0, `ref_cast_non_null`, [3]), []); + +// ./test/core/gc/ref_cast.wast:55 +assert_return(() => invoke($0, `ref_cast_non_null`, [4]), []); + +// ./test/core/gc/ref_cast.wast:56 +assert_trap(() => invoke($0, `ref_cast_non_null`, [5]), `null reference`); + +// ./test/core/gc/ref_cast.wast:57 +assert_trap(() => invoke($0, `ref_cast_non_null`, [6]), `null reference`); + +// ./test/core/gc/ref_cast.wast:58 +assert_trap(() => invoke($0, `ref_cast_non_null`, [7]), `null reference`); + +// ./test/core/gc/ref_cast.wast:60 +assert_return(() => invoke($0, `ref_cast_null`, [0]), []); + +// ./test/core/gc/ref_cast.wast:61 +assert_trap(() => invoke($0, `ref_cast_null`, [1]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:62 +assert_trap(() => invoke($0, `ref_cast_null`, [2]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:63 +assert_trap(() => invoke($0, `ref_cast_null`, [3]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:64 +assert_trap(() => invoke($0, `ref_cast_null`, [4]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:65 +assert_return(() => invoke($0, `ref_cast_null`, [5]), []); + +// ./test/core/gc/ref_cast.wast:66 +assert_return(() => invoke($0, `ref_cast_null`, [6]), []); + +// ./test/core/gc/ref_cast.wast:67 +assert_return(() => invoke($0, `ref_cast_null`, [7]), []); + +// ./test/core/gc/ref_cast.wast:69 +assert_trap(() => invoke($0, `ref_cast_i31`, [0]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:70 +assert_return(() => invoke($0, `ref_cast_i31`, [1]), []); + +// ./test/core/gc/ref_cast.wast:71 +assert_trap(() => invoke($0, `ref_cast_i31`, [2]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:72 +assert_trap(() => invoke($0, `ref_cast_i31`, [3]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:73 +assert_trap(() => invoke($0, `ref_cast_i31`, [4]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:74 +assert_trap(() => invoke($0, `ref_cast_i31`, [5]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:75 +assert_trap(() => invoke($0, `ref_cast_i31`, [6]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:76 +assert_trap(() => invoke($0, `ref_cast_i31`, [7]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:78 +assert_trap(() => invoke($0, `ref_cast_struct`, [0]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:79 +assert_trap(() => invoke($0, `ref_cast_struct`, [1]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:80 +assert_return(() => invoke($0, `ref_cast_struct`, [2]), []); + +// ./test/core/gc/ref_cast.wast:81 +assert_trap(() => invoke($0, `ref_cast_struct`, [3]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:82 +assert_trap(() => invoke($0, `ref_cast_struct`, [4]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:83 +assert_trap(() => invoke($0, `ref_cast_struct`, [5]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:84 +assert_trap(() => invoke($0, `ref_cast_struct`, [6]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:85 +assert_trap(() => invoke($0, `ref_cast_struct`, [7]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:87 +assert_trap(() => invoke($0, `ref_cast_array`, [0]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:88 +assert_trap(() => invoke($0, `ref_cast_array`, [1]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:89 +assert_trap(() => invoke($0, `ref_cast_array`, [2]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:90 +assert_return(() => invoke($0, `ref_cast_array`, [3]), []); + +// ./test/core/gc/ref_cast.wast:91 +assert_trap(() => invoke($0, `ref_cast_array`, [4]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:92 +assert_trap(() => invoke($0, `ref_cast_array`, [5]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:93 +assert_trap(() => invoke($0, `ref_cast_array`, [6]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:94 +assert_trap(() => invoke($0, `ref_cast_array`, [7]), `cast failure`); + +// ./test/core/gc/ref_cast.wast:99 +let $1 = instantiate(`(module + (type $$t0 (sub (struct))) + (type $$t1 (sub $$t0 (struct (field i32)))) + (type $$t1' (sub $$t0 (struct (field i32)))) + (type $$t2 (sub $$t1 (struct (field i32 i32)))) + (type $$t2' (sub $$t1' (struct (field i32 i32)))) + (type $$t3 (sub $$t0 (struct (field i32 i32)))) + (type $$t0' (sub $$t0 (struct))) + (type $$t4 (sub $$t0' (struct (field i32 i32)))) + + (table 20 (ref null struct)) + + (func $$init + (table.set (i32.const 0) (struct.new_default $$t0)) + (table.set (i32.const 10) (struct.new_default $$t0)) + (table.set (i32.const 1) (struct.new_default $$t1)) + (table.set (i32.const 11) (struct.new_default $$t1')) + (table.set (i32.const 2) (struct.new_default $$t2)) + (table.set (i32.const 12) (struct.new_default $$t2')) + (table.set (i32.const 3) (struct.new_default $$t3)) + (table.set (i32.const 4) (struct.new_default $$t4)) + ) + + (func (export "test-sub") + (call $$init) + + (drop (ref.cast (ref null $$t0) (ref.null struct))) + (drop (ref.cast (ref null $$t0) (table.get (i32.const 0)))) + (drop (ref.cast (ref null $$t0) (table.get (i32.const 1)))) + (drop (ref.cast (ref null $$t0) (table.get (i32.const 2)))) + (drop (ref.cast (ref null $$t0) (table.get (i32.const 3)))) + (drop (ref.cast (ref null $$t0) (table.get (i32.const 4)))) + + (drop (ref.cast (ref null $$t0) (ref.null struct))) + (drop (ref.cast (ref null $$t1) (table.get (i32.const 1)))) + (drop (ref.cast (ref null $$t1) (table.get (i32.const 2)))) + + (drop (ref.cast (ref null $$t0) (ref.null struct))) + (drop (ref.cast (ref null $$t2) (table.get (i32.const 2)))) + + (drop (ref.cast (ref null $$t0) (ref.null struct))) + (drop (ref.cast (ref null $$t3) (table.get (i32.const 3)))) + + (drop (ref.cast (ref null $$t4) (table.get (i32.const 4)))) + + (drop (ref.cast (ref $$t0) (table.get (i32.const 0)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 1)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 2)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 3)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 4)))) + + (drop (ref.cast (ref $$t1) (table.get (i32.const 1)))) + (drop (ref.cast (ref $$t1) (table.get (i32.const 2)))) + + (drop (ref.cast (ref $$t2) (table.get (i32.const 2)))) + + (drop (ref.cast (ref $$t3) (table.get (i32.const 3)))) + + (drop (ref.cast (ref $$t4) (table.get (i32.const 4)))) + ) + + (func (export "test-canon") + (call $$init) + + (drop (ref.cast (ref $$t0) (table.get (i32.const 0)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 1)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 2)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 3)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 4)))) + + (drop (ref.cast (ref $$t0) (table.get (i32.const 10)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 11)))) + (drop (ref.cast (ref $$t0) (table.get (i32.const 12)))) + + (drop (ref.cast (ref $$t1') (table.get (i32.const 1)))) + (drop (ref.cast (ref $$t1') (table.get (i32.const 2)))) + + (drop (ref.cast (ref $$t1) (table.get (i32.const 11)))) + (drop (ref.cast (ref $$t1) (table.get (i32.const 12)))) + + (drop (ref.cast (ref $$t2') (table.get (i32.const 2)))) + + (drop (ref.cast (ref $$t2) (table.get (i32.const 12)))) + ) +)`); + +// ./test/core/gc/ref_cast.wast:185 +invoke($1, `test-sub`, []); + +// ./test/core/gc/ref_cast.wast:186 +invoke($1, `test-canon`, []); diff --git a/js/src/jit-test/tests/wasm/spec/gc/ref_eq.wast.js b/js/src/jit-test/tests/wasm/spec/gc/ref_eq.wast.js new file mode 100644 index 0000000000..098e7a1396 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/ref_eq.wast.js @@ -0,0 +1,351 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/ref_eq.wast + +// ./test/core/gc/ref_eq.wast:1 +let $0 = instantiate(`(module + (type $$st (sub (struct))) + (type $$st' (sub (struct (field i32)))) + (type $$at (array i8)) + (type $$st-sub1 (sub $$st (struct))) + (type $$st-sub2 (sub $$st (struct))) + (type $$st'-sub1 (sub $$st' (struct (field i32)))) + (type $$st'-sub2 (sub $$st' (struct (field i32)))) + + (table 20 (ref null eq)) + + (func (export "init") + (table.set (i32.const 0) (ref.null eq)) + (table.set (i32.const 1) (ref.null i31)) + (table.set (i32.const 2) (ref.i31 (i32.const 7))) + (table.set (i32.const 3) (ref.i31 (i32.const 7))) + (table.set (i32.const 4) (ref.i31 (i32.const 8))) + (table.set (i32.const 5) (struct.new_default $$st)) + (table.set (i32.const 6) (struct.new_default $$st)) + (table.set (i32.const 7) (array.new_default $$at (i32.const 0))) + (table.set (i32.const 8) (array.new_default $$at (i32.const 0))) + ) + + (func (export "eq") (param $$i i32) (param $$j i32) (result i32) + (ref.eq (table.get (local.get $$i)) (table.get (local.get $$j))) + ) +)`); + +// ./test/core/gc/ref_eq.wast:29 +invoke($0, `init`, []); + +// ./test/core/gc/ref_eq.wast:31 +assert_return(() => invoke($0, `eq`, [0, 0]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:32 +assert_return(() => invoke($0, `eq`, [0, 1]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:33 +assert_return(() => invoke($0, `eq`, [0, 2]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:34 +assert_return(() => invoke($0, `eq`, [0, 3]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:35 +assert_return(() => invoke($0, `eq`, [0, 4]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:36 +assert_return(() => invoke($0, `eq`, [0, 5]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:37 +assert_return(() => invoke($0, `eq`, [0, 6]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:38 +assert_return(() => invoke($0, `eq`, [0, 7]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:39 +assert_return(() => invoke($0, `eq`, [0, 8]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:41 +assert_return(() => invoke($0, `eq`, [1, 0]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:42 +assert_return(() => invoke($0, `eq`, [1, 1]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:43 +assert_return(() => invoke($0, `eq`, [1, 2]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:44 +assert_return(() => invoke($0, `eq`, [1, 3]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:45 +assert_return(() => invoke($0, `eq`, [1, 4]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:46 +assert_return(() => invoke($0, `eq`, [1, 5]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:47 +assert_return(() => invoke($0, `eq`, [1, 6]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:48 +assert_return(() => invoke($0, `eq`, [1, 7]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:49 +assert_return(() => invoke($0, `eq`, [1, 8]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:51 +assert_return(() => invoke($0, `eq`, [2, 0]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:52 +assert_return(() => invoke($0, `eq`, [2, 1]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:53 +assert_return(() => invoke($0, `eq`, [2, 2]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:54 +assert_return(() => invoke($0, `eq`, [2, 3]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:55 +assert_return(() => invoke($0, `eq`, [2, 4]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:56 +assert_return(() => invoke($0, `eq`, [2, 5]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:57 +assert_return(() => invoke($0, `eq`, [2, 6]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:58 +assert_return(() => invoke($0, `eq`, [2, 7]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:59 +assert_return(() => invoke($0, `eq`, [2, 8]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:61 +assert_return(() => invoke($0, `eq`, [3, 0]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:62 +assert_return(() => invoke($0, `eq`, [3, 1]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:63 +assert_return(() => invoke($0, `eq`, [3, 2]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:64 +assert_return(() => invoke($0, `eq`, [3, 3]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:65 +assert_return(() => invoke($0, `eq`, [3, 4]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:66 +assert_return(() => invoke($0, `eq`, [3, 5]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:67 +assert_return(() => invoke($0, `eq`, [3, 6]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:68 +assert_return(() => invoke($0, `eq`, [3, 7]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:69 +assert_return(() => invoke($0, `eq`, [3, 8]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:71 +assert_return(() => invoke($0, `eq`, [4, 0]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:72 +assert_return(() => invoke($0, `eq`, [4, 1]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:73 +assert_return(() => invoke($0, `eq`, [4, 2]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:74 +assert_return(() => invoke($0, `eq`, [4, 3]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:75 +assert_return(() => invoke($0, `eq`, [4, 4]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:76 +assert_return(() => invoke($0, `eq`, [4, 5]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:77 +assert_return(() => invoke($0, `eq`, [4, 6]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:78 +assert_return(() => invoke($0, `eq`, [4, 7]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:79 +assert_return(() => invoke($0, `eq`, [4, 8]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:81 +assert_return(() => invoke($0, `eq`, [5, 0]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:82 +assert_return(() => invoke($0, `eq`, [5, 1]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:83 +assert_return(() => invoke($0, `eq`, [5, 2]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:84 +assert_return(() => invoke($0, `eq`, [5, 3]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:85 +assert_return(() => invoke($0, `eq`, [5, 4]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:86 +assert_return(() => invoke($0, `eq`, [5, 5]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:87 +assert_return(() => invoke($0, `eq`, [5, 6]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:88 +assert_return(() => invoke($0, `eq`, [5, 7]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:89 +assert_return(() => invoke($0, `eq`, [5, 8]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:91 +assert_return(() => invoke($0, `eq`, [6, 0]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:92 +assert_return(() => invoke($0, `eq`, [6, 1]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:93 +assert_return(() => invoke($0, `eq`, [6, 2]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:94 +assert_return(() => invoke($0, `eq`, [6, 3]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:95 +assert_return(() => invoke($0, `eq`, [6, 4]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:96 +assert_return(() => invoke($0, `eq`, [6, 5]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:97 +assert_return(() => invoke($0, `eq`, [6, 6]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:98 +assert_return(() => invoke($0, `eq`, [6, 7]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:99 +assert_return(() => invoke($0, `eq`, [6, 8]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:101 +assert_return(() => invoke($0, `eq`, [7, 0]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:102 +assert_return(() => invoke($0, `eq`, [7, 1]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:103 +assert_return(() => invoke($0, `eq`, [7, 2]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:104 +assert_return(() => invoke($0, `eq`, [7, 3]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:105 +assert_return(() => invoke($0, `eq`, [7, 4]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:106 +assert_return(() => invoke($0, `eq`, [7, 5]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:107 +assert_return(() => invoke($0, `eq`, [7, 6]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:108 +assert_return(() => invoke($0, `eq`, [7, 7]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:109 +assert_return(() => invoke($0, `eq`, [7, 8]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:111 +assert_return(() => invoke($0, `eq`, [8, 0]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:112 +assert_return(() => invoke($0, `eq`, [8, 1]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:113 +assert_return(() => invoke($0, `eq`, [8, 2]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:114 +assert_return(() => invoke($0, `eq`, [8, 3]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:115 +assert_return(() => invoke($0, `eq`, [8, 4]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:116 +assert_return(() => invoke($0, `eq`, [8, 5]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:117 +assert_return(() => invoke($0, `eq`, [8, 6]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:118 +assert_return(() => invoke($0, `eq`, [8, 7]), [value("i32", 0)]); + +// ./test/core/gc/ref_eq.wast:119 +assert_return(() => invoke($0, `eq`, [8, 8]), [value("i32", 1)]); + +// ./test/core/gc/ref_eq.wast:121 +assert_invalid( + () => instantiate(`(module + (func (export "eq") (param $$r (ref any)) (result i32) + (ref.eq (local.get $$r) (local.get $$r)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/ref_eq.wast:129 +assert_invalid( + () => instantiate(`(module + (func (export "eq") (param $$r (ref null any)) (result i32) + (ref.eq (local.get $$r) (local.get $$r)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/ref_eq.wast:137 +assert_invalid( + () => instantiate(`(module + (func (export "eq") (param $$r (ref func)) (result i32) + (ref.eq (local.get $$r) (local.get $$r)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/ref_eq.wast:145 +assert_invalid( + () => instantiate(`(module + (func (export "eq") (param $$r (ref null func)) (result i32) + (ref.eq (local.get $$r) (local.get $$r)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/ref_eq.wast:153 +assert_invalid( + () => instantiate(`(module + (func (export "eq") (param $$r (ref extern)) (result i32) + (ref.eq (local.get $$r) (local.get $$r)) + ) + )`), + `type mismatch`, +); + +// ./test/core/gc/ref_eq.wast:161 +assert_invalid( + () => instantiate(`(module + (func (export "eq") (param $$r (ref null extern)) (result i32) + (ref.eq (local.get $$r) (local.get $$r)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/ref_null.wast.js b/js/src/jit-test/tests/wasm/spec/gc/ref_null.wast.js new file mode 100644 index 0000000000..46f1e2d50a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/ref_null.wast.js @@ -0,0 +1,127 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/ref_null.wast + +// ./test/core/ref_null.wast:1 +let $0 = instantiate(`(module + (type $$t (func)) + (func (export "anyref") (result anyref) (ref.null any)) + (func (export "funcref") (result funcref) (ref.null func)) + (func (export "ref") (result (ref null $$t)) (ref.null $$t)) + + (global anyref (ref.null any)) + (global funcref (ref.null func)) + (global (ref null $$t) (ref.null $$t)) +)`); + +// ./test/core/ref_null.wast:12 +assert_return(() => invoke($0, `anyref`, []), [value('anyref', null)]); + +// ./test/core/ref_null.wast:13 +assert_return(() => invoke($0, `funcref`, []), [value('anyfunc', null)]); + +// ./test/core/ref_null.wast:14 +assert_return(() => invoke($0, `ref`, []), [null]); + +// ./test/core/ref_null.wast:17 +let $1 = instantiate(`(module + (type $$t (func)) + (global $$null nullref (ref.null none)) + (global $$nullfunc nullfuncref (ref.null nofunc)) + (global $$nullextern nullexternref (ref.null noextern)) + (func (export "anyref") (result anyref) (global.get $$null)) + (func (export "nullref") (result nullref) (global.get $$null)) + (func (export "funcref") (result funcref) (global.get $$nullfunc)) + (func (export "nullfuncref") (result nullfuncref) (global.get $$nullfunc)) + (func (export "externref") (result externref) (global.get $$nullextern)) + (func (export "nullexternref") (result nullexternref) (global.get $$nullextern)) + (func (export "ref") (result (ref null $$t)) (global.get $$nullfunc)) + + (global anyref (ref.null any)) + (global anyref (ref.null none)) + (global funcref (ref.null func)) + (global funcref (ref.null nofunc)) + (global externref (ref.null extern)) + (global externref (ref.null noextern)) + (global nullref (ref.null none)) + (global nullfuncref (ref.null nofunc)) + (global nullexternref (ref.null noextern)) + (global (ref null $$t) (ref.null $$t)) + (global (ref null $$t) (ref.null nofunc)) +)`); + +// ./test/core/ref_null.wast:43 +assert_return(() => invoke($1, `anyref`, []), [value('anyref', null)]); + +// ./test/core/ref_null.wast:44 +assert_return(() => invoke($1, `anyref`, []), [value('nullref', null)]); + +// ./test/core/ref_null.wast:45 +assert_return(() => invoke($1, `anyref`, []), [null]); + +// ./test/core/ref_null.wast:46 +assert_return(() => invoke($1, `nullref`, []), [value('anyref', null)]); + +// ./test/core/ref_null.wast:47 +assert_return(() => invoke($1, `nullref`, []), [value('nullref', null)]); + +// ./test/core/ref_null.wast:48 +assert_return(() => invoke($1, `nullref`, []), [null]); + +// ./test/core/ref_null.wast:49 +assert_return(() => invoke($1, `funcref`, []), [value('anyfunc', null)]); + +// ./test/core/ref_null.wast:50 +assert_return(() => invoke($1, `funcref`, []), [value('nullfuncref', null)]); + +// ./test/core/ref_null.wast:51 +assert_return(() => invoke($1, `funcref`, []), [null]); + +// ./test/core/ref_null.wast:52 +assert_return(() => invoke($1, `nullfuncref`, []), [value('anyfunc', null)]); + +// ./test/core/ref_null.wast:53 +assert_return(() => invoke($1, `nullfuncref`, []), [value('nullfuncref', null)]); + +// ./test/core/ref_null.wast:54 +assert_return(() => invoke($1, `nullfuncref`, []), [null]); + +// ./test/core/ref_null.wast:55 +assert_return(() => invoke($1, `externref`, []), [value('externref', null)]); + +// ./test/core/ref_null.wast:56 +assert_return(() => invoke($1, `externref`, []), [value('nullexternref', null)]); + +// ./test/core/ref_null.wast:57 +assert_return(() => invoke($1, `externref`, []), [null]); + +// ./test/core/ref_null.wast:58 +assert_return(() => invoke($1, `nullexternref`, []), [value('externref', null)]); + +// ./test/core/ref_null.wast:59 +assert_return(() => invoke($1, `nullexternref`, []), [value('nullexternref', null)]); + +// ./test/core/ref_null.wast:60 +assert_return(() => invoke($1, `nullexternref`, []), [null]); + +// ./test/core/ref_null.wast:61 +assert_return(() => invoke($1, `ref`, []), [value('anyfunc', null)]); + +// ./test/core/ref_null.wast:62 +assert_return(() => invoke($1, `ref`, []), [value('nullfuncref', null)]); + +// ./test/core/ref_null.wast:63 +assert_return(() => invoke($1, `ref`, []), [null]); diff --git a/js/src/jit-test/tests/wasm/spec/gc/ref_test.wast.js b/js/src/jit-test/tests/wasm/spec/gc/ref_test.wast.js new file mode 100644 index 0000000000..fc0f2c0a4c --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/ref_test.wast.js @@ -0,0 +1,470 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/ref_test.wast + +// ./test/core/gc/ref_test.wast:3 +let $0 = instantiate(`(module + (type $$ft (func)) + (type $$st (struct)) + (type $$at (array i8)) + + (table $$ta 10 anyref) + (table $$tf 10 funcref) + (table $$te 10 externref) + + (elem declare func $$f) + (func $$f) + + (func (export "init") (param $$x externref) + (table.set $$ta (i32.const 0) (ref.null any)) + (table.set $$ta (i32.const 1) (ref.null struct)) + (table.set $$ta (i32.const 2) (ref.null none)) + (table.set $$ta (i32.const 3) (ref.i31 (i32.const 7))) + (table.set $$ta (i32.const 4) (struct.new_default $$st)) + (table.set $$ta (i32.const 5) (array.new_default $$at (i32.const 0))) + (table.set $$ta (i32.const 6) (any.convert_extern (local.get $$x))) + (table.set $$ta (i32.const 7) (any.convert_extern (ref.null extern))) + + (table.set $$tf (i32.const 0) (ref.null nofunc)) + (table.set $$tf (i32.const 1) (ref.null func)) + (table.set $$tf (i32.const 2) (ref.func $$f)) + + (table.set $$te (i32.const 0) (ref.null noextern)) + (table.set $$te (i32.const 1) (ref.null extern)) + (table.set $$te (i32.const 2) (local.get $$x)) + (table.set $$te (i32.const 3) (extern.convert_any (ref.i31 (i32.const 8)))) + (table.set $$te (i32.const 4) (extern.convert_any (struct.new_default $$st))) + (table.set $$te (i32.const 5) (extern.convert_any (ref.null any))) + ) + + (func (export "ref_test_null_data") (param $$i i32) (result i32) + (i32.add + (ref.is_null (table.get $$ta (local.get $$i))) + (ref.test nullref (table.get $$ta (local.get $$i))) + ) + ) + (func (export "ref_test_any") (param $$i i32) (result i32) + (i32.add + (ref.test (ref any) (table.get $$ta (local.get $$i))) + (ref.test anyref (table.get $$ta (local.get $$i))) + ) + ) + (func (export "ref_test_eq") (param $$i i32) (result i32) + (i32.add + (ref.test (ref eq) (table.get $$ta (local.get $$i))) + (ref.test eqref (table.get $$ta (local.get $$i))) + ) + ) + (func (export "ref_test_i31") (param $$i i32) (result i32) + (i32.add + (ref.test (ref i31) (table.get $$ta (local.get $$i))) + (ref.test i31ref (table.get $$ta (local.get $$i))) + ) + ) + (func (export "ref_test_struct") (param $$i i32) (result i32) + (i32.add + (ref.test (ref struct) (table.get $$ta (local.get $$i))) + (ref.test structref (table.get $$ta (local.get $$i))) + ) + ) + (func (export "ref_test_array") (param $$i i32) (result i32) + (i32.add + (ref.test (ref array) (table.get $$ta (local.get $$i))) + (ref.test arrayref (table.get $$ta (local.get $$i))) + ) + ) + + (func (export "ref_test_null_func") (param $$i i32) (result i32) + (i32.add + (ref.is_null (table.get $$tf (local.get $$i))) + (ref.test (ref null nofunc) (table.get $$tf (local.get $$i))) + ) + ) + (func (export "ref_test_func") (param $$i i32) (result i32) + (i32.add + (ref.test (ref func) (table.get $$tf (local.get $$i))) + (ref.test funcref (table.get $$tf (local.get $$i))) + ) + ) + + (func (export "ref_test_null_extern") (param $$i i32) (result i32) + (i32.add + (ref.is_null (table.get $$te (local.get $$i))) + (ref.test (ref null noextern) (table.get $$te (local.get $$i))) + ) + ) + (func (export "ref_test_extern") (param $$i i32) (result i32) + (i32.add + (ref.test (ref extern) (table.get $$te (local.get $$i))) + (ref.test externref (table.get $$te (local.get $$i))) + ) + ) +)`); + +// ./test/core/gc/ref_test.wast:101 +invoke($0, `init`, [externref(0)]); + +// ./test/core/gc/ref_test.wast:103 +assert_return(() => invoke($0, `ref_test_null_data`, [0]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:104 +assert_return(() => invoke($0, `ref_test_null_data`, [1]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:105 +assert_return(() => invoke($0, `ref_test_null_data`, [2]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:106 +assert_return(() => invoke($0, `ref_test_null_data`, [3]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:107 +assert_return(() => invoke($0, `ref_test_null_data`, [4]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:108 +assert_return(() => invoke($0, `ref_test_null_data`, [5]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:109 +assert_return(() => invoke($0, `ref_test_null_data`, [6]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:110 +assert_return(() => invoke($0, `ref_test_null_data`, [7]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:112 +assert_return(() => invoke($0, `ref_test_any`, [0]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:113 +assert_return(() => invoke($0, `ref_test_any`, [1]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:114 +assert_return(() => invoke($0, `ref_test_any`, [2]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:115 +assert_return(() => invoke($0, `ref_test_any`, [3]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:116 +assert_return(() => invoke($0, `ref_test_any`, [4]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:117 +assert_return(() => invoke($0, `ref_test_any`, [5]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:118 +assert_return(() => invoke($0, `ref_test_any`, [6]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:119 +assert_return(() => invoke($0, `ref_test_any`, [7]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:121 +assert_return(() => invoke($0, `ref_test_eq`, [0]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:122 +assert_return(() => invoke($0, `ref_test_eq`, [1]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:123 +assert_return(() => invoke($0, `ref_test_eq`, [2]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:124 +assert_return(() => invoke($0, `ref_test_eq`, [3]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:125 +assert_return(() => invoke($0, `ref_test_eq`, [4]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:126 +assert_return(() => invoke($0, `ref_test_eq`, [5]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:127 +assert_return(() => invoke($0, `ref_test_eq`, [6]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:128 +assert_return(() => invoke($0, `ref_test_eq`, [7]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:130 +assert_return(() => invoke($0, `ref_test_i31`, [0]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:131 +assert_return(() => invoke($0, `ref_test_i31`, [1]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:132 +assert_return(() => invoke($0, `ref_test_i31`, [2]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:133 +assert_return(() => invoke($0, `ref_test_i31`, [3]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:134 +assert_return(() => invoke($0, `ref_test_i31`, [4]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:135 +assert_return(() => invoke($0, `ref_test_i31`, [5]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:136 +assert_return(() => invoke($0, `ref_test_i31`, [6]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:137 +assert_return(() => invoke($0, `ref_test_i31`, [7]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:139 +assert_return(() => invoke($0, `ref_test_struct`, [0]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:140 +assert_return(() => invoke($0, `ref_test_struct`, [1]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:141 +assert_return(() => invoke($0, `ref_test_struct`, [2]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:142 +assert_return(() => invoke($0, `ref_test_struct`, [3]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:143 +assert_return(() => invoke($0, `ref_test_struct`, [4]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:144 +assert_return(() => invoke($0, `ref_test_struct`, [5]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:145 +assert_return(() => invoke($0, `ref_test_struct`, [6]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:146 +assert_return(() => invoke($0, `ref_test_struct`, [7]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:148 +assert_return(() => invoke($0, `ref_test_array`, [0]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:149 +assert_return(() => invoke($0, `ref_test_array`, [1]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:150 +assert_return(() => invoke($0, `ref_test_array`, [2]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:151 +assert_return(() => invoke($0, `ref_test_array`, [3]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:152 +assert_return(() => invoke($0, `ref_test_array`, [4]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:153 +assert_return(() => invoke($0, `ref_test_array`, [5]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:154 +assert_return(() => invoke($0, `ref_test_array`, [6]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:155 +assert_return(() => invoke($0, `ref_test_array`, [7]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:157 +assert_return(() => invoke($0, `ref_test_null_func`, [0]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:158 +assert_return(() => invoke($0, `ref_test_null_func`, [1]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:159 +assert_return(() => invoke($0, `ref_test_null_func`, [2]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:161 +assert_return(() => invoke($0, `ref_test_func`, [0]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:162 +assert_return(() => invoke($0, `ref_test_func`, [1]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:163 +assert_return(() => invoke($0, `ref_test_func`, [2]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:165 +assert_return(() => invoke($0, `ref_test_null_extern`, [0]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:166 +assert_return(() => invoke($0, `ref_test_null_extern`, [1]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:167 +assert_return(() => invoke($0, `ref_test_null_extern`, [2]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:168 +assert_return(() => invoke($0, `ref_test_null_extern`, [3]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:169 +assert_return(() => invoke($0, `ref_test_null_extern`, [4]), [value("i32", 0)]); + +// ./test/core/gc/ref_test.wast:170 +assert_return(() => invoke($0, `ref_test_null_extern`, [5]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:172 +assert_return(() => invoke($0, `ref_test_extern`, [0]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:173 +assert_return(() => invoke($0, `ref_test_extern`, [1]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:174 +assert_return(() => invoke($0, `ref_test_extern`, [2]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:175 +assert_return(() => invoke($0, `ref_test_extern`, [3]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:176 +assert_return(() => invoke($0, `ref_test_extern`, [4]), [value("i32", 2)]); + +// ./test/core/gc/ref_test.wast:177 +assert_return(() => invoke($0, `ref_test_extern`, [5]), [value("i32", 1)]); + +// ./test/core/gc/ref_test.wast:182 +let $1 = instantiate(`(module + (type $$t0 (sub (struct))) + (type $$t1 (sub $$t0 (struct (field i32)))) + (type $$t1' (sub $$t0 (struct (field i32)))) + (type $$t2 (sub $$t1 (struct (field i32 i32)))) + (type $$t2' (sub $$t1' (struct (field i32 i32)))) + (type $$t3 (sub $$t0 (struct (field i32 i32)))) + (type $$t0' (sub $$t0 (struct))) + (type $$t4 (sub $$t0' (struct (field i32 i32)))) + + (table 20 (ref null struct)) + + (func $$init + (table.set (i32.const 0) (struct.new_default $$t0)) + (table.set (i32.const 10) (struct.new_default $$t0)) + (table.set (i32.const 1) (struct.new_default $$t1)) + (table.set (i32.const 11) (struct.new_default $$t1')) + (table.set (i32.const 2) (struct.new_default $$t2)) + (table.set (i32.const 12) (struct.new_default $$t2')) + (table.set (i32.const 3) (struct.new_default $$t3)) + (table.set (i32.const 4) (struct.new_default $$t4)) + ) + + (func (export "test-sub") + (call $$init) + (block $$l + ;; must hold + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (ref.null struct)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (ref.null $$t0)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (ref.null $$t1)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (ref.null $$t2)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (ref.null $$t3)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (ref.null $$t4)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (table.get (i32.const 0))))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (table.get (i32.const 1))))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (table.get (i32.const 2))))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (table.get (i32.const 3))))) + (br_if $$l (i32.eqz (ref.test (ref null $$t0) (table.get (i32.const 4))))) + + (br_if $$l (i32.eqz (ref.test (ref null $$t1) (ref.null struct)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t1) (ref.null $$t0)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t1) (ref.null $$t1)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t1) (ref.null $$t2)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t1) (ref.null $$t3)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t1) (ref.null $$t4)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t1) (table.get (i32.const 1))))) + (br_if $$l (i32.eqz (ref.test (ref null $$t1) (table.get (i32.const 2))))) + + (br_if $$l (i32.eqz (ref.test (ref null $$t2) (ref.null struct)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t2) (ref.null $$t0)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t2) (ref.null $$t1)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t2) (ref.null $$t2)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t2) (ref.null $$t3)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t2) (ref.null $$t4)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t2) (table.get (i32.const 2))))) + + (br_if $$l (i32.eqz (ref.test (ref null $$t3) (ref.null struct)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t3) (ref.null $$t0)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t3) (ref.null $$t1)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t3) (ref.null $$t2)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t3) (ref.null $$t3)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t3) (ref.null $$t4)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t3) (table.get (i32.const 3))))) + + (br_if $$l (i32.eqz (ref.test (ref null $$t4) (ref.null struct)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t4) (ref.null $$t0)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t4) (ref.null $$t1)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t4) (ref.null $$t2)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t4) (ref.null $$t3)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t4) (ref.null $$t4)))) + (br_if $$l (i32.eqz (ref.test (ref null $$t4) (table.get (i32.const 4))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 0))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 1))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 2))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 3))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 4))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t1) (table.get (i32.const 1))))) + (br_if $$l (i32.eqz (ref.test (ref $$t1) (table.get (i32.const 2))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t2) (table.get (i32.const 2))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t3) (table.get (i32.const 3))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t4) (table.get (i32.const 4))))) + + ;; must not hold + (br_if $$l (ref.test (ref $$t0) (ref.null struct))) + (br_if $$l (ref.test (ref $$t1) (ref.null struct))) + (br_if $$l (ref.test (ref $$t2) (ref.null struct))) + (br_if $$l (ref.test (ref $$t3) (ref.null struct))) + (br_if $$l (ref.test (ref $$t4) (ref.null struct))) + + (br_if $$l (ref.test (ref $$t1) (table.get (i32.const 0)))) + (br_if $$l (ref.test (ref $$t1) (table.get (i32.const 3)))) + (br_if $$l (ref.test (ref $$t1) (table.get (i32.const 4)))) + + (br_if $$l (ref.test (ref $$t2) (table.get (i32.const 0)))) + (br_if $$l (ref.test (ref $$t2) (table.get (i32.const 1)))) + (br_if $$l (ref.test (ref $$t2) (table.get (i32.const 3)))) + (br_if $$l (ref.test (ref $$t2) (table.get (i32.const 4)))) + + (br_if $$l (ref.test (ref $$t3) (table.get (i32.const 0)))) + (br_if $$l (ref.test (ref $$t3) (table.get (i32.const 1)))) + (br_if $$l (ref.test (ref $$t3) (table.get (i32.const 2)))) + (br_if $$l (ref.test (ref $$t3) (table.get (i32.const 4)))) + + (br_if $$l (ref.test (ref $$t4) (table.get (i32.const 0)))) + (br_if $$l (ref.test (ref $$t4) (table.get (i32.const 1)))) + (br_if $$l (ref.test (ref $$t4) (table.get (i32.const 2)))) + (br_if $$l (ref.test (ref $$t4) (table.get (i32.const 3)))) + + (return) + ) + (unreachable) + ) + + (func (export "test-canon") + (call $$init) + (block $$l + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 0))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 1))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 2))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 3))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 4))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 10))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 11))))) + (br_if $$l (i32.eqz (ref.test (ref $$t0) (table.get (i32.const 12))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t1') (table.get (i32.const 1))))) + (br_if $$l (i32.eqz (ref.test (ref $$t1') (table.get (i32.const 2))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t1) (table.get (i32.const 11))))) + (br_if $$l (i32.eqz (ref.test (ref $$t1) (table.get (i32.const 12))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t2') (table.get (i32.const 2))))) + + (br_if $$l (i32.eqz (ref.test (ref $$t2) (table.get (i32.const 12))))) + + (return) + ) + (unreachable) + ) +)`); + +// ./test/core/gc/ref_test.wast:329 +assert_return(() => invoke($1, `test-sub`, []), []); + +// ./test/core/gc/ref_test.wast:330 +assert_return(() => invoke($1, `test-canon`, []), []); diff --git a/js/src/jit-test/tests/wasm/spec/gc/struct.wast.js b/js/src/jit-test/tests/wasm/spec/gc/struct.wast.js new file mode 100644 index 0000000000..24b57b8466 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/struct.wast.js @@ -0,0 +1,271 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/struct.wast + +// ./test/core/gc/struct.wast:3 +let $0 = instantiate(`(module + (type (struct)) + (type (struct (field))) + (type (struct (field i8))) + (type (struct (field i8 i8 i8 i8))) + (type (struct (field $$x1 i32) (field $$y1 i32))) + (type (struct (field i8 i16 i32 i64 f32 f64 anyref funcref (ref 0) (ref null 1)))) + (type (struct (field i32 i64 i8) (field) (field) (field (ref null i31) anyref))) + (type (struct (field $$x2 i32) (field f32 f64) (field $$y2 i32))) +)`); + +// ./test/core/gc/struct.wast:15 +assert_malformed( + () => instantiate(`(type (struct (field $$x i32) (field $$x i32))) `), + `duplicate field`, +); + +// ./test/core/gc/struct.wast:25 +let $1 = instantiate(`(module + (rec + (type $$s0 (struct (field (ref 0) (ref 1) (ref $$s0) (ref $$s1)))) + (type $$s1 (struct (field (ref 0) (ref 1) (ref $$s0) (ref $$s1)))) + ) + + (func (param (ref $$forward))) + + (type $$forward (struct)) +)`); + +// ./test/core/gc/struct.wast:36 +assert_invalid( + () => instantiate(`(module (type (struct (field (ref 1)))))`), + `unknown type`, +); + +// ./test/core/gc/struct.wast:40 +assert_invalid( + () => instantiate(`(module (type (struct (field (mut (ref 1))))))`), + `unknown type`, +); + +// ./test/core/gc/struct.wast:48 +let $2 = instantiate(`(module + (type (struct (field $$x i32))) + (type $$t1 (struct (field i32) (field $$x f32))) + (type $$t2 (struct (field i32 i32) (field $$x i64))) + + (func (param (ref 0)) (result i32) (struct.get 0 $$x (local.get 0))) + (func (param (ref $$t1)) (result f32) (struct.get 1 $$x (local.get 0))) + (func (param (ref $$t2)) (result i64) (struct.get $$t2 $$x (local.get 0))) +)`); + +// ./test/core/gc/struct.wast:58 +assert_invalid( + () => instantiate(`(module + (type (struct (field $$x i64))) + (type $$t (struct (field $$x i32))) + (func (param (ref 0)) (result i32) (struct.get 0 $$x (local.get 0))) + )`), + `type mismatch`, +); + +// ./test/core/gc/struct.wast:70 +let $3 = instantiate(`(module + (type $$vec (struct (field f32) (field $$y (mut f32)) (field $$z f32))) + + (global (ref $$vec) (struct.new $$vec (f32.const 1) (f32.const 2) (f32.const 3))) + (global (ref $$vec) (struct.new_default $$vec)) + + (func (export "new") (result anyref) + (struct.new_default $$vec) + ) + + (func $$get_0_0 (param $$v (ref $$vec)) (result f32) + (struct.get 0 0 (local.get $$v)) + ) + (func (export "get_0_0") (result f32) + (call $$get_0_0 (struct.new_default $$vec)) + ) + (func $$get_vec_0 (param $$v (ref $$vec)) (result f32) + (struct.get $$vec 0 (local.get $$v)) + ) + (func (export "get_vec_0") (result f32) + (call $$get_vec_0 (struct.new_default $$vec)) + ) + (func $$get_0_y (param $$v (ref $$vec)) (result f32) + (struct.get 0 $$y (local.get $$v)) + ) + (func (export "get_0_y") (result f32) + (call $$get_0_y (struct.new_default $$vec)) + ) + (func $$get_vec_y (param $$v (ref $$vec)) (result f32) + (struct.get $$vec $$y (local.get $$v)) + ) + (func (export "get_vec_y") (result f32) + (call $$get_vec_y (struct.new_default $$vec)) + ) + + (func $$set_get_y (param $$v (ref $$vec)) (param $$y f32) (result f32) + (struct.set $$vec $$y (local.get $$v) (local.get $$y)) + (struct.get $$vec $$y (local.get $$v)) + ) + (func (export "set_get_y") (param $$y f32) (result f32) + (call $$set_get_y (struct.new_default $$vec) (local.get $$y)) + ) + + (func $$set_get_1 (param $$v (ref $$vec)) (param $$y f32) (result f32) + (struct.set $$vec 1 (local.get $$v) (local.get $$y)) + (struct.get $$vec $$y (local.get $$v)) + ) + (func (export "set_get_1") (param $$y f32) (result f32) + (call $$set_get_1 (struct.new_default $$vec) (local.get $$y)) + ) +)`); + +// ./test/core/gc/struct.wast:122 +assert_return(() => invoke($3, `new`, []), [new RefWithType('structref')]); + +// ./test/core/gc/struct.wast:124 +assert_return(() => invoke($3, `get_0_0`, []), [value("f32", 0)]); + +// ./test/core/gc/struct.wast:125 +assert_return(() => invoke($3, `get_vec_0`, []), [value("f32", 0)]); + +// ./test/core/gc/struct.wast:126 +assert_return(() => invoke($3, `get_0_y`, []), [value("f32", 0)]); + +// ./test/core/gc/struct.wast:127 +assert_return(() => invoke($3, `get_vec_y`, []), [value("f32", 0)]); + +// ./test/core/gc/struct.wast:129 +assert_return(() => invoke($3, `set_get_y`, [value("f32", 7)]), [value("f32", 7)]); + +// ./test/core/gc/struct.wast:130 +assert_return(() => invoke($3, `set_get_1`, [value("f32", 7)]), [value("f32", 7)]); + +// ./test/core/gc/struct.wast:132 +assert_invalid( + () => instantiate(`(module + (type $$s (struct (field i64))) + (func (export "struct.set-immutable") (param $$s (ref $$s)) + (struct.set $$s 0 (local.get $$s) (i64.const 1)) + ) + )`), + `field is immutable`, +); + +// ./test/core/gc/struct.wast:145 +let $4 = instantiate(`(module + (type $$t (struct (field i32 (mut i32)))) + (func (export "struct.get-null") + (local (ref null $$t)) (drop (struct.get $$t 1 (local.get 0))) + ) + (func (export "struct.set-null") + (local (ref null $$t)) (struct.set $$t 1 (local.get 0) (i32.const 0)) + ) +)`); + +// ./test/core/gc/struct.wast:155 +assert_trap(() => invoke($4, `struct.get-null`, []), `null structure reference`); + +// ./test/core/gc/struct.wast:156 +assert_trap(() => invoke($4, `struct.set-null`, []), `null structure reference`); + +// ./test/core/gc/struct.wast:160 +let $5 = instantiate(`(module + (type $$s (struct (field i8) (field (mut i8)) (field i16) (field (mut i16)))) + + (global (export "g0") (ref $$s) (struct.new $$s (i32.const 0) (i32.const 1) (i32.const 2) (i32.const 3))) + (global (export "g1") (ref $$s) (struct.new $$s (i32.const 254) (i32.const 255) (i32.const 65534) (i32.const 65535))) + + (func (export "get_packed_g0_0") (result i32 i32) + (struct.get_s 0 0 (global.get 0)) + (struct.get_u 0 0 (global.get 0)) + ) + + (func (export "get_packed_g1_0") (result i32 i32) + (struct.get_s 0 0 (global.get 1)) + (struct.get_u 0 0 (global.get 1)) + ) + + (func (export "get_packed_g0_1") (result i32 i32) + (struct.get_s 0 1 (global.get 0)) + (struct.get_u 0 1 (global.get 0)) + ) + + (func (export "get_packed_g1_1") (result i32 i32) + (struct.get_s 0 1 (global.get 1)) + (struct.get_u 0 1 (global.get 1)) + ) + + (func (export "get_packed_g0_2") (result i32 i32) + (struct.get_s 0 2 (global.get 0)) + (struct.get_u 0 2 (global.get 0)) + ) + + (func (export "get_packed_g1_2") (result i32 i32) + (struct.get_s 0 2 (global.get 1)) + (struct.get_u 0 2 (global.get 1)) + ) + + (func (export "get_packed_g0_3") (result i32 i32) + (struct.get_s 0 3 (global.get 0)) + (struct.get_u 0 3 (global.get 0)) + ) + + (func (export "get_packed_g1_3") (result i32 i32) + (struct.get_s 0 3 (global.get 1)) + (struct.get_u 0 3 (global.get 1)) + ) + + (func (export "set_get_packed_g0_1") (param i32) (result i32 i32) + (struct.set 0 1 (global.get 0) (local.get 0)) + (struct.get_s 0 1 (global.get 0)) + (struct.get_u 0 1 (global.get 0)) + ) + + (func (export "set_get_packed_g0_3") (param i32) (result i32 i32) + (struct.set 0 3 (global.get 0) (local.get 0)) + (struct.get_s 0 3 (global.get 0)) + (struct.get_u 0 3 (global.get 0)) + ) +)`); + +// ./test/core/gc/struct.wast:219 +assert_return(() => invoke($5, `get_packed_g0_0`, []), [value("i32", 0), value("i32", 0)]); + +// ./test/core/gc/struct.wast:220 +assert_return(() => invoke($5, `get_packed_g1_0`, []), [value("i32", -2), value("i32", 254)]); + +// ./test/core/gc/struct.wast:221 +assert_return(() => invoke($5, `get_packed_g0_1`, []), [value("i32", 1), value("i32", 1)]); + +// ./test/core/gc/struct.wast:222 +assert_return(() => invoke($5, `get_packed_g1_1`, []), [value("i32", -1), value("i32", 255)]); + +// ./test/core/gc/struct.wast:223 +assert_return(() => invoke($5, `get_packed_g0_2`, []), [value("i32", 2), value("i32", 2)]); + +// ./test/core/gc/struct.wast:224 +assert_return(() => invoke($5, `get_packed_g1_2`, []), [value("i32", -2), value("i32", 65534)]); + +// ./test/core/gc/struct.wast:225 +assert_return(() => invoke($5, `get_packed_g0_3`, []), [value("i32", 3), value("i32", 3)]); + +// ./test/core/gc/struct.wast:226 +assert_return(() => invoke($5, `get_packed_g1_3`, []), [value("i32", -1), value("i32", 65535)]); + +// ./test/core/gc/struct.wast:228 +assert_return(() => invoke($5, `set_get_packed_g0_1`, [257]), [value("i32", 1), value("i32", 1)]); + +// ./test/core/gc/struct.wast:229 +assert_return(() => invoke($5, `set_get_packed_g0_3`, [257]), [value("i32", 257), value("i32", 257)]); diff --git a/js/src/jit-test/tests/wasm/spec/gc/token.wast.js b/js/src/jit-test/tests/wasm/spec/gc/token.wast.js new file mode 100644 index 0000000000..6d8f63faae --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/token.wast.js @@ -0,0 +1,289 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/token.wast + +// ./test/core/token.wast:3 +assert_malformed(() => instantiate(`(func (drop (i32.const0))) `), `unknown operator`); + +// ./test/core/token.wast:7 +assert_malformed(() => instantiate(`(func br 0drop) `), `unknown operator`); + +// ./test/core/token.wast:15 +let $0 = instantiate(`(module + (func(nop)) +)`); + +// ./test/core/token.wast:18 +let $1 = instantiate(`(module + (func (nop)nop) +)`); + +// ./test/core/token.wast:21 +let $2 = instantiate(`(module + (func nop(nop)) +)`); + +// ./test/core/token.wast:24 +let $3 = instantiate(`(module + (func(nop)(nop)) +)`); + +// ./test/core/token.wast:27 +let $4 = instantiate(`(module + (func $$f(nop)) +)`); + +// ./test/core/token.wast:30 +let $5 = instantiate(`(module + (func br 0(nop)) +)`); + +// ./test/core/token.wast:33 +let $6 = instantiate(`(module + (table 1 funcref) + (func) + (elem (i32.const 0)0) +)`); + +// ./test/core/token.wast:38 +let $7 = instantiate(`(module + (table 1 funcref) + (func $$f) + (elem (i32.const 0)$$f) +)`); + +// ./test/core/token.wast:43 +let $8 = instantiate(`(module + (memory 1) + (data (i32.const 0)"a") +)`); + +// ./test/core/token.wast:47 +let $9 = instantiate(`(module + (import "spectest" "print"(func)) +)`); + +// ./test/core/token.wast:54 +let $10 = instantiate(`(module + (func;;bla + ) +)`); + +// ./test/core/token.wast:58 +let $11 = instantiate(`(module + (func (nop);;bla + ) +)`); + +// ./test/core/token.wast:62 +let $12 = instantiate(`(module + (func nop;;bla + ) +)`); + +// ./test/core/token.wast:66 +let $13 = instantiate(`(module + (func $$f;;bla + ) +)`); + +// ./test/core/token.wast:70 +let $14 = instantiate(`(module + (func br 0;;bla + ) +)`); + +// ./test/core/token.wast:74 +let $15 = instantiate(`(module + (data "a";;bla + ) +)`); + +// ./test/core/token.wast:82 +let $16 = instantiate(`(module + (func (block $$l (i32.const 0) (br_table 0 $$l))) +)`); + +// ./test/core/token.wast:85 +assert_malformed( + () => instantiate(`(func (block $$l (i32.const 0) (br_table 0$$l))) `), + `unknown operator`, +); + +// ./test/core/token.wast:92 +let $17 = instantiate(`(module + (func (block $$l (i32.const 0) (br_table $$l 0))) +)`); + +// ./test/core/token.wast:95 +assert_malformed( + () => instantiate(`(func (block $$l (i32.const 0) (br_table $$l0))) `), + `unknown label`, +); + +// ./test/core/token.wast:102 +let $18 = instantiate(`(module + (func (block $$l (i32.const 0) (br_table $$l $$l))) +)`); + +// ./test/core/token.wast:105 +assert_malformed( + () => instantiate(`(func (block $$l (i32.const 0) (br_table $$l$$l))) `), + `unknown label`, +); + +// ./test/core/token.wast:112 +let $19 = instantiate(`(module + (func (block $$l0 (i32.const 0) (br_table $$l0))) +)`); + +// ./test/core/token.wast:115 +let $20 = instantiate(`(module + (func (block $$l$$l (i32.const 0) (br_table $$l$$l))) +)`); + +// ./test/core/token.wast:122 +let $21 = instantiate(`(module + (data "a") +)`); + +// ./test/core/token.wast:125 +assert_malformed(() => instantiate(`(data"a") `), `unknown operator`); + +// ./test/core/token.wast:132 +let $22 = instantiate(`(module + (data $$l "a") +)`); + +// ./test/core/token.wast:135 +assert_malformed(() => instantiate(`(data $$l"a") `), `unknown operator`); + +// ./test/core/token.wast:142 +let $23 = instantiate(`(module + (data $$l " a") +)`); + +// ./test/core/token.wast:145 +assert_malformed(() => instantiate(`(data $$l" a") `), `unknown operator`); + +// ./test/core/token.wast:152 +let $24 = instantiate(`(module + (data $$l "a ") +)`); + +// ./test/core/token.wast:155 +assert_malformed(() => instantiate(`(data $$l"a ") `), `unknown operator`); + +// ./test/core/token.wast:162 +let $25 = instantiate(`(module + (data $$l "a " "b") +)`); + +// ./test/core/token.wast:165 +assert_malformed(() => instantiate(`(data $$l"a ""b") `), `unknown operator`); + +// ./test/core/token.wast:172 +let $26 = instantiate(`(module + (data $$l "\u{f61a}\u{f4a9}") +)`); + +// ./test/core/token.wast:175 +assert_malformed(() => instantiate(`(data $$l"\u{f61a}\u{f4a9}") `), `unknown operator`); + +// ./test/core/token.wast:182 +let $27 = instantiate(`(module + (data $$l " \u{f61a}\u{f4a9}") +)`); + +// ./test/core/token.wast:185 +assert_malformed(() => instantiate(`(data $$l" \u{f61a}\u{f4a9}") `), `unknown operator`); + +// ./test/core/token.wast:192 +let $28 = instantiate(`(module + (data $$l "\u{f61a}\u{f4a9} ") +)`); + +// ./test/core/token.wast:195 +assert_malformed(() => instantiate(`(data $$l"\u{f61a}\u{f4a9} ") `), `unknown operator`); + +// ./test/core/token.wast:202 +let $29 = instantiate(`(module + (data "a" "b") +)`); + +// ./test/core/token.wast:205 +assert_malformed(() => instantiate(`(data "a""b") `), `unknown operator`); + +// ./test/core/token.wast:212 +let $30 = instantiate(`(module + (data "a" " b") +)`); + +// ./test/core/token.wast:215 +assert_malformed(() => instantiate(`(data "a"" b") `), `unknown operator`); + +// ./test/core/token.wast:222 +let $31 = instantiate(`(module + (data "a " "b") +)`); + +// ./test/core/token.wast:225 +assert_malformed(() => instantiate(`(data "a ""b") `), `unknown operator`); + +// ./test/core/token.wast:232 +let $32 = instantiate(`(module + (data "\u{f61a}\u{f4a9}" "\u{f61a}\u{f4a9}") +)`); + +// ./test/core/token.wast:235 +assert_malformed( + () => instantiate(`(data "\u{f61a}\u{f4a9}""\u{f61a}\u{f4a9}") `), + `unknown operator`, +); + +// ./test/core/token.wast:242 +let $33 = instantiate(`(module + (data "\u{f61a}\u{f4a9}" " \u{f61a}\u{f4a9}") +)`); + +// ./test/core/token.wast:245 +assert_malformed( + () => instantiate(`(data "\u{f61a}\u{f4a9}"" \u{f61a}\u{f4a9}") `), + `unknown operator`, +); + +// ./test/core/token.wast:252 +let $34 = instantiate(`(module + (data "\u{f61a}\u{f4a9} " "\u{f61a}\u{f4a9}") +)`); + +// ./test/core/token.wast:255 +assert_malformed( + () => instantiate(`(data "\u{f61a}\u{f4a9} ""\u{f61a}\u{f4a9}") `), + `unknown operator`, +); + +// ./test/core/token.wast:263 +assert_malformed(() => instantiate(`(func "a"x) `), `unknown operator`); + +// ./test/core/token.wast:269 +assert_malformed(() => instantiate(`(func "a"0) `), `unknown operator`); + +// ./test/core/token.wast:275 +assert_malformed(() => instantiate(`(func 0"a") `), `unknown operator`); + +// ./test/core/token.wast:281 +assert_malformed(() => instantiate(`(func "a"$$x) `), `unknown operator`); diff --git a/js/src/jit-test/tests/wasm/spec/gc/type-canon.wast.js b/js/src/jit-test/tests/wasm/spec/gc/type-canon.wast.js new file mode 100644 index 0000000000..52d48143ee --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/type-canon.wast.js @@ -0,0 +1,36 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/type-canon.wast + +// ./test/core/type-canon.wast:1 +let $0 = instantiate(`(module + (rec + (type $$t1 (func (param i32 (ref $$t3)))) + (type $$t2 (func (param i32 (ref $$t1)))) + (type $$t3 (func (param i32 (ref $$t2)))) + ) +)`); + +// ./test/core/type-canon.wast:9 +let $1 = instantiate(`(module + (rec + (type $$t0 (func (param i32 (ref $$t2) (ref $$t3)))) + (type $$t1 (func (param i32 (ref $$t0) i32 (ref $$t4)))) + (type $$t2 (func (param i32 (ref $$t2) (ref $$t1)))) + (type $$t3 (func (param i32 (ref $$t2) i32 (ref $$t4)))) + (type $$t4 (func (param (ref $$t0) (ref $$t2)))) + ) +)`); diff --git a/js/src/jit-test/tests/wasm/spec/gc/type-equivalence.wast.js b/js/src/jit-test/tests/wasm/spec/gc/type-equivalence.wast.js new file mode 100644 index 0000000000..447729927e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/type-equivalence.wast.js @@ -0,0 +1,345 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/type-equivalence.wast + +// ./test/core/type-equivalence.wast:5 +let $0 = instantiate(`(module + (type $$t1 (func (param f32 f32) (result f32))) + (type $$t2 (func (param $$x f32) (param $$y f32) (result f32))) + + (func $$f1 (param $$r (ref $$t1)) (call $$f2 (local.get $$r))) + (func $$f2 (param $$r (ref $$t2)) (call $$f1 (local.get $$r))) +)`); + +// ./test/core/type-equivalence.wast:16 +let $1 = instantiate(`(module + (type $$s0 (func (param i32) (result f32))) + (type $$s1 (func (param i32 (ref $$s0)) (result (ref $$s0)))) + (type $$s2 (func (param i32 (ref $$s0)) (result (ref $$s0)))) + (type $$t1 (func (param (ref $$s1)) (result (ref $$s2)))) + (type $$t2 (func (param (ref $$s2)) (result (ref $$s1)))) + + (func $$f1 (param $$r (ref $$t1)) (call $$f2 (local.get $$r))) + (func $$f2 (param $$r (ref $$t2)) (call $$f1 (local.get $$r))) +)`); + +// ./test/core/type-equivalence.wast:30 +let $2 = instantiate(`(module + (rec (type $$t1 (func (param i32 (ref $$t1))))) + (rec (type $$t2 (func (param i32 (ref $$t2))))) + + (func $$f1 (param $$r (ref $$t1)) (call $$f2 (local.get $$r))) + (func $$f2 (param $$r (ref $$t2)) (call $$f1 (local.get $$r))) +)`); + +// ./test/core/type-equivalence.wast:38 +let $3 = instantiate(`(module + (type $$t1 (func (param i32 (ref $$t1)))) + (type $$t2 (func (param i32 (ref $$t2)))) + + (func $$f1 (param $$r (ref $$t1)) (call $$f2 (local.get $$r))) + (func $$f2 (param $$r (ref $$t2)) (call $$f1 (local.get $$r))) +)`); + +// ./test/core/type-equivalence.wast:49 +let $4 = instantiate(`(module + (rec + (type $$t0 (func (param i32 (ref $$t1)))) + (type $$t1 (func (param i32 (ref $$t0)))) + ) + (rec + (type $$t2 (func (param i32 (ref $$t3)))) + (type $$t3 (func (param i32 (ref $$t2)))) + ) + + (func $$f0 (param $$r (ref $$t0)) + (call $$f2 (local.get $$r)) + ) + (func $$f1 (param $$r (ref $$t1)) + (call $$f3 (local.get $$r)) + ) + (func $$f2 (param $$r (ref $$t2)) + (call $$f0 (local.get $$r)) + ) + (func $$f3 (param $$r (ref $$t3)) + (call $$f1 (local.get $$r)) + ) +)`); + +// ./test/core/type-equivalence.wast:76 +assert_invalid( + () => instantiate(`(module + (type $$t1 (func (param (ref $$t2)))) + (type $$t2 (func (param (ref $$t1)))) + )`), + `unknown type`, +); + +// ./test/core/type-equivalence.wast:89 +let $5 = instantiate(`(module + (type $$t1 (func (param f32 f32))) + (type $$t2 (func (param $$x f32) (param $$y f32))) + + (func $$f1 (type $$t1)) + (func $$f2 (type $$t2)) + (table funcref (elem $$f1 $$f2)) + + (func (export "run") + (call_indirect (type $$t1) (f32.const 1) (f32.const 2) (i32.const 1)) + (call_indirect (type $$t2) (f32.const 1) (f32.const 2) (i32.const 0)) + ) +)`); + +// ./test/core/type-equivalence.wast:102 +assert_return(() => invoke($5, `run`, []), []); + +// ./test/core/type-equivalence.wast:107 +let $6 = instantiate(`(module + (type $$s0 (func (param i32))) + (type $$s1 (func (param i32 (ref $$s0)))) + (type $$s2 (func (param i32 (ref $$s0)))) + (type $$t1 (func (param (ref $$s1)))) + (type $$t2 (func (param (ref $$s2)))) + + (func $$s1 (type $$s1)) + (func $$s2 (type $$s2)) + (func $$f1 (type $$t1)) + (func $$f2 (type $$t2)) + (table funcref (elem $$f1 $$f2 $$s1 $$s2)) + + (func (export "run") + (call_indirect (type $$t1) (ref.func $$s1) (i32.const 0)) + (call_indirect (type $$t1) (ref.func $$s1) (i32.const 1)) + (call_indirect (type $$t1) (ref.func $$s2) (i32.const 0)) + (call_indirect (type $$t1) (ref.func $$s2) (i32.const 1)) + (call_indirect (type $$t2) (ref.func $$s1) (i32.const 0)) + (call_indirect (type $$t2) (ref.func $$s1) (i32.const 1)) + (call_indirect (type $$t2) (ref.func $$s2) (i32.const 0)) + (call_indirect (type $$t2) (ref.func $$s2) (i32.const 1)) + ) +)`); + +// ./test/core/type-equivalence.wast:131 +assert_return(() => invoke($6, `run`, []), []); + +// ./test/core/type-equivalence.wast:136 +let $7 = instantiate(`(module + (rec (type $$t1 (func (result (ref null $$t1))))) + (rec (type $$t2 (func (result (ref null $$t2))))) + + (func $$f1 (type $$t1) (ref.null $$t1)) + (func $$f2 (type $$t2) (ref.null $$t2)) + (table funcref (elem $$f1 $$f2)) + + (func (export "run") + (block (result (ref null $$t1)) (call_indirect (type $$t1) (i32.const 0))) + (block (result (ref null $$t1)) (call_indirect (type $$t2) (i32.const 0))) + (block (result (ref null $$t2)) (call_indirect (type $$t1) (i32.const 0))) + (block (result (ref null $$t2)) (call_indirect (type $$t2) (i32.const 0))) + (block (result (ref null $$t1)) (call_indirect (type $$t1) (i32.const 1))) + (block (result (ref null $$t1)) (call_indirect (type $$t2) (i32.const 1))) + (block (result (ref null $$t2)) (call_indirect (type $$t1) (i32.const 1))) + (block (result (ref null $$t2)) (call_indirect (type $$t2) (i32.const 1))) + (br 0) + ) +)`); + +// ./test/core/type-equivalence.wast:156 +assert_return(() => invoke($7, `run`, []), []); + +// ./test/core/type-equivalence.wast:161 +let $8 = instantiate(`(module + (rec + (type $$t1 (func (param i32 (ref $$t1)))) + (type $$t2 (func (param i32 (ref $$t3)))) + (type $$t3 (func (param i32 (ref $$t2)))) + ) + + (rec + (type $$u1 (func (param i32 (ref $$u1)))) + (type $$u2 (func (param i32 (ref $$u3)))) + (type $$u3 (func (param i32 (ref $$u2)))) + ) + + (func $$f1 (type $$t1)) + (func $$f2 (type $$t2)) + (func $$f3 (type $$t3)) + (table funcref (elem $$f1 $$f2 $$f3)) + + (func (export "run") + (call_indirect (type $$t1) (i32.const 1) (ref.func $$f1) (i32.const 0)) + (call_indirect (type $$t2) (i32.const 1) (ref.func $$f3) (i32.const 1)) + (call_indirect (type $$t3) (i32.const 1) (ref.func $$f2) (i32.const 2)) + (call_indirect (type $$u1) (i32.const 1) (ref.func $$f1) (i32.const 0)) + (call_indirect (type $$u2) (i32.const 1) (ref.func $$f3) (i32.const 1)) + (call_indirect (type $$u3) (i32.const 1) (ref.func $$f2) (i32.const 2)) + ) +)`); + +// ./test/core/type-equivalence.wast:188 +assert_return(() => invoke($8, `run`, []), []); + +// ./test/core/type-equivalence.wast:195 +let $9 = instantiate(`(module + (type $$t1 (func (param f32 f32) (result f32))) + (func (export "f") (param (ref $$t1))) +)`); + +// ./test/core/type-equivalence.wast:199 +register($9, `M`); + +// ./test/core/type-equivalence.wast:200 +let $10 = instantiate(`(module + (type $$t2 (func (param $$x f32) (param $$y f32) (result f32))) + (func (import "M" "f") (param (ref $$t2))) +)`); + +// ./test/core/type-equivalence.wast:208 +let $11 = instantiate(`(module + (type $$s0 (func (param i32) (result f32))) + (type $$s1 (func (param i32 (ref $$s0)) (result (ref $$s0)))) + (type $$s2 (func (param i32 (ref $$s0)) (result (ref $$s0)))) + (type $$t1 (func (param (ref $$s1)) (result (ref $$s2)))) + (type $$t2 (func (param (ref $$s2)) (result (ref $$s1)))) + (func (export "f1") (param (ref $$t1))) + (func (export "f2") (param (ref $$t1))) +)`); + +// ./test/core/type-equivalence.wast:217 +register($11, `N`); + +// ./test/core/type-equivalence.wast:218 +let $12 = instantiate(`(module + (type $$s0 (func (param i32) (result f32))) + (type $$s1 (func (param i32 (ref $$s0)) (result (ref $$s0)))) + (type $$s2 (func (param i32 (ref $$s0)) (result (ref $$s0)))) + (type $$t1 (func (param (ref $$s1)) (result (ref $$s2)))) + (type $$t2 (func (param (ref $$s2)) (result (ref $$s1)))) + (func (import "N" "f1") (param (ref $$t1))) + (func (import "N" "f1") (param (ref $$t2))) + (func (import "N" "f2") (param (ref $$t1))) + (func (import "N" "f2") (param (ref $$t1))) +)`); + +// ./test/core/type-equivalence.wast:233 +let $13 = instantiate(`(module + (rec (type $$t1 (func (param i32 (ref $$t1))))) + (func (export "f") (param (ref $$t1))) +)`); + +// ./test/core/type-equivalence.wast:237 +register($13, `Mr1`); + +// ./test/core/type-equivalence.wast:238 +let $14 = instantiate(`(module + (rec (type $$t2 (func (param i32 (ref $$t2))))) + (func (import "Mr1" "f") (param (ref $$t2))) +)`); + +// ./test/core/type-equivalence.wast:246 +let $15 = instantiate(`(module + (rec + (type $$t1 (func (param i32 (ref $$t1)))) + (type $$t2 (func (param i32 (ref $$t3)))) + (type $$t3 (func (param i32 (ref $$t2)))) + ) + (func (export "f1") (param (ref $$t1))) + (func (export "f2") (param (ref $$t2))) + (func (export "f3") (param (ref $$t3))) +)`); + +// ./test/core/type-equivalence.wast:256 +register($15, `Mr2`); + +// ./test/core/type-equivalence.wast:257 +let $16 = instantiate(`(module + (rec + (type $$t1 (func (param i32 (ref $$t1)))) + (type $$t2 (func (param i32 (ref $$t3)))) + (type $$t3 (func (param i32 (ref $$t2)))) + ) + (func (import "Mr2" "f1") (param (ref $$t1))) + (func (import "Mr2" "f2") (param (ref $$t2))) + (func (import "Mr2" "f3") (param (ref $$t3))) +)`); + +// ./test/core/type-equivalence.wast:268 +let $17 = instantiate(`(module + (rec + (type $$t1 (func (param i32 (ref $$t3)))) + (type $$t2 (func (param i32 (ref $$t1)))) + (type $$t3 (func (param i32 (ref $$t2)))) + ) + (func (export "f1") (param (ref $$t1))) + (func (export "f2") (param (ref $$t2))) + (func (export "f3") (param (ref $$t3))) +)`); + +// ./test/core/type-equivalence.wast:278 +register($17, `Mr3`); + +// ./test/core/type-equivalence.wast:279 +let $18 = instantiate(`(module + (rec + (type $$t1 (func (param i32 (ref $$t3)))) + (type $$t2 (func (param i32 (ref $$t1)))) + (type $$t3 (func (param i32 (ref $$t2)))) + ) + (func (import "Mr3" "f1") (param (ref $$t1))) + (func (import "Mr3" "f2") (param (ref $$t2))) + (func (import "Mr3" "f3") (param (ref $$t3))) +)`); + +// ./test/core/type-equivalence.wast:290 +let $19 = instantiate(`(module + (rec + (type $$t1 (func (param i32 (ref $$u1)))) + (type $$u1 (func (param f32 (ref $$t1)))) + ) + + (rec + (type $$t2 (func (param i32 (ref $$u3)))) + (type $$u2 (func (param f32 (ref $$t3)))) + (type $$t3 (func (param i32 (ref $$u2)))) + (type $$u3 (func (param f32 (ref $$t2)))) + ) + + (func (export "f1") (param (ref $$t1))) + (func (export "f2") (param (ref $$t2))) + (func (export "f3") (param (ref $$t3))) +)`); + +// ./test/core/type-equivalence.wast:307 +register($19, `Mr4`); + +// ./test/core/type-equivalence.wast:308 +let $20 = instantiate(`(module + (rec + (type $$t1 (func (param i32 (ref $$u1)))) + (type $$u1 (func (param f32 (ref $$t1)))) + ) + + (rec + (type $$t2 (func (param i32 (ref $$u3)))) + (type $$u2 (func (param f32 (ref $$t3)))) + (type $$t3 (func (param i32 (ref $$u2)))) + (type $$u3 (func (param f32 (ref $$t2)))) + ) + + (func (import "Mr4" "f1") (param (ref $$t1))) + (func (import "Mr4" "f2") (param (ref $$t2))) + (func (import "Mr4" "f3") (param (ref $$t3))) +)`); diff --git a/js/src/jit-test/tests/wasm/spec/gc/type-rec.wast.js b/js/src/jit-test/tests/wasm/spec/gc/type-rec.wast.js new file mode 100644 index 0000000000..8bf18cb6e5 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/type-rec.wast.js @@ -0,0 +1,189 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/type-rec.wast + +// ./test/core/type-rec.wast:3 +let $0 = instantiate(`(module + (rec (type $$f1 (func)) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (func)) (type (struct (field (ref $$f2))))) + (func $$f (type $$f2)) + (global (ref $$f1) (ref.func $$f)) +)`); + +// ./test/core/type-rec.wast:10 +let $1 = instantiate(`(module + (rec (type $$f1 (func)) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (func)) (type (struct (field (ref $$f2))))) + (rec + (type $$g1 (func)) + (type (struct (field (ref $$f1) (ref $$f1) (ref $$f2) (ref $$f2) (ref $$g1)))) + ) + (rec + (type $$g2 (func)) + (type (struct (field (ref $$f1) (ref $$f2) (ref $$f1) (ref $$f2) (ref $$g2)))) + ) + (func $$g (type $$g2)) + (global (ref $$g1) (ref.func $$g)) +)`); + +// ./test/core/type-rec.wast:25 +assert_invalid( + () => instantiate(`(module + (rec (type $$f1 (func)) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (func)) (type (struct (field (ref $$f1))))) + (func $$f (type $$f2)) + (global (ref $$f1) (ref.func $$f)) + )`), + `type mismatch`, +); + +// ./test/core/type-rec.wast:35 +assert_invalid( + () => instantiate(`(module + (rec (type $$f0 (func)) (type (struct (field (ref $$f0))))) + (rec (type $$f1 (func)) (type (struct (field (ref $$f0))))) + (rec (type $$f2 (func)) (type (struct (field (ref $$f1))))) + (func $$f (type $$f2)) + (global (ref $$f1) (ref.func $$f)) + )`), + `type mismatch`, +); + +// ./test/core/type-rec.wast:46 +assert_invalid( + () => instantiate(`(module + (rec (type $$f1 (func)) (type (struct))) + (rec (type (struct)) (type $$f2 (func))) + (global (ref $$f1) (ref.func $$f)) + (func $$f (type $$f2)) + )`), + `type mismatch`, +); + +// ./test/core/type-rec.wast:56 +assert_invalid( + () => instantiate(`(module + (rec (type $$f1 (func)) (type (struct))) + (rec (type $$f2 (func)) (type (struct)) (type (func))) + (global (ref $$f1) (ref.func $$f)) + (func $$f (type $$f2)) + )`), + `type mismatch`, +); + +// ./test/core/type-rec.wast:69 +let $2 = instantiate(`(module $$M + (rec (type $$f1 (func)) (type (struct))) + (func (export "f") (type $$f1)) +)`); +register($2, `M`); + +// ./test/core/type-rec.wast:73 +register(`M`, `M`); + +// ./test/core/type-rec.wast:75 +let $3 = instantiate(`(module + (rec (type $$f2 (func)) (type (struct))) + (func (import "M" "f") (type $$f2)) +)`); + +// ./test/core/type-rec.wast:80 +assert_unlinkable( + () => instantiate(`(module + (rec (type (struct)) (type $$f2 (func))) + (func (import "M" "f") (type $$f2)) + )`), + `incompatible import type`, +); + +// ./test/core/type-rec.wast:88 +assert_unlinkable( + () => instantiate(`(module + (rec (type $$f2 (func))) + (func (import "M" "f") (type $$f2)) + )`), + `incompatible import type`, +); + +// ./test/core/type-rec.wast:99 +let $4 = instantiate(`(module + (rec (type $$f1 (func)) (type (struct))) + (rec (type $$f2 (func)) (type (struct))) + (table funcref (elem $$f1)) + (func $$f1 (type $$f1)) + (func (export "run") (call_indirect (type $$f2) (i32.const 0))) +)`); + +// ./test/core/type-rec.wast:106 +assert_return(() => invoke($4, `run`, []), []); + +// ./test/core/type-rec.wast:108 +let $5 = instantiate(`(module + (rec (type $$f1 (func)) (type (struct))) + (rec (type (struct)) (type $$f2 (func))) + (table funcref (elem $$f1)) + (func $$f1 (type $$f1)) + (func (export "run") (call_indirect (type $$f2) (i32.const 0))) +)`); + +// ./test/core/type-rec.wast:115 +assert_trap(() => invoke($5, `run`, []), `indirect call type mismatch`); + +// ./test/core/type-rec.wast:117 +let $6 = instantiate(`(module + (rec (type $$f1 (func)) (type (struct))) + (rec (type $$f2 (func))) + (table funcref (elem $$f1)) + (func $$f1 (type $$f1)) + (func (export "run") (call_indirect (type $$f2) (i32.const 0))) +)`); + +// ./test/core/type-rec.wast:124 +assert_trap(() => invoke($6, `run`, []), `indirect call type mismatch`); + +// ./test/core/type-rec.wast:129 +let $7 = instantiate(`(module + (rec (type $$s (struct))) + (rec (type $$t (func (param (ref $$s))))) + (func $$f (param (ref $$s))) ;; okay, type is equivalent to $$t + (global (ref $$t) (ref.func $$f)) +)`); + +// ./test/core/type-rec.wast:136 +assert_invalid( + () => instantiate(`(module + (rec + (type $$s (struct)) + (type $$t (func (param (ref $$s)))) + ) + (func $$f (param (ref $$s))) ;; type is not equivalent to $$t + (global (ref $$t) (ref.func $$f)) + )`), + `type mismatch`, +); + +// ./test/core/type-rec.wast:148 +assert_invalid( + () => instantiate(`(module + (rec + (type (struct)) + (type $$t (func)) + ) + (func $$f) ;; type is not equivalent to $$t + (global (ref $$t) (ref.func $$f)) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/type-subtyping.wast.js b/js/src/jit-test/tests/wasm/spec/gc/type-subtyping.wast.js new file mode 100644 index 0000000000..474789c145 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/type-subtyping.wast.js @@ -0,0 +1,943 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/gc/type-subtyping.wast + +// ./test/core/gc/type-subtyping.wast:3 +let $0 = instantiate(`(module + (type $$e0 (sub (array i32))) + (type $$e1 (sub $$e0 (array i32))) + + (type $$e2 (sub (array anyref))) + (type $$e3 (sub (array (ref null $$e0)))) + (type $$e4 (sub (array (ref $$e1)))) + + (type $$m1 (sub (array (mut i32)))) + (type $$m2 (sub $$m1 (array (mut i32)))) +)`); + +// ./test/core/gc/type-subtyping.wast:15 +let $1 = instantiate(`(module + (type $$e0 (sub (struct))) + (type $$e1 (sub $$e0 (struct))) + (type $$e2 (sub $$e1 (struct (field i32)))) + (type $$e3 (sub $$e2 (struct (field i32 (ref null $$e0))))) + (type $$e4 (sub $$e3 (struct (field i32 (ref $$e0) (mut i64))))) + (type $$e5 (sub $$e4 (struct (field i32 (ref $$e1) (mut i64))))) +)`); + +// ./test/core/gc/type-subtyping.wast:24 +let $2 = instantiate(`(module + (type $$s (sub (struct))) + (type $$s' (sub $$s (struct))) + + (type $$f1 (sub (func (param (ref $$s')) (result anyref)))) + (type $$f2 (sub $$f1 (func (param (ref $$s)) (result (ref any))))) + (type $$f3 (sub $$f2 (func (param (ref null $$s)) (result (ref $$s))))) + (type $$f4 (sub $$f3 (func (param (ref null struct)) (result (ref $$s'))))) +)`); + +// ./test/core/gc/type-subtyping.wast:37 +let $3 = instantiate(`(module + (type $$t (sub (struct (field anyref)))) + (rec (type $$r (sub $$t (struct (field (ref $$r)))))) + (type $$t' (sub $$r (struct (field (ref $$r) i32)))) +)`); + +// ./test/core/gc/type-subtyping.wast:43 +let $4 = instantiate(`(module + (rec + (type $$r1 (sub (struct (field i32 (ref $$r1))))) + ) + (rec + (type $$r2 (sub $$r1 (struct (field i32 (ref $$r3))))) + (type $$r3 (sub $$r1 (struct (field i32 (ref $$r2))))) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:53 +let $5 = instantiate(`(module + (rec + (type $$a1 (sub (struct (field i32 (ref $$a2))))) + (type $$a2 (sub (struct (field i64 (ref $$a1))))) + ) + (rec + (type $$b1 (sub $$a2 (struct (field i64 (ref $$a1) i32)))) + (type $$b2 (sub $$a1 (struct (field i32 (ref $$a2) i32)))) + (type $$b3 (sub $$a2 (struct (field i64 (ref $$b2) i32)))) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:68 +let $6 = instantiate(`(module + (rec + (type $$t1 (sub (func (param i32 (ref $$t3))))) + (type $$t2 (sub $$t1 (func (param i32 (ref $$t2))))) + (type $$t3 (sub $$t2 (func (param i32 (ref $$t1))))) + ) + + (func $$f1 (param $$r (ref $$t1)) + (call $$f1 (local.get $$r)) + ) + (func $$f2 (param $$r (ref $$t2)) + (call $$f1 (local.get $$r)) + (call $$f2 (local.get $$r)) + ) + (func $$f3 (param $$r (ref $$t3)) + (call $$f1 (local.get $$r)) + (call $$f2 (local.get $$r)) + (call $$f3 (local.get $$r)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:89 +let $7 = instantiate(`(module + (rec + (type $$t1 (sub (func (result i32 (ref $$u1))))) + (type $$u1 (sub (func (result f32 (ref $$t1))))) + ) + + (rec + (type $$t2 (sub $$t1 (func (result i32 (ref $$u3))))) + (type $$u2 (sub $$u1 (func (result f32 (ref $$t3))))) + (type $$t3 (sub $$t1 (func (result i32 (ref $$u2))))) + (type $$u3 (sub $$u1 (func (result f32 (ref $$t2))))) + ) + + (func $$f1 (param $$r (ref $$t1)) + (call $$f1 (local.get $$r)) + ) + (func $$f2 (param $$r (ref $$t2)) + (call $$f1 (local.get $$r)) + (call $$f2 (local.get $$r)) + ) + (func $$f3 (param $$r (ref $$t3)) + (call $$f1 (local.get $$r)) + (call $$f3 (local.get $$r)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:115 +let $8 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f2))))) + (rec (type $$g1 (sub $$f1 (func))) (type (struct))) + (rec (type $$g2 (sub $$f2 (func))) (type (struct))) + (func $$g (type $$g2)) + (global (ref $$g1) (ref.func $$g)) +)`); + +// ./test/core/gc/type-subtyping.wast:124 +let $9 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type $$s1 (sub (struct (field (ref $$f1)))))) + (rec (type $$f2 (sub (func))) (type $$s2 (sub (struct (field (ref $$f2)))))) + (rec + (type $$g1 (sub $$f1 (func))) + (type (sub $$s1 (struct (field (ref $$f1) (ref $$f1) (ref $$f2) (ref $$f2) (ref $$g1))))) + ) + (rec + (type $$g2 (sub $$f2 (func))) + (type (sub $$s2 (struct (field (ref $$f1) (ref $$f2) (ref $$f1) (ref $$f2) (ref $$g2))))) + ) + (func $$g (type $$g2)) + (global (ref $$g1) (ref.func $$g)) +)`); + +// ./test/core/gc/type-subtyping.wast:139 +assert_invalid( + () => instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$g1 (sub $$f1 (func))) (type (struct))) + (rec (type $$g2 (sub $$f2 (func))) (type (struct))) + (func $$g (type $$g2)) + (global (ref $$g1) (ref.func $$g)) + )`), + `type mismatch`, +); + +// ./test/core/gc/type-subtyping.wast:151 +let $10 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f2))))) + (rec (type $$g (sub $$f1 (func))) (type (struct))) + (func $$g (type $$g)) + (global (ref $$f1) (ref.func $$g)) +)`); + +// ./test/core/gc/type-subtyping.wast:159 +let $11 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type $$s1 (sub (struct (field (ref $$f1)))))) + (rec (type $$f2 (sub (func))) (type $$s2 (sub (struct (field (ref $$f2)))))) + (rec + (type $$g1 (sub $$f1 (func))) + (type (sub $$s1 (struct (field (ref $$f1) (ref $$f1) (ref $$f2) (ref $$f2) (ref $$g1))))) + ) + (rec + (type $$g2 (sub $$f2 (func))) + (type (sub $$s2 (struct (field (ref $$f1) (ref $$f2) (ref $$f1) (ref $$f2) (ref $$g2))))) + ) + (rec (type $$h (sub $$g2 (func))) (type (struct))) + (func $$h (type $$h)) + (global (ref $$f1) (ref.func $$h)) + (global (ref $$g1) (ref.func $$h)) +)`); + +// ./test/core/gc/type-subtyping.wast:177 +let $12 = instantiate(`(module + (rec (type $$f11 (sub (func (result (ref func))))) (type $$f12 (sub $$f11 (func (result (ref $$f11)))))) + (rec (type $$f21 (sub (func (result (ref func))))) (type $$f22 (sub $$f21 (func (result (ref $$f21)))))) + (func $$f11 (type $$f11) (unreachable)) + (func $$f12 (type $$f12) (unreachable)) + (global (ref $$f11) (ref.func $$f11)) + (global (ref $$f21) (ref.func $$f11)) + (global (ref $$f12) (ref.func $$f12)) + (global (ref $$f22) (ref.func $$f12)) +)`); + +// ./test/core/gc/type-subtyping.wast:188 +let $13 = instantiate(`(module + (rec (type $$f11 (sub (func (result (ref func))))) (type $$f12 (sub $$f11 (func (result (ref $$f11)))))) + (rec (type $$f21 (sub (func (result (ref func))))) (type $$f22 (sub $$f21 (func (result (ref $$f21)))))) + (rec (type $$g11 (sub $$f11 (func (result (ref func))))) (type $$g12 (sub $$g11 (func (result (ref $$g11)))))) + (rec (type $$g21 (sub $$f21 (func (result (ref func))))) (type $$g22 (sub $$g21 (func (result (ref $$g21)))))) + (func $$g11 (type $$g11) (unreachable)) + (func $$g12 (type $$g12) (unreachable)) + (global (ref $$f11) (ref.func $$g11)) + (global (ref $$f21) (ref.func $$g11)) + (global (ref $$f11) (ref.func $$g12)) + (global (ref $$f21) (ref.func $$g12)) + (global (ref $$g11) (ref.func $$g11)) + (global (ref $$g21) (ref.func $$g11)) + (global (ref $$g12) (ref.func $$g12)) + (global (ref $$g22) (ref.func $$g12)) +)`); + +// ./test/core/gc/type-subtyping.wast:205 +assert_invalid( + () => instantiate(`(module + (rec (type $$f11 (sub (func))) (type $$f12 (sub $$f11 (func)))) + (rec (type $$f21 (sub (func))) (type $$f22 (sub $$f11 (func)))) + (func $$f (type $$f21)) + (global (ref $$f11) (ref.func $$f)) + )`), + `type mismatch`, +); + +// ./test/core/gc/type-subtyping.wast:215 +assert_invalid( + () => instantiate(`(module + (rec (type $$f01 (sub (func))) (type $$f02 (sub $$f01 (func)))) + (rec (type $$f11 (sub (func))) (type $$f12 (sub $$f01 (func)))) + (rec (type $$f21 (sub (func))) (type $$f22 (sub $$f11 (func)))) + (func $$f (type $$f21)) + (global (ref $$f11) (ref.func $$f)) + )`), + `type mismatch`, +); + +// ./test/core/gc/type-subtyping.wast:229 +let $14 = instantiate(`(module + (type $$t0 (sub (func (result (ref null func))))) + (rec (type $$t1 (sub $$t0 (func (result (ref null $$t1)))))) + (rec (type $$t2 (sub $$t1 (func (result (ref null $$t2)))))) + + (func $$f0 (type $$t0) (ref.null func)) + (func $$f1 (type $$t1) (ref.null $$t1)) + (func $$f2 (type $$t2) (ref.null $$t2)) + (table funcref (elem $$f0 $$f1 $$f2)) + + (func (export "run") + (block (result (ref null func)) (call_indirect (type $$t0) (i32.const 0))) + (block (result (ref null func)) (call_indirect (type $$t0) (i32.const 1))) + (block (result (ref null func)) (call_indirect (type $$t0) (i32.const 2))) + (block (result (ref null $$t1)) (call_indirect (type $$t1) (i32.const 1))) + (block (result (ref null $$t1)) (call_indirect (type $$t1) (i32.const 2))) + (block (result (ref null $$t2)) (call_indirect (type $$t2) (i32.const 2))) + + (block (result (ref null $$t0)) (ref.cast (ref $$t0) (table.get (i32.const 0)))) + (block (result (ref null $$t0)) (ref.cast (ref $$t0) (table.get (i32.const 1)))) + (block (result (ref null $$t0)) (ref.cast (ref $$t0) (table.get (i32.const 2)))) + (block (result (ref null $$t1)) (ref.cast (ref $$t1) (table.get (i32.const 1)))) + (block (result (ref null $$t1)) (ref.cast (ref $$t1) (table.get (i32.const 2)))) + (block (result (ref null $$t2)) (ref.cast (ref $$t2) (table.get (i32.const 2)))) + (br 0) + ) + + (func (export "fail1") + (block (result (ref null $$t1)) (call_indirect (type $$t1) (i32.const 0))) + (br 0) + ) + (func (export "fail2") + (block (result (ref null $$t1)) (call_indirect (type $$t2) (i32.const 0))) + (br 0) + ) + (func (export "fail3") + (block (result (ref null $$t1)) (call_indirect (type $$t2) (i32.const 1))) + (br 0) + ) + + (func (export "fail4") + (ref.cast (ref $$t1) (table.get (i32.const 0))) + (br 0) + ) + (func (export "fail5") + (ref.cast (ref $$t2) (table.get (i32.const 0))) + (br 0) + ) + (func (export "fail6") + (ref.cast (ref $$t2) (table.get (i32.const 1))) + (br 0) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:282 +assert_return(() => invoke($14, `run`, []), []); + +// ./test/core/gc/type-subtyping.wast:283 +assert_trap(() => invoke($14, `fail1`, []), `indirect call`); + +// ./test/core/gc/type-subtyping.wast:284 +assert_trap(() => invoke($14, `fail2`, []), `indirect call`); + +// ./test/core/gc/type-subtyping.wast:285 +assert_trap(() => invoke($14, `fail3`, []), `indirect call`); + +// ./test/core/gc/type-subtyping.wast:286 +assert_trap(() => invoke($14, `fail4`, []), `cast`); + +// ./test/core/gc/type-subtyping.wast:287 +assert_trap(() => invoke($14, `fail5`, []), `cast`); + +// ./test/core/gc/type-subtyping.wast:288 +assert_trap(() => invoke($14, `fail6`, []), `cast`); + +// ./test/core/gc/type-subtyping.wast:290 +let $15 = instantiate(`(module + (type $$t1 (sub (func))) + (type $$t2 (sub final (func))) + + (func $$f1 (type $$t1)) + (func $$f2 (type $$t2)) + (table funcref (elem $$f1 $$f2)) + + (func (export "fail1") + (block (call_indirect (type $$t1) (i32.const 1))) + ) + (func (export "fail2") + (block (call_indirect (type $$t2) (i32.const 0))) + ) + + (func (export "fail3") + (ref.cast (ref $$t1) (table.get (i32.const 1))) + (drop) + ) + (func (export "fail4") + (ref.cast (ref $$t2) (table.get (i32.const 0))) + (drop) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:314 +assert_trap(() => invoke($15, `fail1`, []), `indirect call`); + +// ./test/core/gc/type-subtyping.wast:315 +assert_trap(() => invoke($15, `fail2`, []), `indirect call`); + +// ./test/core/gc/type-subtyping.wast:316 +assert_trap(() => invoke($15, `fail3`, []), `cast`); + +// ./test/core/gc/type-subtyping.wast:317 +assert_trap(() => invoke($15, `fail4`, []), `cast`); + +// ./test/core/gc/type-subtyping.wast:320 +let $16 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f2))))) + (rec (type $$g1 (sub $$f1 (func))) (type (struct))) + (rec (type $$g2 (sub $$f2 (func))) (type (struct))) + (func $$g (type $$g2)) (elem declare func $$g) + (func (export "run") (result i32) + (ref.test (ref $$g1) (ref.func $$g)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:330 +assert_return(() => invoke($16, `run`, []), [value("i32", 1)]); + +// ./test/core/gc/type-subtyping.wast:332 +let $17 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type $$s1 (sub (struct (field (ref $$f1)))))) + (rec (type $$f2 (sub (func))) (type $$s2 (sub (struct (field (ref $$f2)))))) + (rec + (type $$g1 (sub $$f1 (func))) + (type (sub $$s1 (struct (field (ref $$f1) (ref $$f1) (ref $$f2) (ref $$f2) (ref $$g1))))) + ) + (rec + (type $$g2 (sub $$f2 (func))) + (type (sub $$s2 (struct (field (ref $$f1) (ref $$f2) (ref $$f1) (ref $$f2) (ref $$g2))))) + ) + (func $$g (type $$g2)) (elem declare func $$g) + (func (export "run") (result i32) + (ref.test (ref $$g1) (ref.func $$g)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:348 +assert_return(() => invoke($17, `run`, []), [value("i32", 1)]); + +// ./test/core/gc/type-subtyping.wast:350 +let $18 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$g1 (sub $$f1 (func))) (type (struct))) + (rec (type $$g2 (sub $$f2 (func))) (type (struct))) + (func $$g (type $$g2)) (elem declare func $$g) + (func (export "run") (result i32) + (ref.test (ref $$g1) (ref.func $$g)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:360 +assert_return(() => invoke($18, `run`, []), [value("i32", 0)]); + +// ./test/core/gc/type-subtyping.wast:362 +let $19 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f2))))) + (rec (type $$g (sub $$f1 (func))) (type (struct))) + (func $$g (type $$g)) (elem declare func $$g) + (func (export "run") (result i32) + (ref.test (ref $$f1) (ref.func $$g)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:371 +assert_return(() => invoke($19, `run`, []), [value("i32", 1)]); + +// ./test/core/gc/type-subtyping.wast:373 +let $20 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type $$s1 (sub (struct (field (ref $$f1)))))) + (rec (type $$f2 (sub (func))) (type $$s2 (sub (struct (field (ref $$f2)))))) + (rec + (type $$g1 (sub $$f1 (func))) + (type (sub $$s1 (struct (field (ref $$f1) (ref $$f1) (ref $$f2) (ref $$f2) (ref $$g1))))) + ) + (rec + (type $$g2 (sub $$f2 (func))) + (type (sub $$s2 (struct (field (ref $$f1) (ref $$f2) (ref $$f1) (ref $$f2) (ref $$g2))))) + ) + (rec (type $$h (sub $$g2 (func))) (type (struct))) + (func $$h (type $$h)) (elem declare func $$h) + (func (export "run") (result i32 i32) + (ref.test (ref $$f1) (ref.func $$h)) + (ref.test (ref $$g1) (ref.func $$h)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:391 +assert_return(() => invoke($20, `run`, []), [value("i32", 1), value("i32", 1)]); + +// ./test/core/gc/type-subtyping.wast:394 +let $21 = instantiate(`(module + (rec (type $$f11 (sub (func (result (ref func))))) (type $$f12 (sub $$f11 (func (result (ref $$f11)))))) + (rec (type $$f21 (sub (func (result (ref func))))) (type $$f22 (sub $$f21 (func (result (ref $$f21)))))) + (func $$f11 (type $$f11) (unreachable)) (elem declare func $$f11) + (func $$f12 (type $$f12) (unreachable)) (elem declare func $$f12) + (func (export "run") (result i32 i32 i32 i32) + (ref.test (ref $$f11) (ref.func $$f11)) + (ref.test (ref $$f21) (ref.func $$f11)) + (ref.test (ref $$f12) (ref.func $$f12)) + (ref.test (ref $$f22) (ref.func $$f12)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:406 +assert_return( + () => invoke($21, `run`, []), + [value("i32", 1), value("i32", 1), value("i32", 1), value("i32", 1)], +); + +// ./test/core/gc/type-subtyping.wast:410 +let $22 = instantiate(`(module + (rec (type $$f11 (sub (func (result (ref func))))) (type $$f12 (sub $$f11 (func (result (ref $$f11)))))) + (rec (type $$f21 (sub (func (result (ref func))))) (type $$f22 (sub $$f21 (func (result (ref $$f21)))))) + (rec (type $$g11 (sub $$f11 (func (result (ref func))))) (type $$g12 (sub $$g11 (func (result (ref $$g11)))))) + (rec (type $$g21 (sub $$f21 (func (result (ref func))))) (type $$g22 (sub $$g21 (func (result (ref $$g21)))))) + (func $$g11 (type $$g11) (unreachable)) (elem declare func $$g11) + (func $$g12 (type $$g12) (unreachable)) (elem declare func $$g12) + (func (export "run") (result i32 i32 i32 i32 i32 i32 i32 i32) + (ref.test (ref $$f11) (ref.func $$g11)) + (ref.test (ref $$f21) (ref.func $$g11)) + (ref.test (ref $$f11) (ref.func $$g12)) + (ref.test (ref $$f21) (ref.func $$g12)) + (ref.test (ref $$g11) (ref.func $$g11)) + (ref.test (ref $$g21) (ref.func $$g11)) + (ref.test (ref $$g12) (ref.func $$g12)) + (ref.test (ref $$g22) (ref.func $$g12)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:428 +assert_return( + () => invoke($22, `run`, []), + [ + value("i32", 1), + value("i32", 1), + value("i32", 1), + value("i32", 1), + value("i32", 1), + value("i32", 1), + value("i32", 1), + value("i32", 1), + ], +); + +// ./test/core/gc/type-subtyping.wast:433 +let $23 = instantiate(`(module + (rec (type $$f11 (sub (func))) (type $$f12 (sub $$f11 (func)))) + (rec (type $$f21 (sub (func))) (type $$f22 (sub $$f11 (func)))) + (func $$f (type $$f21)) (elem declare func $$f) + (func (export "run") (result i32) + (ref.test (ref $$f11) (ref.func $$f)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:441 +assert_return(() => invoke($23, `run`, []), [value("i32", 0)]); + +// ./test/core/gc/type-subtyping.wast:443 +let $24 = instantiate(`(module + (rec (type $$f01 (sub (func))) (type $$f02 (sub $$f01 (func)))) + (rec (type $$f11 (sub (func))) (type $$f12 (sub $$f01 (func)))) + (rec (type $$f21 (sub (func))) (type $$f22 (sub $$f11 (func)))) + (func $$f (type $$f21)) (elem declare func $$f) + (func (export "run") (result i32) + (ref.test (ref $$f11) (ref.func $$f)) + ) +)`); + +// ./test/core/gc/type-subtyping.wast:452 +assert_return(() => invoke($24, `run`, []), [value("i32", 0)]); + +// ./test/core/gc/type-subtyping.wast:458 +let $25 = instantiate(`(module + (type $$t0 (sub (func (result (ref null func))))) + (rec (type $$t1 (sub $$t0 (func (result (ref null $$t1)))))) + (rec (type $$t2 (sub $$t1 (func (result (ref null $$t2)))))) + + (func (export "f0") (type $$t0) (ref.null func)) + (func (export "f1") (type $$t1) (ref.null $$t1)) + (func (export "f2") (type $$t2) (ref.null $$t2)) +)`); + +// ./test/core/gc/type-subtyping.wast:467 +register($25, `M`); + +// ./test/core/gc/type-subtyping.wast:469 +let $26 = instantiate(`(module + (type $$t0 (sub (func (result (ref null func))))) + (rec (type $$t1 (sub $$t0 (func (result (ref null $$t1)))))) + (rec (type $$t2 (sub $$t1 (func (result (ref null $$t2)))))) + + (func (import "M" "f0") (type $$t0)) + (func (import "M" "f1") (type $$t0)) + (func (import "M" "f1") (type $$t1)) + (func (import "M" "f2") (type $$t0)) + (func (import "M" "f2") (type $$t1)) + (func (import "M" "f2") (type $$t2)) +)`); + +// ./test/core/gc/type-subtyping.wast:482 +assert_unlinkable( + () => instantiate(`(module + (type $$t0 (sub (func (result (ref null func))))) + (rec (type $$t1 (sub $$t0 (func (result (ref null $$t1)))))) + (rec (type $$t2 (sub $$t1 (func (result (ref null $$t2)))))) + (func (import "M" "f0") (type $$t1)) + )`), + `incompatible import type`, +); + +// ./test/core/gc/type-subtyping.wast:492 +assert_unlinkable( + () => instantiate(`(module + (type $$t0 (sub (func (result (ref null func))))) + (rec (type $$t1 (sub $$t0 (func (result (ref null $$t1)))))) + (rec (type $$t2 (sub $$t1 (func (result (ref null $$t2)))))) + (func (import "M" "f0") (type $$t2)) + )`), + `incompatible import type`, +); + +// ./test/core/gc/type-subtyping.wast:502 +assert_unlinkable( + () => instantiate(`(module + (type $$t0 (sub (func (result (ref null func))))) + (rec (type $$t1 (sub $$t0 (func (result (ref null $$t1)))))) + (rec (type $$t2 (sub $$t1 (func (result (ref null $$t2)))))) + (func (import "M" "f1") (type $$t2)) + )`), + `incompatible import type`, +); + +// ./test/core/gc/type-subtyping.wast:512 +let $27 = instantiate(`(module + (type $$t1 (sub (func))) + (type $$t2 (sub final (func))) + (func (export "f1") (type $$t1)) + (func (export "f2") (type $$t2)) +)`); + +// ./test/core/gc/type-subtyping.wast:518 +register($27, `M2`); + +// ./test/core/gc/type-subtyping.wast:520 +assert_unlinkable( + () => instantiate(`(module + (type $$t1 (sub (func))) + (type $$t2 (sub final (func))) + (func (import "M2" "f1") (type $$t2)) + )`), + `incompatible import type`, +); + +// ./test/core/gc/type-subtyping.wast:528 +assert_unlinkable( + () => instantiate(`(module + (type $$t1 (sub (func))) + (type $$t2 (sub final (func))) + (func (import "M2" "f2") (type $$t1)) + )`), + `incompatible import type`, +); + +// ./test/core/gc/type-subtyping.wast:538 +let $28 = instantiate(`(module + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f2))))) + (rec (type $$g2 (sub $$f2 (func))) (type (struct))) + (func (export "g") (type $$g2)) +)`); + +// ./test/core/gc/type-subtyping.wast:543 +register($28, `M3`); + +// ./test/core/gc/type-subtyping.wast:544 +let $29 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$g1 (sub $$f1 (func))) (type (struct))) + (func (import "M3" "g") (type $$g1)) +)`); + +// ./test/core/gc/type-subtyping.wast:550 +let $30 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type $$s1 (sub (struct (field (ref $$f1)))))) + (rec (type $$f2 (sub (func))) (type $$s2 (sub (struct (field (ref $$f2)))))) + (rec + (type $$g2 (sub $$f2 (func))) + (type (sub $$s2 (struct (field (ref $$f1) (ref $$f2) (ref $$f1) (ref $$f2) (ref $$g2))))) + ) + (func (export "g") (type $$g2)) +)`); + +// ./test/core/gc/type-subtyping.wast:559 +register($30, `M4`); + +// ./test/core/gc/type-subtyping.wast:560 +let $31 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type $$s1 (sub (struct (field (ref $$f1)))))) + (rec (type $$f2 (sub (func))) (type $$s2 (sub (struct (field (ref $$f2)))))) + (rec + (type $$g1 (sub $$f1 (func))) + (type (sub $$s1 (struct (field (ref $$f1) (ref $$f1) (ref $$f2) (ref $$f2) (ref $$g1))))) + ) + (func (import "M4" "g") (type $$g1)) +)`); + +// ./test/core/gc/type-subtyping.wast:570 +let $32 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$g2 (sub $$f2 (func))) (type (struct))) + (func (export "g") (type $$g2)) +)`); + +// ./test/core/gc/type-subtyping.wast:576 +register($32, `M5`); + +// ./test/core/gc/type-subtyping.wast:577 +assert_unlinkable( + () => instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$g1 (sub $$f1 (func))) (type (struct))) + (func (import "M5" "g") (type $$g1)) + )`), + `incompatible import`, +); + +// ./test/core/gc/type-subtyping.wast:586 +let $33 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f2))))) + (rec (type $$g (sub $$f1 (func))) (type (struct))) + (func (export "g") (type $$g)) +)`); + +// ./test/core/gc/type-subtyping.wast:592 +register($33, `M6`); + +// ./test/core/gc/type-subtyping.wast:593 +let $34 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type (struct (field (ref $$f1))))) + (rec (type $$f2 (sub (func))) (type (struct (field (ref $$f2))))) + (rec (type $$g (sub $$f1 (func))) (type (struct))) + (func (import "M6" "g") (type $$f1)) +)`); + +// ./test/core/gc/type-subtyping.wast:600 +let $35 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type $$s1 (sub (struct (field (ref $$f1)))))) + (rec (type $$f2 (sub (func))) (type $$s2 (sub (struct (field (ref $$f2)))))) + (rec + (type $$g2 (sub $$f2 (func))) + (type (sub $$s2 (struct (field (ref $$f1) (ref $$f2) (ref $$f1) (ref $$f2) (ref $$g2))))) + ) + (rec (type $$h (sub $$g2 (func))) (type (struct))) + (func (export "h") (type $$h)) +)`); + +// ./test/core/gc/type-subtyping.wast:610 +register($35, `M7`); + +// ./test/core/gc/type-subtyping.wast:611 +let $36 = instantiate(`(module + (rec (type $$f1 (sub (func))) (type $$s1 (sub (struct (field (ref $$f1)))))) + (rec (type $$f2 (sub (func))) (type $$s2 (sub (struct (field (ref $$f2)))))) + (rec + (type $$g1 (sub $$f1 (func))) + (type (sub $$s1 (struct (field (ref $$f1) (ref $$f1) (ref $$f2) (ref $$f2) (ref $$g1))))) + ) + (rec (type $$h (sub $$g1 (func))) (type (struct))) + (func (import "M7" "h") (type $$f1)) + (func (import "M7" "h") (type $$g1)) +)`); + +// ./test/core/gc/type-subtyping.wast:624 +let $37 = instantiate(`(module + (rec (type $$f11 (sub (func (result (ref func))))) (type $$f12 (sub $$f11 (func (result (ref $$f11)))))) + (rec (type $$f21 (sub (func (result (ref func))))) (type $$f22 (sub $$f21 (func (result (ref $$f21)))))) + (func (export "f11") (type $$f11) (unreachable)) + (func (export "f12") (type $$f12) (unreachable)) +)`); + +// ./test/core/gc/type-subtyping.wast:630 +register($37, `M8`); + +// ./test/core/gc/type-subtyping.wast:631 +let $38 = instantiate(`(module + (rec (type $$f11 (sub (func (result (ref func))))) (type $$f12 (sub $$f11 (func (result (ref $$f11)))))) + (rec (type $$f21 (sub (func (result (ref func))))) (type $$f22 (sub $$f21 (func (result (ref $$f21)))))) + (func (import "M8" "f11") (type $$f11)) + (func (import "M8" "f11") (type $$f21)) + (func (import "M8" "f12") (type $$f12)) + (func (import "M8" "f12") (type $$f22)) +)`); + +// ./test/core/gc/type-subtyping.wast:640 +let $39 = instantiate(`(module + (rec (type $$f11 (sub (func (result (ref func))))) (type $$f12 (sub $$f11 (func (result (ref $$f11)))))) + (rec (type $$f21 (sub (func (result (ref func))))) (type $$f22 (sub $$f21 (func (result (ref $$f21)))))) + (rec (type $$g11 (sub $$f11 (func (result (ref func))))) (type $$g12 (sub $$g11 (func (result (ref $$g11)))))) + (rec (type $$g21 (sub $$f21 (func (result (ref func))))) (type $$g22 (sub $$g21 (func (result (ref $$g21)))))) + (func (export "g11") (type $$g11) (unreachable)) + (func (export "g12") (type $$g12) (unreachable)) +)`); + +// ./test/core/gc/type-subtyping.wast:648 +register($39, `M9`); + +// ./test/core/gc/type-subtyping.wast:649 +let $40 = instantiate(`(module + (rec (type $$f11 (sub (func (result (ref func))))) (type $$f12 (sub $$f11 (func (result (ref $$f11)))))) + (rec (type $$f21 (sub (func (result (ref func))))) (type $$f22 (sub $$f21 (func (result (ref $$f21)))))) + (rec (type $$g11 (sub $$f11 (func (result (ref func))))) (type $$g12 (sub $$g11 (func (result (ref $$g11)))))) + (rec (type $$g21 (sub $$f21 (func (result (ref func))))) (type $$g22 (sub $$g21 (func (result (ref $$g21)))))) + (func (import "M9" "g11") (type $$f11)) + (func (import "M9" "g11") (type $$f21)) + (func (import "M9" "g12") (type $$f11)) + (func (import "M9" "g12") (type $$f21)) + (func (import "M9" "g11") (type $$g11)) + (func (import "M9" "g11") (type $$g21)) + (func (import "M9" "g12") (type $$g12)) + (func (import "M9" "g12") (type $$g22)) +)`); + +// ./test/core/gc/type-subtyping.wast:664 +let $41 = instantiate(`(module + (rec (type $$f11 (sub (func))) (type $$f12 (sub $$f11 (func)))) + (rec (type $$f21 (sub (func))) (type $$f22 (sub $$f11 (func)))) + (func (export "f") (type $$f21)) +)`); + +// ./test/core/gc/type-subtyping.wast:669 +register($41, `M10`); + +// ./test/core/gc/type-subtyping.wast:670 +assert_unlinkable( + () => instantiate(`(module + (rec (type $$f11 (sub (func))) (type $$f12 (sub $$f11 (func)))) + (func (import "M10" "f") (type $$f11)) + )`), + `incompatible import`, +); + +// ./test/core/gc/type-subtyping.wast:678 +let $42 = instantiate(`(module + (rec (type $$f01 (sub (func))) (type $$f02 (sub $$f01 (func)))) + (rec (type $$f11 (sub (func))) (type $$f12 (sub $$f01 (func)))) + (rec (type $$f21 (sub (func))) (type $$f22 (sub $$f11 (func)))) + (func (export "f") (type $$f21)) +)`); + +// ./test/core/gc/type-subtyping.wast:684 +register($42, `M11`); + +// ./test/core/gc/type-subtyping.wast:685 +assert_unlinkable( + () => instantiate(`(module + (rec (type $$f01 (sub (func))) (type $$f02 (sub $$f01 (func)))) + (rec (type $$f11 (sub (func))) (type $$f12 (sub $$f01 (func)))) + (func (import "M11" "f") (type $$f11)) + )`), + `incompatible import`, +); + +// ./test/core/gc/type-subtyping.wast:698 +assert_invalid( + () => instantiate(`(module + (type $$t (func)) + (type $$s (sub $$t (func))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:706 +assert_invalid( + () => instantiate(`(module + (type $$t (struct)) + (type $$s (sub $$t (struct))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:714 +assert_invalid( + () => instantiate(`(module + (type $$t (sub final (func))) + (type $$s (sub $$t (func))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:722 +assert_invalid( + () => instantiate(`(module + (type $$t (sub (func))) + (type $$s (sub final $$t (func))) + (type $$u (sub $$s (func))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:735 +assert_invalid( + () => instantiate(`(module + (type $$a0 (sub (array i32))) + (type $$s0 (sub $$a0 (struct))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:743 +assert_invalid( + () => instantiate(`(module + (type $$f0 (sub (func (param i32) (result i32)))) + (type $$s0 (sub $$f0 (struct))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:751 +assert_invalid( + () => instantiate(`(module + (type $$s0 (sub (struct))) + (type $$a0 (sub $$s0 (array i32))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:759 +assert_invalid( + () => instantiate(`(module + (type $$f0 (sub (func (param i32) (result i32)))) + (type $$a0 (sub $$f0 (array i32))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:767 +assert_invalid( + () => instantiate(`(module + (type $$s0 (sub (struct))) + (type $$f0 (sub $$s0 (func (param i32) (result i32)))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:775 +assert_invalid( + () => instantiate(`(module + (type $$a0 (sub (array i32))) + (type $$f0 (sub $$a0 (func (param i32) (result i32)))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:783 +assert_invalid( + () => instantiate(`(module + (type $$a0 (sub (array i32))) + (type $$a1 (sub $$a0 (array i64))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:791 +assert_invalid( + () => instantiate(`(module + (type $$s0 (sub (struct (field i32)))) + (type $$s1 (sub $$s0 (struct (field i64)))) + )`), + `sub type`, +); + +// ./test/core/gc/type-subtyping.wast:799 +assert_invalid( + () => instantiate(`(module + (type $$f0 (sub (func))) + (type $$f1 (sub $$f0 (func (param i32)))) + )`), + `sub type`, +); diff --git a/js/src/jit-test/tests/wasm/spec/gc/unreachable.wast.js b/js/src/jit-test/tests/wasm/spec/gc/unreachable.wast.js new file mode 100644 index 0000000000..68401d21d0 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/unreachable.wast.js @@ -0,0 +1,424 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/unreachable.wast + +// ./test/core/unreachable.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definitions + (func $$dummy) + (func $$dummy3 (param i32 i32 i32)) + + (func (export "type-i32") (result i32) (unreachable)) + (func (export "type-i64") (result i64) (unreachable)) + (func (export "type-f32") (result f32) (unreachable)) + (func (export "type-f64") (result f64) (unreachable)) + + (func (export "as-func-first") (result i32) + (unreachable) (i32.const -1) + ) + (func (export "as-func-mid") (result i32) + (call $$dummy) (unreachable) (i32.const -1) + ) + (func (export "as-func-last") + (call $$dummy) (unreachable) + ) + (func (export "as-func-value") (result i32) + (call $$dummy) (unreachable) + ) + + (func (export "as-block-first") (result i32) + (block (result i32) (unreachable) (i32.const 2)) + ) + (func (export "as-block-mid") (result i32) + (block (result i32) (call $$dummy) (unreachable) (i32.const 2)) + ) + (func (export "as-block-last") + (block (nop) (call $$dummy) (unreachable)) + ) + (func (export "as-block-value") (result i32) + (block (result i32) (nop) (call $$dummy) (unreachable)) + ) + (func (export "as-block-broke") (result i32) + (block (result i32) (call $$dummy) (br 0 (i32.const 1)) (unreachable)) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (unreachable) (i32.const 2)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) (call $$dummy) (unreachable) (i32.const 2)) + ) + (func (export "as-loop-last") + (loop (nop) (call $$dummy) (unreachable)) + ) + (func (export "as-loop-broke") (result i32) + (block (result i32) + (loop (result i32) (call $$dummy) (br 1 (i32.const 1)) (unreachable)) + ) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (unreachable))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (unreachable))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (unreachable) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (unreachable))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (unreachable))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (unreachable) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-2") (result i32) + (block (result i32) + (block (result i32) (br_table 0 1 (unreachable) (i32.const 1))) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (unreachable)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-and-index") (result i32) + (block (result i32) (br_table 0 0 (unreachable)) (i32.const 8)) + ) + + (func (export "as-return-value") (result i64) + (return (unreachable)) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (unreachable) (then (i32.const 0)) (else (i32.const 1))) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (if (result i32) (local.get 0) (then (unreachable)) (else (local.get 1))) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (if (result i32) (local.get 0) (then (local.get 1)) (else (unreachable))) + ) + (func (export "as-if-then-no-else") (param i32 i32) (result i32) + (if (local.get 0) (then (unreachable))) (local.get 1) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (unreachable) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (unreachable) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (unreachable)) + ) + + (func (export "as-call-first") + (call $$dummy3 (unreachable) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") + (call $$dummy3 (i32.const 1) (unreachable) (i32.const 3)) + ) + (func (export "as-call-last") + (call $$dummy3 (i32.const 1) (i32.const 2) (unreachable)) + ) + + (type $$sig (func (param i32 i32 i32))) + (table funcref (elem $$dummy3)) + (func (export "as-call_indirect-func") + (call_indirect (type $$sig) + (unreachable) (i32.const 1) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-first") + (call_indirect (type $$sig) + (i32.const 0) (unreachable) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-mid") + (call_indirect (type $$sig) + (i32.const 0) (i32.const 1) (unreachable) (i32.const 3) + ) + ) + (func (export "as-call_indirect-last") + (call_indirect (type $$sig) + (i32.const 0) (i32.const 1) (i32.const 2) (unreachable) + ) + ) + + (func (export "as-local.set-value") (local f32) + (local.set 0 (unreachable)) + ) + (func (export "as-local.tee-value") (result f32) (local f32) + (local.tee 0 (unreachable)) + ) + (global $$a (mut f32) (f32.const 0)) + (func (export "as-global.set-value") (result f32) + (global.set $$a (unreachable)) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (f32.load (unreachable)) + ) + (func (export "as-loadN-address") (result i64) + (i64.load8_s (unreachable)) + ) + + (func (export "as-store-address") + (f64.store (unreachable) (f64.const 7)) + ) + (func (export "as-store-value") + (i64.store (i32.const 2) (unreachable)) + ) + + (func (export "as-storeN-address") + (i32.store8 (unreachable) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i64.store16 (i32.const 2) (unreachable)) + ) + + (func (export "as-unary-operand") (result f32) + (f32.neg (unreachable)) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (unreachable) (i32.const 10)) + ) + (func (export "as-binary-right") (result i64) + (i64.sub (i64.const 10) (unreachable)) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (unreachable)) + ) + + (func (export "as-compare-left") (result i32) + (f64.le (unreachable) (f64.const 10)) + ) + (func (export "as-compare-right") (result i32) + (f32.ne (f32.const 10) (unreachable)) + ) + + (func (export "as-convert-operand") (result i32) + (i32.wrap_i64 (unreachable)) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (unreachable)) + ) +)`); + +// ./test/core/unreachable.wast:221 +assert_trap(() => invoke($0, `type-i32`, []), `unreachable`); + +// ./test/core/unreachable.wast:222 +assert_trap(() => invoke($0, `type-i64`, []), `unreachable`); + +// ./test/core/unreachable.wast:223 +assert_trap(() => invoke($0, `type-f32`, []), `unreachable`); + +// ./test/core/unreachable.wast:224 +assert_trap(() => invoke($0, `type-f64`, []), `unreachable`); + +// ./test/core/unreachable.wast:226 +assert_trap(() => invoke($0, `as-func-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:227 +assert_trap(() => invoke($0, `as-func-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:228 +assert_trap(() => invoke($0, `as-func-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:229 +assert_trap(() => invoke($0, `as-func-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:231 +assert_trap(() => invoke($0, `as-block-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:232 +assert_trap(() => invoke($0, `as-block-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:233 +assert_trap(() => invoke($0, `as-block-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:234 +assert_trap(() => invoke($0, `as-block-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:235 +assert_return(() => invoke($0, `as-block-broke`, []), [value("i32", 1)]); + +// ./test/core/unreachable.wast:237 +assert_trap(() => invoke($0, `as-loop-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:238 +assert_trap(() => invoke($0, `as-loop-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:239 +assert_trap(() => invoke($0, `as-loop-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:240 +assert_return(() => invoke($0, `as-loop-broke`, []), [value("i32", 1)]); + +// ./test/core/unreachable.wast:242 +assert_trap(() => invoke($0, `as-br-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:244 +assert_trap(() => invoke($0, `as-br_if-cond`, []), `unreachable`); + +// ./test/core/unreachable.wast:245 +assert_trap(() => invoke($0, `as-br_if-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:246 +assert_trap(() => invoke($0, `as-br_if-value-cond`, []), `unreachable`); + +// ./test/core/unreachable.wast:248 +assert_trap(() => invoke($0, `as-br_table-index`, []), `unreachable`); + +// ./test/core/unreachable.wast:249 +assert_trap(() => invoke($0, `as-br_table-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:250 +assert_trap(() => invoke($0, `as-br_table-value-2`, []), `unreachable`); + +// ./test/core/unreachable.wast:251 +assert_trap(() => invoke($0, `as-br_table-value-index`, []), `unreachable`); + +// ./test/core/unreachable.wast:252 +assert_trap(() => invoke($0, `as-br_table-value-and-index`, []), `unreachable`); + +// ./test/core/unreachable.wast:254 +assert_trap(() => invoke($0, `as-return-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:256 +assert_trap(() => invoke($0, `as-if-cond`, []), `unreachable`); + +// ./test/core/unreachable.wast:257 +assert_trap(() => invoke($0, `as-if-then`, [1, 6]), `unreachable`); + +// ./test/core/unreachable.wast:258 +assert_return(() => invoke($0, `as-if-then`, [0, 6]), [value("i32", 6)]); + +// ./test/core/unreachable.wast:259 +assert_trap(() => invoke($0, `as-if-else`, [0, 6]), `unreachable`); + +// ./test/core/unreachable.wast:260 +assert_return(() => invoke($0, `as-if-else`, [1, 6]), [value("i32", 6)]); + +// ./test/core/unreachable.wast:261 +assert_trap(() => invoke($0, `as-if-then-no-else`, [1, 6]), `unreachable`); + +// ./test/core/unreachable.wast:262 +assert_return(() => invoke($0, `as-if-then-no-else`, [0, 6]), [value("i32", 6)]); + +// ./test/core/unreachable.wast:264 +assert_trap(() => invoke($0, `as-select-first`, [0, 6]), `unreachable`); + +// ./test/core/unreachable.wast:265 +assert_trap(() => invoke($0, `as-select-first`, [1, 6]), `unreachable`); + +// ./test/core/unreachable.wast:266 +assert_trap(() => invoke($0, `as-select-second`, [0, 6]), `unreachable`); + +// ./test/core/unreachable.wast:267 +assert_trap(() => invoke($0, `as-select-second`, [1, 6]), `unreachable`); + +// ./test/core/unreachable.wast:268 +assert_trap(() => invoke($0, `as-select-cond`, []), `unreachable`); + +// ./test/core/unreachable.wast:270 +assert_trap(() => invoke($0, `as-call-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:271 +assert_trap(() => invoke($0, `as-call-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:272 +assert_trap(() => invoke($0, `as-call-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:274 +assert_trap(() => invoke($0, `as-call_indirect-func`, []), `unreachable`); + +// ./test/core/unreachable.wast:275 +assert_trap(() => invoke($0, `as-call_indirect-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:276 +assert_trap(() => invoke($0, `as-call_indirect-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:277 +assert_trap(() => invoke($0, `as-call_indirect-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:279 +assert_trap(() => invoke($0, `as-local.set-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:280 +assert_trap(() => invoke($0, `as-local.tee-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:281 +assert_trap(() => invoke($0, `as-global.set-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:283 +assert_trap(() => invoke($0, `as-load-address`, []), `unreachable`); + +// ./test/core/unreachable.wast:284 +assert_trap(() => invoke($0, `as-loadN-address`, []), `unreachable`); + +// ./test/core/unreachable.wast:286 +assert_trap(() => invoke($0, `as-store-address`, []), `unreachable`); + +// ./test/core/unreachable.wast:287 +assert_trap(() => invoke($0, `as-store-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:288 +assert_trap(() => invoke($0, `as-storeN-address`, []), `unreachable`); + +// ./test/core/unreachable.wast:289 +assert_trap(() => invoke($0, `as-storeN-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:291 +assert_trap(() => invoke($0, `as-unary-operand`, []), `unreachable`); + +// ./test/core/unreachable.wast:293 +assert_trap(() => invoke($0, `as-binary-left`, []), `unreachable`); + +// ./test/core/unreachable.wast:294 +assert_trap(() => invoke($0, `as-binary-right`, []), `unreachable`); + +// ./test/core/unreachable.wast:296 +assert_trap(() => invoke($0, `as-test-operand`, []), `unreachable`); + +// ./test/core/unreachable.wast:298 +assert_trap(() => invoke($0, `as-compare-left`, []), `unreachable`); + +// ./test/core/unreachable.wast:299 +assert_trap(() => invoke($0, `as-compare-right`, []), `unreachable`); + +// ./test/core/unreachable.wast:301 +assert_trap(() => invoke($0, `as-convert-operand`, []), `unreachable`); + +// ./test/core/unreachable.wast:303 +assert_trap(() => invoke($0, `as-memory.grow-size`, []), `unreachable`); diff --git a/js/src/jit-test/tests/wasm/spec/gc/unreached-valid.wast.js b/js/src/jit-test/tests/wasm/spec/gc/unreached-valid.wast.js new file mode 100644 index 0000000000..ced4b9df3c --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/gc/unreached-valid.wast.js @@ -0,0 +1,138 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/unreached-valid.wast + +// ./test/core/unreached-valid.wast:1 +let $0 = instantiate(`(module + + ;; Check that both sides of the select are evaluated + (func (export "select-trap-left") (param $$cond i32) (result i32) + (select (unreachable) (i32.const 0) (local.get $$cond)) + ) + (func (export "select-trap-right") (param $$cond i32) (result i32) + (select (i32.const 0) (unreachable) (local.get $$cond)) + ) + + (func (export "select-unreached") + (unreachable) (select) + (unreachable) (i32.const 0) (select) + (unreachable) (i32.const 0) (i32.const 0) (select) + (unreachable) (i32.const 0) (i32.const 0) (i32.const 0) (select) + (unreachable) (f32.const 0) (i32.const 0) (select) + (unreachable) + ) + + (func (export "select-unreached-result1") (result i32) + (unreachable) (i32.add (select)) + ) + + (func (export "select-unreached-result2") (result i64) + (unreachable) (i64.add (select (i64.const 0) (i32.const 0))) + ) + + (func (export "select-unreached-num") + (unreachable) + (select) + (i32.eqz) + (drop) + ) + (func (export "select-unreached-ref") + (unreachable) + (select) + (ref.is_null) + (drop) + ) + + (type $$t (func (param i32) (result i32))) + (func (export "call_ref-unreached") (result i32) + (unreachable) + (call_ref $$t) + ) +)`); + +// ./test/core/unreached-valid.wast:48 +assert_trap(() => invoke($0, `select-trap-left`, [1]), `unreachable`); + +// ./test/core/unreached-valid.wast:49 +assert_trap(() => invoke($0, `select-trap-left`, [0]), `unreachable`); + +// ./test/core/unreached-valid.wast:50 +assert_trap(() => invoke($0, `select-trap-right`, [1]), `unreachable`); + +// ./test/core/unreached-valid.wast:51 +assert_trap(() => invoke($0, `select-trap-right`, [0]), `unreachable`); + +// ./test/core/unreached-valid.wast:53 +assert_trap(() => invoke($0, `select-unreached-result1`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:54 +assert_trap(() => invoke($0, `select-unreached-result2`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:55 +assert_trap(() => invoke($0, `select-unreached-num`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:56 +assert_trap(() => invoke($0, `select-unreached-ref`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:58 +assert_trap(() => invoke($0, `call_ref-unreached`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:63 +let $1 = instantiate(`(module + (func (export "meet-bottom") + (block (result f64) + (block (result f32) + (unreachable) + (br_table 0 1 1 (i32.const 1)) + ) + (drop) + (f64.const 0) + ) + (drop) + ) +)`); + +// ./test/core/unreached-valid.wast:77 +assert_trap(() => invoke($1, `meet-bottom`, []), `unreachable`); + +// ./test/core/unreached-valid.wast:82 +let $2 = instantiate(`(module + (func (result (ref func)) + (unreachable) + (ref.as_non_null) + ) + (func (result (ref extern)) + (unreachable) + (ref.as_non_null) + ) + + (func (result (ref func)) + (block (result funcref) + (unreachable) + (br_on_null 0) + (return) + ) + (unreachable) + ) + (func (result (ref extern)) + (block (result externref) + (unreachable) + (br_on_null 0) + (return) + ) + (unreachable) + ) +)`); diff --git a/js/src/jit-test/tests/wasm/spec/memory64/address64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/address64.wast.js new file mode 100644 index 0000000000..c6de7e8ed7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/address64.wast.js @@ -0,0 +1,1025 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/address64.wast + +// ./test/core/address64.wast:3 +let $0 = instantiate(`(module + (memory i64 1) + (data (i64.const 0) "abcdefghijklmnopqrstuvwxyz") + + (func (export "8u_good1") (param $$i i64) (result i32) + (i32.load8_u offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good2") (param $$i i64) (result i32) + (i32.load8_u align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good3") (param $$i i64) (result i32) + (i32.load8_u offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8u_good4") (param $$i i64) (result i32) + (i32.load8_u offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8u_good5") (param $$i i64) (result i32) + (i32.load8_u offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "8s_good1") (param $$i i64) (result i32) + (i32.load8_s offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good2") (param $$i i64) (result i32) + (i32.load8_s align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good3") (param $$i i64) (result i32) + (i32.load8_s offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8s_good4") (param $$i i64) (result i32) + (i32.load8_s offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8s_good5") (param $$i i64) (result i32) + (i32.load8_s offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "16u_good1") (param $$i i64) (result i32) + (i32.load16_u offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good2") (param $$i i64) (result i32) + (i32.load16_u align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good3") (param $$i i64) (result i32) + (i32.load16_u offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16u_good4") (param $$i i64) (result i32) + (i32.load16_u offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16u_good5") (param $$i i64) (result i32) + (i32.load16_u offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "16s_good1") (param $$i i64) (result i32) + (i32.load16_s offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good2") (param $$i i64) (result i32) + (i32.load16_s align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good3") (param $$i i64) (result i32) + (i32.load16_s offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16s_good4") (param $$i i64) (result i32) + (i32.load16_s offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16s_good5") (param $$i i64) (result i32) + (i32.load16_s offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "32_good1") (param $$i i64) (result i32) + (i32.load offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32_good2") (param $$i i64) (result i32) + (i32.load align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32_good3") (param $$i i64) (result i32) + (i32.load offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32_good4") (param $$i i64) (result i32) + (i32.load offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32_good5") (param $$i i64) (result i32) + (i32.load offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "8u_bad") (param $$i i64) + (drop (i32.load8_u offset=4294967295 (local.get $$i))) + ) + (func (export "8s_bad") (param $$i i64) + (drop (i32.load8_s offset=4294967295 (local.get $$i))) + ) + (func (export "16u_bad") (param $$i i64) + (drop (i32.load16_u offset=4294967295 (local.get $$i))) + ) + (func (export "16s_bad") (param $$i i64) + (drop (i32.load16_s offset=4294967295 (local.get $$i))) + ) + (func (export "32_bad") (param $$i i64) + (drop (i32.load offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/address64.wast:104 +assert_return(() => invoke($0, `8u_good1`, [0n]), [value("i32", 97)]); + +// ./test/core/address64.wast:105 +assert_return(() => invoke($0, `8u_good2`, [0n]), [value("i32", 97)]); + +// ./test/core/address64.wast:106 +assert_return(() => invoke($0, `8u_good3`, [0n]), [value("i32", 98)]); + +// ./test/core/address64.wast:107 +assert_return(() => invoke($0, `8u_good4`, [0n]), [value("i32", 99)]); + +// ./test/core/address64.wast:108 +assert_return(() => invoke($0, `8u_good5`, [0n]), [value("i32", 122)]); + +// ./test/core/address64.wast:110 +assert_return(() => invoke($0, `8s_good1`, [0n]), [value("i32", 97)]); + +// ./test/core/address64.wast:111 +assert_return(() => invoke($0, `8s_good2`, [0n]), [value("i32", 97)]); + +// ./test/core/address64.wast:112 +assert_return(() => invoke($0, `8s_good3`, [0n]), [value("i32", 98)]); + +// ./test/core/address64.wast:113 +assert_return(() => invoke($0, `8s_good4`, [0n]), [value("i32", 99)]); + +// ./test/core/address64.wast:114 +assert_return(() => invoke($0, `8s_good5`, [0n]), [value("i32", 122)]); + +// ./test/core/address64.wast:116 +assert_return(() => invoke($0, `16u_good1`, [0n]), [value("i32", 25185)]); + +// ./test/core/address64.wast:117 +assert_return(() => invoke($0, `16u_good2`, [0n]), [value("i32", 25185)]); + +// ./test/core/address64.wast:118 +assert_return(() => invoke($0, `16u_good3`, [0n]), [value("i32", 25442)]); + +// ./test/core/address64.wast:119 +assert_return(() => invoke($0, `16u_good4`, [0n]), [value("i32", 25699)]); + +// ./test/core/address64.wast:120 +assert_return(() => invoke($0, `16u_good5`, [0n]), [value("i32", 122)]); + +// ./test/core/address64.wast:122 +assert_return(() => invoke($0, `16s_good1`, [0n]), [value("i32", 25185)]); + +// ./test/core/address64.wast:123 +assert_return(() => invoke($0, `16s_good2`, [0n]), [value("i32", 25185)]); + +// ./test/core/address64.wast:124 +assert_return(() => invoke($0, `16s_good3`, [0n]), [value("i32", 25442)]); + +// ./test/core/address64.wast:125 +assert_return(() => invoke($0, `16s_good4`, [0n]), [value("i32", 25699)]); + +// ./test/core/address64.wast:126 +assert_return(() => invoke($0, `16s_good5`, [0n]), [value("i32", 122)]); + +// ./test/core/address64.wast:128 +assert_return(() => invoke($0, `32_good1`, [0n]), [value("i32", 1684234849)]); + +// ./test/core/address64.wast:129 +assert_return(() => invoke($0, `32_good2`, [0n]), [value("i32", 1684234849)]); + +// ./test/core/address64.wast:130 +assert_return(() => invoke($0, `32_good3`, [0n]), [value("i32", 1701077858)]); + +// ./test/core/address64.wast:131 +assert_return(() => invoke($0, `32_good4`, [0n]), [value("i32", 1717920867)]); + +// ./test/core/address64.wast:132 +assert_return(() => invoke($0, `32_good5`, [0n]), [value("i32", 122)]); + +// ./test/core/address64.wast:134 +assert_return(() => invoke($0, `8u_good1`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:135 +assert_return(() => invoke($0, `8u_good2`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:136 +assert_return(() => invoke($0, `8u_good3`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:137 +assert_return(() => invoke($0, `8u_good4`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:138 +assert_return(() => invoke($0, `8u_good5`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:140 +assert_return(() => invoke($0, `8s_good1`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:141 +assert_return(() => invoke($0, `8s_good2`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:142 +assert_return(() => invoke($0, `8s_good3`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:143 +assert_return(() => invoke($0, `8s_good4`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:144 +assert_return(() => invoke($0, `8s_good5`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:146 +assert_return(() => invoke($0, `16u_good1`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:147 +assert_return(() => invoke($0, `16u_good2`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:148 +assert_return(() => invoke($0, `16u_good3`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:149 +assert_return(() => invoke($0, `16u_good4`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:150 +assert_return(() => invoke($0, `16u_good5`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:152 +assert_return(() => invoke($0, `16s_good1`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:153 +assert_return(() => invoke($0, `16s_good2`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:154 +assert_return(() => invoke($0, `16s_good3`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:155 +assert_return(() => invoke($0, `16s_good4`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:156 +assert_return(() => invoke($0, `16s_good5`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:158 +assert_return(() => invoke($0, `32_good1`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:159 +assert_return(() => invoke($0, `32_good2`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:160 +assert_return(() => invoke($0, `32_good3`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:161 +assert_return(() => invoke($0, `32_good4`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:162 +assert_return(() => invoke($0, `32_good5`, [65507n]), [value("i32", 0)]); + +// ./test/core/address64.wast:164 +assert_return(() => invoke($0, `8u_good1`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:165 +assert_return(() => invoke($0, `8u_good2`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:166 +assert_return(() => invoke($0, `8u_good3`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:167 +assert_return(() => invoke($0, `8u_good4`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:168 +assert_return(() => invoke($0, `8u_good5`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:170 +assert_return(() => invoke($0, `8s_good1`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:171 +assert_return(() => invoke($0, `8s_good2`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:172 +assert_return(() => invoke($0, `8s_good3`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:173 +assert_return(() => invoke($0, `8s_good4`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:174 +assert_return(() => invoke($0, `8s_good5`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:176 +assert_return(() => invoke($0, `16u_good1`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:177 +assert_return(() => invoke($0, `16u_good2`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:178 +assert_return(() => invoke($0, `16u_good3`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:179 +assert_return(() => invoke($0, `16u_good4`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:180 +assert_return(() => invoke($0, `16u_good5`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:182 +assert_return(() => invoke($0, `16s_good1`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:183 +assert_return(() => invoke($0, `16s_good2`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:184 +assert_return(() => invoke($0, `16s_good3`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:185 +assert_return(() => invoke($0, `16s_good4`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:186 +assert_return(() => invoke($0, `16s_good5`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:188 +assert_return(() => invoke($0, `32_good1`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:189 +assert_return(() => invoke($0, `32_good2`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:190 +assert_return(() => invoke($0, `32_good3`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:191 +assert_return(() => invoke($0, `32_good4`, [65508n]), [value("i32", 0)]); + +// ./test/core/address64.wast:192 +assert_trap(() => invoke($0, `32_good5`, [65508n]), `out of bounds memory access`); + +// ./test/core/address64.wast:194 +assert_trap(() => invoke($0, `8u_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:195 +assert_trap(() => invoke($0, `8s_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:196 +assert_trap(() => invoke($0, `16u_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:197 +assert_trap(() => invoke($0, `16s_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:198 +assert_trap(() => invoke($0, `32_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:200 +assert_trap(() => invoke($0, `8u_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:201 +assert_trap(() => invoke($0, `8s_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:202 +assert_trap(() => invoke($0, `16u_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:203 +assert_trap(() => invoke($0, `16s_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:204 +assert_trap(() => invoke($0, `32_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:209 +let $1 = instantiate(`(module + (memory i64 1) + (data (i64.const 0) "abcdefghijklmnopqrstuvwxyz") + + (func (export "8u_good1") (param $$i i64) (result i64) + (i64.load8_u offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good2") (param $$i i64) (result i64) + (i64.load8_u align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good3") (param $$i i64) (result i64) + (i64.load8_u offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8u_good4") (param $$i i64) (result i64) + (i64.load8_u offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8u_good5") (param $$i i64) (result i64) + (i64.load8_u offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "8s_good1") (param $$i i64) (result i64) + (i64.load8_s offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good2") (param $$i i64) (result i64) + (i64.load8_s align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good3") (param $$i i64) (result i64) + (i64.load8_s offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8s_good4") (param $$i i64) (result i64) + (i64.load8_s offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8s_good5") (param $$i i64) (result i64) + (i64.load8_s offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "16u_good1") (param $$i i64) (result i64) + (i64.load16_u offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good2") (param $$i i64) (result i64) + (i64.load16_u align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good3") (param $$i i64) (result i64) + (i64.load16_u offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16u_good4") (param $$i i64) (result i64) + (i64.load16_u offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16u_good5") (param $$i i64) (result i64) + (i64.load16_u offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "16s_good1") (param $$i i64) (result i64) + (i64.load16_s offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good2") (param $$i i64) (result i64) + (i64.load16_s align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good3") (param $$i i64) (result i64) + (i64.load16_s offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16s_good4") (param $$i i64) (result i64) + (i64.load16_s offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16s_good5") (param $$i i64) (result i64) + (i64.load16_s offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "32u_good1") (param $$i i64) (result i64) + (i64.load32_u offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32u_good2") (param $$i i64) (result i64) + (i64.load32_u align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32u_good3") (param $$i i64) (result i64) + (i64.load32_u offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32u_good4") (param $$i i64) (result i64) + (i64.load32_u offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32u_good5") (param $$i i64) (result i64) + (i64.load32_u offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "32s_good1") (param $$i i64) (result i64) + (i64.load32_s offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32s_good2") (param $$i i64) (result i64) + (i64.load32_s align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32s_good3") (param $$i i64) (result i64) + (i64.load32_s offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32s_good4") (param $$i i64) (result i64) + (i64.load32_s offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32s_good5") (param $$i i64) (result i64) + (i64.load32_s offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "64_good1") (param $$i i64) (result i64) + (i64.load offset=0 (local.get $$i)) ;; 0x6867666564636261 'abcdefgh' + ) + (func (export "64_good2") (param $$i i64) (result i64) + (i64.load align=1 (local.get $$i)) ;; 0x6867666564636261 'abcdefgh' + ) + (func (export "64_good3") (param $$i i64) (result i64) + (i64.load offset=1 align=1 (local.get $$i)) ;; 0x6968676665646362 'bcdefghi' + ) + (func (export "64_good4") (param $$i i64) (result i64) + (i64.load offset=2 align=2 (local.get $$i)) ;; 0x6a69686766656463 'cdefghij' + ) + (func (export "64_good5") (param $$i i64) (result i64) + (i64.load offset=25 align=8 (local.get $$i)) ;; 122 'z\\0\\0\\0\\0\\0\\0\\0' + ) + + (func (export "8u_bad") (param $$i i64) + (drop (i64.load8_u offset=4294967295 (local.get $$i))) + ) + (func (export "8s_bad") (param $$i i64) + (drop (i64.load8_s offset=4294967295 (local.get $$i))) + ) + (func (export "16u_bad") (param $$i i64) + (drop (i64.load16_u offset=4294967295 (local.get $$i))) + ) + (func (export "16s_bad") (param $$i i64) + (drop (i64.load16_s offset=4294967295 (local.get $$i))) + ) + (func (export "32u_bad") (param $$i i64) + (drop (i64.load32_u offset=4294967295 (local.get $$i))) + ) + (func (export "32s_bad") (param $$i i64) + (drop (i64.load32_s offset=4294967295 (local.get $$i))) + ) + (func (export "64_bad") (param $$i i64) + (drop (i64.load offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/address64.wast:348 +assert_return(() => invoke($1, `8u_good1`, [0n]), [value("i64", 97n)]); + +// ./test/core/address64.wast:349 +assert_return(() => invoke($1, `8u_good2`, [0n]), [value("i64", 97n)]); + +// ./test/core/address64.wast:350 +assert_return(() => invoke($1, `8u_good3`, [0n]), [value("i64", 98n)]); + +// ./test/core/address64.wast:351 +assert_return(() => invoke($1, `8u_good4`, [0n]), [value("i64", 99n)]); + +// ./test/core/address64.wast:352 +assert_return(() => invoke($1, `8u_good5`, [0n]), [value("i64", 122n)]); + +// ./test/core/address64.wast:354 +assert_return(() => invoke($1, `8s_good1`, [0n]), [value("i64", 97n)]); + +// ./test/core/address64.wast:355 +assert_return(() => invoke($1, `8s_good2`, [0n]), [value("i64", 97n)]); + +// ./test/core/address64.wast:356 +assert_return(() => invoke($1, `8s_good3`, [0n]), [value("i64", 98n)]); + +// ./test/core/address64.wast:357 +assert_return(() => invoke($1, `8s_good4`, [0n]), [value("i64", 99n)]); + +// ./test/core/address64.wast:358 +assert_return(() => invoke($1, `8s_good5`, [0n]), [value("i64", 122n)]); + +// ./test/core/address64.wast:360 +assert_return(() => invoke($1, `16u_good1`, [0n]), [value("i64", 25185n)]); + +// ./test/core/address64.wast:361 +assert_return(() => invoke($1, `16u_good2`, [0n]), [value("i64", 25185n)]); + +// ./test/core/address64.wast:362 +assert_return(() => invoke($1, `16u_good3`, [0n]), [value("i64", 25442n)]); + +// ./test/core/address64.wast:363 +assert_return(() => invoke($1, `16u_good4`, [0n]), [value("i64", 25699n)]); + +// ./test/core/address64.wast:364 +assert_return(() => invoke($1, `16u_good5`, [0n]), [value("i64", 122n)]); + +// ./test/core/address64.wast:366 +assert_return(() => invoke($1, `16s_good1`, [0n]), [value("i64", 25185n)]); + +// ./test/core/address64.wast:367 +assert_return(() => invoke($1, `16s_good2`, [0n]), [value("i64", 25185n)]); + +// ./test/core/address64.wast:368 +assert_return(() => invoke($1, `16s_good3`, [0n]), [value("i64", 25442n)]); + +// ./test/core/address64.wast:369 +assert_return(() => invoke($1, `16s_good4`, [0n]), [value("i64", 25699n)]); + +// ./test/core/address64.wast:370 +assert_return(() => invoke($1, `16s_good5`, [0n]), [value("i64", 122n)]); + +// ./test/core/address64.wast:372 +assert_return(() => invoke($1, `32u_good1`, [0n]), [value("i64", 1684234849n)]); + +// ./test/core/address64.wast:373 +assert_return(() => invoke($1, `32u_good2`, [0n]), [value("i64", 1684234849n)]); + +// ./test/core/address64.wast:374 +assert_return(() => invoke($1, `32u_good3`, [0n]), [value("i64", 1701077858n)]); + +// ./test/core/address64.wast:375 +assert_return(() => invoke($1, `32u_good4`, [0n]), [value("i64", 1717920867n)]); + +// ./test/core/address64.wast:376 +assert_return(() => invoke($1, `32u_good5`, [0n]), [value("i64", 122n)]); + +// ./test/core/address64.wast:378 +assert_return(() => invoke($1, `32s_good1`, [0n]), [value("i64", 1684234849n)]); + +// ./test/core/address64.wast:379 +assert_return(() => invoke($1, `32s_good2`, [0n]), [value("i64", 1684234849n)]); + +// ./test/core/address64.wast:380 +assert_return(() => invoke($1, `32s_good3`, [0n]), [value("i64", 1701077858n)]); + +// ./test/core/address64.wast:381 +assert_return(() => invoke($1, `32s_good4`, [0n]), [value("i64", 1717920867n)]); + +// ./test/core/address64.wast:382 +assert_return(() => invoke($1, `32s_good5`, [0n]), [value("i64", 122n)]); + +// ./test/core/address64.wast:384 +assert_return(() => invoke($1, `64_good1`, [0n]), [value("i64", 7523094288207667809n)]); + +// ./test/core/address64.wast:385 +assert_return(() => invoke($1, `64_good2`, [0n]), [value("i64", 7523094288207667809n)]); + +// ./test/core/address64.wast:386 +assert_return(() => invoke($1, `64_good3`, [0n]), [value("i64", 7595434461045744482n)]); + +// ./test/core/address64.wast:387 +assert_return(() => invoke($1, `64_good4`, [0n]), [value("i64", 7667774633883821155n)]); + +// ./test/core/address64.wast:388 +assert_return(() => invoke($1, `64_good5`, [0n]), [value("i64", 122n)]); + +// ./test/core/address64.wast:390 +assert_return(() => invoke($1, `8u_good1`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:391 +assert_return(() => invoke($1, `8u_good2`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:392 +assert_return(() => invoke($1, `8u_good3`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:393 +assert_return(() => invoke($1, `8u_good4`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:394 +assert_return(() => invoke($1, `8u_good5`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:396 +assert_return(() => invoke($1, `8s_good1`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:397 +assert_return(() => invoke($1, `8s_good2`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:398 +assert_return(() => invoke($1, `8s_good3`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:399 +assert_return(() => invoke($1, `8s_good4`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:400 +assert_return(() => invoke($1, `8s_good5`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:402 +assert_return(() => invoke($1, `16u_good1`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:403 +assert_return(() => invoke($1, `16u_good2`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:404 +assert_return(() => invoke($1, `16u_good3`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:405 +assert_return(() => invoke($1, `16u_good4`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:406 +assert_return(() => invoke($1, `16u_good5`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:408 +assert_return(() => invoke($1, `16s_good1`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:409 +assert_return(() => invoke($1, `16s_good2`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:410 +assert_return(() => invoke($1, `16s_good3`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:411 +assert_return(() => invoke($1, `16s_good4`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:412 +assert_return(() => invoke($1, `16s_good5`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:414 +assert_return(() => invoke($1, `32u_good1`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:415 +assert_return(() => invoke($1, `32u_good2`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:416 +assert_return(() => invoke($1, `32u_good3`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:417 +assert_return(() => invoke($1, `32u_good4`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:418 +assert_return(() => invoke($1, `32u_good5`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:420 +assert_return(() => invoke($1, `32s_good1`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:421 +assert_return(() => invoke($1, `32s_good2`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:422 +assert_return(() => invoke($1, `32s_good3`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:423 +assert_return(() => invoke($1, `32s_good4`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:424 +assert_return(() => invoke($1, `32s_good5`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:426 +assert_return(() => invoke($1, `64_good1`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:427 +assert_return(() => invoke($1, `64_good2`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:428 +assert_return(() => invoke($1, `64_good3`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:429 +assert_return(() => invoke($1, `64_good4`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:430 +assert_return(() => invoke($1, `64_good5`, [65503n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:432 +assert_return(() => invoke($1, `8u_good1`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:433 +assert_return(() => invoke($1, `8u_good2`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:434 +assert_return(() => invoke($1, `8u_good3`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:435 +assert_return(() => invoke($1, `8u_good4`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:436 +assert_return(() => invoke($1, `8u_good5`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:438 +assert_return(() => invoke($1, `8s_good1`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:439 +assert_return(() => invoke($1, `8s_good2`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:440 +assert_return(() => invoke($1, `8s_good3`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:441 +assert_return(() => invoke($1, `8s_good4`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:442 +assert_return(() => invoke($1, `8s_good5`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:444 +assert_return(() => invoke($1, `16u_good1`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:445 +assert_return(() => invoke($1, `16u_good2`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:446 +assert_return(() => invoke($1, `16u_good3`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:447 +assert_return(() => invoke($1, `16u_good4`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:448 +assert_return(() => invoke($1, `16u_good5`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:450 +assert_return(() => invoke($1, `16s_good1`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:451 +assert_return(() => invoke($1, `16s_good2`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:452 +assert_return(() => invoke($1, `16s_good3`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:453 +assert_return(() => invoke($1, `16s_good4`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:454 +assert_return(() => invoke($1, `16s_good5`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:456 +assert_return(() => invoke($1, `32u_good1`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:457 +assert_return(() => invoke($1, `32u_good2`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:458 +assert_return(() => invoke($1, `32u_good3`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:459 +assert_return(() => invoke($1, `32u_good4`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:460 +assert_return(() => invoke($1, `32u_good5`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:462 +assert_return(() => invoke($1, `32s_good1`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:463 +assert_return(() => invoke($1, `32s_good2`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:464 +assert_return(() => invoke($1, `32s_good3`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:465 +assert_return(() => invoke($1, `32s_good4`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:466 +assert_return(() => invoke($1, `32s_good5`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:468 +assert_return(() => invoke($1, `64_good1`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:469 +assert_return(() => invoke($1, `64_good2`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:470 +assert_return(() => invoke($1, `64_good3`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:471 +assert_return(() => invoke($1, `64_good4`, [65504n]), [value("i64", 0n)]); + +// ./test/core/address64.wast:472 +assert_trap(() => invoke($1, `64_good5`, [65504n]), `out of bounds memory access`); + +// ./test/core/address64.wast:474 +assert_trap(() => invoke($1, `8u_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:475 +assert_trap(() => invoke($1, `8s_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:476 +assert_trap(() => invoke($1, `16u_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:477 +assert_trap(() => invoke($1, `16s_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:478 +assert_trap(() => invoke($1, `32u_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:479 +assert_trap(() => invoke($1, `32s_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:480 +assert_trap(() => invoke($1, `64_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:482 +assert_trap(() => invoke($1, `8u_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:483 +assert_trap(() => invoke($1, `8s_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:484 +assert_trap(() => invoke($1, `16u_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:485 +assert_trap(() => invoke($1, `16s_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:486 +assert_trap(() => invoke($1, `32u_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:487 +assert_trap(() => invoke($1, `32s_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:488 +assert_trap(() => invoke($1, `64_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:492 +let $2 = instantiate(`(module + (memory i64 1) + (data (i64.const 0) "\\00\\00\\00\\00\\00\\00\\a0\\7f\\01\\00\\d0\\7f") + + (func (export "32_good1") (param $$i i64) (result f32) + (f32.load offset=0 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00' + ) + (func (export "32_good2") (param $$i i64) (result f32) + (f32.load align=1 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00' + ) + (func (export "32_good3") (param $$i i64) (result f32) + (f32.load offset=1 align=1 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00' + ) + (func (export "32_good4") (param $$i i64) (result f32) + (f32.load offset=2 align=2 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00' + ) + (func (export "32_good5") (param $$i i64) (result f32) + (f32.load offset=8 align=4 (local.get $$i)) ;; nan:0x500001 '\\01\\00\\d0\\7f' + ) + (func (export "32_bad") (param $$i i64) + (drop (f32.load offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/address64.wast:516 +assert_return(() => invoke($2, `32_good1`, [0n]), [value("f32", 0)]); + +// ./test/core/address64.wast:517 +assert_return(() => invoke($2, `32_good2`, [0n]), [value("f32", 0)]); + +// ./test/core/address64.wast:518 +assert_return(() => invoke($2, `32_good3`, [0n]), [value("f32", 0)]); + +// ./test/core/address64.wast:519 +assert_return(() => invoke($2, `32_good4`, [0n]), [value("f32", 0)]); + +// ./test/core/address64.wast:520 +assert_return(() => invoke($2, `32_good5`, [0n]), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/address64.wast:522 +assert_return(() => invoke($2, `32_good1`, [65524n]), [value("f32", 0)]); + +// ./test/core/address64.wast:523 +assert_return(() => invoke($2, `32_good2`, [65524n]), [value("f32", 0)]); + +// ./test/core/address64.wast:524 +assert_return(() => invoke($2, `32_good3`, [65524n]), [value("f32", 0)]); + +// ./test/core/address64.wast:525 +assert_return(() => invoke($2, `32_good4`, [65524n]), [value("f32", 0)]); + +// ./test/core/address64.wast:526 +assert_return(() => invoke($2, `32_good5`, [65524n]), [value("f32", 0)]); + +// ./test/core/address64.wast:528 +assert_return(() => invoke($2, `32_good1`, [65525n]), [value("f32", 0)]); + +// ./test/core/address64.wast:529 +assert_return(() => invoke($2, `32_good2`, [65525n]), [value("f32", 0)]); + +// ./test/core/address64.wast:530 +assert_return(() => invoke($2, `32_good3`, [65525n]), [value("f32", 0)]); + +// ./test/core/address64.wast:531 +assert_return(() => invoke($2, `32_good4`, [65525n]), [value("f32", 0)]); + +// ./test/core/address64.wast:532 +assert_trap(() => invoke($2, `32_good5`, [65525n]), `out of bounds memory access`); + +// ./test/core/address64.wast:534 +assert_trap(() => invoke($2, `32_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:535 +assert_trap(() => invoke($2, `32_bad`, [1n]), `out of bounds memory access`); + +// ./test/core/address64.wast:539 +let $3 = instantiate(`(module + (memory i64 1) + (data (i64.const 0) "\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\f4\\7f\\01\\00\\00\\00\\00\\00\\fc\\7f") + + (func (export "64_good1") (param $$i i64) (result f64) + (f64.load offset=0 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00\\00\\00\\00\\00' + ) + (func (export "64_good2") (param $$i i64) (result f64) + (f64.load align=1 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00\\00\\00\\00\\00' + ) + (func (export "64_good3") (param $$i i64) (result f64) + (f64.load offset=1 align=1 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00\\00\\00\\00\\00' + ) + (func (export "64_good4") (param $$i i64) (result f64) + (f64.load offset=2 align=2 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00\\00\\00\\00\\00' + ) + (func (export "64_good5") (param $$i i64) (result f64) + (f64.load offset=18 align=8 (local.get $$i)) ;; nan:0xc000000000001 '\\01\\00\\00\\00\\00\\00\\fc\\7f' + ) + (func (export "64_bad") (param $$i i64) + (drop (f64.load offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/address64.wast:563 +assert_return(() => invoke($3, `64_good1`, [0n]), [value("f64", 0)]); + +// ./test/core/address64.wast:564 +assert_return(() => invoke($3, `64_good2`, [0n]), [value("f64", 0)]); + +// ./test/core/address64.wast:565 +assert_return(() => invoke($3, `64_good3`, [0n]), [value("f64", 0)]); + +// ./test/core/address64.wast:566 +assert_return(() => invoke($3, `64_good4`, [0n]), [value("f64", 0)]); + +// ./test/core/address64.wast:567 +assert_return( + () => invoke($3, `64_good5`, [0n]), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); + +// ./test/core/address64.wast:569 +assert_return(() => invoke($3, `64_good1`, [65510n]), [value("f64", 0)]); + +// ./test/core/address64.wast:570 +assert_return(() => invoke($3, `64_good2`, [65510n]), [value("f64", 0)]); + +// ./test/core/address64.wast:571 +assert_return(() => invoke($3, `64_good3`, [65510n]), [value("f64", 0)]); + +// ./test/core/address64.wast:572 +assert_return(() => invoke($3, `64_good4`, [65510n]), [value("f64", 0)]); + +// ./test/core/address64.wast:573 +assert_return(() => invoke($3, `64_good5`, [65510n]), [value("f64", 0)]); + +// ./test/core/address64.wast:575 +assert_return(() => invoke($3, `64_good1`, [65511n]), [value("f64", 0)]); + +// ./test/core/address64.wast:576 +assert_return(() => invoke($3, `64_good2`, [65511n]), [value("f64", 0)]); + +// ./test/core/address64.wast:577 +assert_return(() => invoke($3, `64_good3`, [65511n]), [value("f64", 0)]); + +// ./test/core/address64.wast:578 +assert_return(() => invoke($3, `64_good4`, [65511n]), [value("f64", 0)]); + +// ./test/core/address64.wast:579 +assert_trap(() => invoke($3, `64_good5`, [65511n]), `out of bounds memory access`); + +// ./test/core/address64.wast:581 +assert_trap(() => invoke($3, `64_bad`, [0n]), `out of bounds memory access`); + +// ./test/core/address64.wast:582 +assert_trap(() => invoke($3, `64_bad`, [1n]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/memory64/align64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/align64.wast.js new file mode 100644 index 0000000000..34b4990f8f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/align64.wast.js @@ -0,0 +1,1090 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/align64.wast + +// ./test/core/align64.wast:3 +let $0 = instantiate(`(module (memory i64 0) (func (drop (i32.load8_s align=1 (i64.const 0)))))`); + +// ./test/core/align64.wast:4 +let $1 = instantiate(`(module (memory i64 0) (func (drop (i32.load8_u align=1 (i64.const 0)))))`); + +// ./test/core/align64.wast:5 +let $2 = instantiate(`(module (memory i64 0) (func (drop (i32.load16_s align=2 (i64.const 0)))))`); + +// ./test/core/align64.wast:6 +let $3 = instantiate(`(module (memory i64 0) (func (drop (i32.load16_u align=2 (i64.const 0)))))`); + +// ./test/core/align64.wast:7 +let $4 = instantiate(`(module (memory i64 0) (func (drop (i32.load align=4 (i64.const 0)))))`); + +// ./test/core/align64.wast:8 +let $5 = instantiate(`(module (memory i64 0) (func (drop (i64.load8_s align=1 (i64.const 0)))))`); + +// ./test/core/align64.wast:9 +let $6 = instantiate(`(module (memory i64 0) (func (drop (i64.load8_u align=1 (i64.const 0)))))`); + +// ./test/core/align64.wast:10 +let $7 = instantiate(`(module (memory i64 0) (func (drop (i64.load16_s align=2 (i64.const 0)))))`); + +// ./test/core/align64.wast:11 +let $8 = instantiate(`(module (memory i64 0) (func (drop (i64.load16_u align=2 (i64.const 0)))))`); + +// ./test/core/align64.wast:12 +let $9 = instantiate(`(module (memory i64 0) (func (drop (i64.load32_s align=4 (i64.const 0)))))`); + +// ./test/core/align64.wast:13 +let $10 = instantiate(`(module (memory i64 0) (func (drop (i64.load32_u align=4 (i64.const 0)))))`); + +// ./test/core/align64.wast:14 +let $11 = instantiate(`(module (memory i64 0) (func (drop (i64.load align=8 (i64.const 0)))))`); + +// ./test/core/align64.wast:15 +let $12 = instantiate(`(module (memory i64 0) (func (drop (f32.load align=4 (i64.const 0)))))`); + +// ./test/core/align64.wast:16 +let $13 = instantiate(`(module (memory i64 0) (func (drop (f64.load align=8 (i64.const 0)))))`); + +// ./test/core/align64.wast:17 +let $14 = instantiate(`(module (memory i64 0) (func (i32.store8 align=1 (i64.const 0) (i32.const 1))))`); + +// ./test/core/align64.wast:18 +let $15 = instantiate(`(module (memory i64 0) (func (i32.store16 align=2 (i64.const 0) (i32.const 1))))`); + +// ./test/core/align64.wast:19 +let $16 = instantiate(`(module (memory i64 0) (func (i32.store align=4 (i64.const 0) (i32.const 1))))`); + +// ./test/core/align64.wast:20 +let $17 = instantiate(`(module (memory i64 0) (func (i64.store8 align=1 (i64.const 0) (i64.const 1))))`); + +// ./test/core/align64.wast:21 +let $18 = instantiate(`(module (memory i64 0) (func (i64.store16 align=2 (i64.const 0) (i64.const 1))))`); + +// ./test/core/align64.wast:22 +let $19 = instantiate(`(module (memory i64 0) (func (i64.store32 align=4 (i64.const 0) (i64.const 1))))`); + +// ./test/core/align64.wast:23 +let $20 = instantiate(`(module (memory i64 0) (func (i64.store align=8 (i64.const 0) (i64.const 1))))`); + +// ./test/core/align64.wast:24 +let $21 = instantiate(`(module (memory i64 0) (func (f32.store align=4 (i64.const 0) (f32.const 1.0))))`); + +// ./test/core/align64.wast:25 +let $22 = instantiate(`(module (memory i64 0) (func (f64.store align=8 (i64.const 0) (f64.const 1.0))))`); + +// ./test/core/align64.wast:27 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load8_s align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:33 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load8_s align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:39 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load8_u align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:45 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load8_u align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:51 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load16_s align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:57 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load16_s align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:63 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load16_u align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:69 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load16_u align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:75 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:81 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:87 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load8_s align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:93 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load8_s align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:99 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load8_u align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:105 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load8_u align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:111 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load16_s align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:117 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load16_s align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:123 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load16_u align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:129 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load16_u align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:135 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load32_s align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:141 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load32_s align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:147 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load32_u align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:153 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load32_u align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:159 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:165 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:171 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (f32.load align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:177 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (f32.load align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:183 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (f64.load align=0 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:189 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (drop (f64.load align=7 (i64.const 0))))) `), + `alignment`, +); + +// ./test/core/align64.wast:196 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i32.store8 align=0 (i64.const 0) (i32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:202 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i32.store8 align=7 (i64.const 0) (i32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:208 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i32.store16 align=0 (i64.const 0) (i32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:214 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i32.store16 align=7 (i64.const 0) (i32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:220 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i32.store align=0 (i64.const 0) (i32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:226 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i32.store align=7 (i64.const 0) (i32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:232 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i64.store8 align=0 (i64.const 0) (i64.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:238 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i64.store8 align=7 (i64.const 0) (i64.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:244 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i64.store16 align=0 (i64.const 0) (i64.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:250 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i64.store16 align=7 (i64.const 0) (i64.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:256 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i64.store32 align=0 (i64.const 0) (i64.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:262 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i64.store32 align=7 (i64.const 0) (i64.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:268 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i64.store align=0 (i64.const 0) (i64.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:274 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (i64.store align=7 (i64.const 0) (i64.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:280 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (f32.store align=0 (i64.const 0) (f32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:286 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (f32.store align=7 (i64.const 0) (f32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:292 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (f64.store align=0 (i64.const 0) (f32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:298 +assert_malformed( + () => instantiate(`(module (memory i64 0) (func (f64.store align=7 (i64.const 0) (f32.const 0)))) `), + `alignment`, +); + +// ./test/core/align64.wast:305 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load8_s align=2 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:309 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load8_u align=2 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:313 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load16_s align=4 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:317 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load16_u align=4 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:321 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load align=8 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:325 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load8_s align=2 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:329 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load8_u align=2 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:333 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load16_s align=4 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:337 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load16_u align=4 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:341 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load32_s align=8 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:345 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load32_u align=8 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:349 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load align=16 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:353 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (f32.load align=8 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:357 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (f64.load align=16 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:362 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load8_s align=2 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:366 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load8_u align=2 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:370 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load16_s align=4 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:374 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load16_u align=4 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:378 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i32.load align=8 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:382 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load8_s align=2 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:386 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load8_u align=2 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:390 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load16_s align=4 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:394 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load16_u align=4 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:398 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load32_s align=8 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:402 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load32_u align=8 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:406 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (i64.load align=16 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:410 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (f32.load align=8 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:414 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (drop (f64.load align=16 (i64.const 0)))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:419 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (i32.store8 align=2 (i64.const 0) (i32.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:423 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (i32.store16 align=4 (i64.const 0) (i32.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:427 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (i32.store align=8 (i64.const 0) (i32.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:431 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (i64.store8 align=2 (i64.const 0) (i64.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:435 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (i64.store16 align=4 (i64.const 0) (i64.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:439 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (i64.store32 align=8 (i64.const 0) (i64.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:443 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (i64.store align=16 (i64.const 0) (i64.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:447 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (f32.store align=8 (i64.const 0) (f32.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:451 +assert_invalid( + () => instantiate(`(module (memory i64 0) (func (f64.store align=16 (i64.const 0) (f64.const 0))))`), + `alignment must not be larger than natural`, +); + +// ./test/core/align64.wast:458 +let $23 = instantiate(`(module + (memory i64 1) + + ;; $$default: natural alignment, $$1: align=1, $$2: align=2, $$4: align=4, $$8: align=8 + + (func (export "f32_align_switch") (param i32) (result f32) + (local f32 f32) + (local.set 1 (f32.const 10.0)) + (block $$4 + (block $$2 + (block $$1 + (block $$default + (block $$0 + (br_table $$0 $$default $$1 $$2 $$4 (local.get 0)) + ) ;; 0 + (f32.store (i64.const 0) (local.get 1)) + (local.set 2 (f32.load (i64.const 0))) + (br $$4) + ) ;; default + (f32.store align=1 (i64.const 0) (local.get 1)) + (local.set 2 (f32.load align=1 (i64.const 0))) + (br $$4) + ) ;; 1 + (f32.store align=2 (i64.const 0) (local.get 1)) + (local.set 2 (f32.load align=2 (i64.const 0))) + (br $$4) + ) ;; 2 + (f32.store align=4 (i64.const 0) (local.get 1)) + (local.set 2 (f32.load align=4 (i64.const 0))) + ) ;; 4 + (local.get 2) + ) + + (func (export "f64_align_switch") (param i32) (result f64) + (local f64 f64) + (local.set 1 (f64.const 10.0)) + (block $$8 + (block $$4 + (block $$2 + (block $$1 + (block $$default + (block $$0 + (br_table $$0 $$default $$1 $$2 $$4 $$8 (local.get 0)) + ) ;; 0 + (f64.store (i64.const 0) (local.get 1)) + (local.set 2 (f64.load (i64.const 0))) + (br $$8) + ) ;; default + (f64.store align=1 (i64.const 0) (local.get 1)) + (local.set 2 (f64.load align=1 (i64.const 0))) + (br $$8) + ) ;; 1 + (f64.store align=2 (i64.const 0) (local.get 1)) + (local.set 2 (f64.load align=2 (i64.const 0))) + (br $$8) + ) ;; 2 + (f64.store align=4 (i64.const 0) (local.get 1)) + (local.set 2 (f64.load align=4 (i64.const 0))) + (br $$8) + ) ;; 4 + (f64.store align=8 (i64.const 0) (local.get 1)) + (local.set 2 (f64.load align=8 (i64.const 0))) + ) ;; 8 + (local.get 2) + ) + + ;; $$8s: i32/i64.load8_s, $$8u: i32/i64.load8_u, $$16s: i32/i64.load16_s, $$16u: i32/i64.load16_u, $$32: i32.load + ;; $$32s: i64.load32_s, $$32u: i64.load32_u, $$64: i64.load + + (func (export "i32_align_switch") (param i32 i32) (result i32) + (local i32 i32) + (local.set 2 (i32.const 10)) + (block $$32 + (block $$16u + (block $$16s + (block $$8u + (block $$8s + (block $$0 + (br_table $$0 $$8s $$8u $$16s $$16u $$32 (local.get 0)) + ) ;; 0 + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i32.store8 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load8_s (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i32.store8 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load8_s align=1 (i64.const 0))) + ) + ) + (br $$32) + ) ;; 8s + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i32.store8 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load8_u (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i32.store8 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load8_u align=1 (i64.const 0))) + ) + ) + (br $$32) + ) ;; 8u + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i32.store16 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load16_s (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i32.store16 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load16_s align=1 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 2)) + (then + (i32.store16 align=2 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load16_s align=2 (i64.const 0))) + ) + ) + (br $$32) + ) ;; 16s + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i32.store16 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load16_u (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i32.store16 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load16_u align=1 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 2)) + (then + (i32.store16 align=2 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load16_u align=2 (i64.const 0))) + ) + ) + (br $$32) + ) ;; 16u + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i32.store (i64.const 0) (local.get 2)) + (local.set 3 (i32.load (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i32.store align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load align=1 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 2)) + (then + (i32.store align=2 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load align=2 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 4)) + (then + (i32.store align=4 (i64.const 0) (local.get 2)) + (local.set 3 (i32.load align=4 (i64.const 0))) + ) + ) + ) ;; 32 + (local.get 3) + ) + + (func (export "i64_align_switch") (param i32 i32) (result i64) + (local i64 i64) + (local.set 2 (i64.const 10)) + (block $$64 + (block $$32u + (block $$32s + (block $$16u + (block $$16s + (block $$8u + (block $$8s + (block $$0 + (br_table $$0 $$8s $$8u $$16s $$16u $$32s $$32u $$64 (local.get 0)) + ) ;; 0 + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i64.store8 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load8_s (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i64.store8 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load8_s align=1 (i64.const 0))) + ) + ) + (br $$64) + ) ;; 8s + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i64.store8 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load8_u (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i64.store8 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load8_u align=1 (i64.const 0))) + ) + ) + (br $$64) + ) ;; 8u + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i64.store16 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load16_s (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i64.store16 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load16_s align=1 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 2)) + (then + (i64.store16 align=2 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load16_s align=2 (i64.const 0))) + ) + ) + (br $$64) + ) ;; 16s + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i64.store16 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load16_u (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i64.store16 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load16_u align=1 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 2)) + (then + (i64.store16 align=2 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load16_u align=2 (i64.const 0))) + ) + ) + (br $$64) + ) ;; 16u + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i64.store32 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load32_s (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i64.store32 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load32_s align=1 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 2)) + (then + (i64.store32 align=2 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load32_s align=2 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 4)) + (then + (i64.store32 align=4 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load32_s align=4 (i64.const 0))) + ) + ) + (br $$64) + ) ;; 32s + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i64.store32 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load32_u (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i64.store32 align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load32_u align=1 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 2)) + (then + (i64.store32 align=2 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load32_u align=2 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 4)) + (then + (i64.store32 align=4 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load32_u align=4 (i64.const 0))) + ) + ) + (br $$64) + ) ;; 32u + (if (i32.eq (local.get 1) (i32.const 0)) + (then + (i64.store (i64.const 0) (local.get 2)) + (local.set 3 (i64.load (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 1)) + (then + (i64.store align=1 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load align=1 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 2)) + (then + (i64.store align=2 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load align=2 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 4)) + (then + (i64.store align=4 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load align=4 (i64.const 0))) + ) + ) + (if (i32.eq (local.get 1) (i32.const 8)) + (then + (i64.store align=8 (i64.const 0) (local.get 2)) + (local.set 3 (i64.load align=8 (i64.const 0))) + ) + ) + ) ;; 64 + (local.get 3) + ) +)`); + +// ./test/core/align64.wast:802 +assert_return(() => invoke($23, `f32_align_switch`, [0]), [value("f32", 10)]); + +// ./test/core/align64.wast:803 +assert_return(() => invoke($23, `f32_align_switch`, [1]), [value("f32", 10)]); + +// ./test/core/align64.wast:804 +assert_return(() => invoke($23, `f32_align_switch`, [2]), [value("f32", 10)]); + +// ./test/core/align64.wast:805 +assert_return(() => invoke($23, `f32_align_switch`, [3]), [value("f32", 10)]); + +// ./test/core/align64.wast:807 +assert_return(() => invoke($23, `f64_align_switch`, [0]), [value("f64", 10)]); + +// ./test/core/align64.wast:808 +assert_return(() => invoke($23, `f64_align_switch`, [1]), [value("f64", 10)]); + +// ./test/core/align64.wast:809 +assert_return(() => invoke($23, `f64_align_switch`, [2]), [value("f64", 10)]); + +// ./test/core/align64.wast:810 +assert_return(() => invoke($23, `f64_align_switch`, [3]), [value("f64", 10)]); + +// ./test/core/align64.wast:811 +assert_return(() => invoke($23, `f64_align_switch`, [4]), [value("f64", 10)]); + +// ./test/core/align64.wast:813 +assert_return(() => invoke($23, `i32_align_switch`, [0, 0]), [value("i32", 10)]); + +// ./test/core/align64.wast:814 +assert_return(() => invoke($23, `i32_align_switch`, [0, 1]), [value("i32", 10)]); + +// ./test/core/align64.wast:815 +assert_return(() => invoke($23, `i32_align_switch`, [1, 0]), [value("i32", 10)]); + +// ./test/core/align64.wast:816 +assert_return(() => invoke($23, `i32_align_switch`, [1, 1]), [value("i32", 10)]); + +// ./test/core/align64.wast:817 +assert_return(() => invoke($23, `i32_align_switch`, [2, 0]), [value("i32", 10)]); + +// ./test/core/align64.wast:818 +assert_return(() => invoke($23, `i32_align_switch`, [2, 1]), [value("i32", 10)]); + +// ./test/core/align64.wast:819 +assert_return(() => invoke($23, `i32_align_switch`, [2, 2]), [value("i32", 10)]); + +// ./test/core/align64.wast:820 +assert_return(() => invoke($23, `i32_align_switch`, [3, 0]), [value("i32", 10)]); + +// ./test/core/align64.wast:821 +assert_return(() => invoke($23, `i32_align_switch`, [3, 1]), [value("i32", 10)]); + +// ./test/core/align64.wast:822 +assert_return(() => invoke($23, `i32_align_switch`, [3, 2]), [value("i32", 10)]); + +// ./test/core/align64.wast:823 +assert_return(() => invoke($23, `i32_align_switch`, [4, 0]), [value("i32", 10)]); + +// ./test/core/align64.wast:824 +assert_return(() => invoke($23, `i32_align_switch`, [4, 1]), [value("i32", 10)]); + +// ./test/core/align64.wast:825 +assert_return(() => invoke($23, `i32_align_switch`, [4, 2]), [value("i32", 10)]); + +// ./test/core/align64.wast:826 +assert_return(() => invoke($23, `i32_align_switch`, [4, 4]), [value("i32", 10)]); + +// ./test/core/align64.wast:828 +assert_return(() => invoke($23, `i64_align_switch`, [0, 0]), [value("i64", 10n)]); + +// ./test/core/align64.wast:829 +assert_return(() => invoke($23, `i64_align_switch`, [0, 1]), [value("i64", 10n)]); + +// ./test/core/align64.wast:830 +assert_return(() => invoke($23, `i64_align_switch`, [1, 0]), [value("i64", 10n)]); + +// ./test/core/align64.wast:831 +assert_return(() => invoke($23, `i64_align_switch`, [1, 1]), [value("i64", 10n)]); + +// ./test/core/align64.wast:832 +assert_return(() => invoke($23, `i64_align_switch`, [2, 0]), [value("i64", 10n)]); + +// ./test/core/align64.wast:833 +assert_return(() => invoke($23, `i64_align_switch`, [2, 1]), [value("i64", 10n)]); + +// ./test/core/align64.wast:834 +assert_return(() => invoke($23, `i64_align_switch`, [2, 2]), [value("i64", 10n)]); + +// ./test/core/align64.wast:835 +assert_return(() => invoke($23, `i64_align_switch`, [3, 0]), [value("i64", 10n)]); + +// ./test/core/align64.wast:836 +assert_return(() => invoke($23, `i64_align_switch`, [3, 1]), [value("i64", 10n)]); + +// ./test/core/align64.wast:837 +assert_return(() => invoke($23, `i64_align_switch`, [3, 2]), [value("i64", 10n)]); + +// ./test/core/align64.wast:838 +assert_return(() => invoke($23, `i64_align_switch`, [4, 0]), [value("i64", 10n)]); + +// ./test/core/align64.wast:839 +assert_return(() => invoke($23, `i64_align_switch`, [4, 1]), [value("i64", 10n)]); + +// ./test/core/align64.wast:840 +assert_return(() => invoke($23, `i64_align_switch`, [4, 2]), [value("i64", 10n)]); + +// ./test/core/align64.wast:841 +assert_return(() => invoke($23, `i64_align_switch`, [4, 4]), [value("i64", 10n)]); + +// ./test/core/align64.wast:842 +assert_return(() => invoke($23, `i64_align_switch`, [5, 0]), [value("i64", 10n)]); + +// ./test/core/align64.wast:843 +assert_return(() => invoke($23, `i64_align_switch`, [5, 1]), [value("i64", 10n)]); + +// ./test/core/align64.wast:844 +assert_return(() => invoke($23, `i64_align_switch`, [5, 2]), [value("i64", 10n)]); + +// ./test/core/align64.wast:845 +assert_return(() => invoke($23, `i64_align_switch`, [5, 4]), [value("i64", 10n)]); + +// ./test/core/align64.wast:846 +assert_return(() => invoke($23, `i64_align_switch`, [6, 0]), [value("i64", 10n)]); + +// ./test/core/align64.wast:847 +assert_return(() => invoke($23, `i64_align_switch`, [6, 1]), [value("i64", 10n)]); + +// ./test/core/align64.wast:848 +assert_return(() => invoke($23, `i64_align_switch`, [6, 2]), [value("i64", 10n)]); + +// ./test/core/align64.wast:849 +assert_return(() => invoke($23, `i64_align_switch`, [6, 4]), [value("i64", 10n)]); + +// ./test/core/align64.wast:850 +assert_return(() => invoke($23, `i64_align_switch`, [6, 8]), [value("i64", 10n)]); + +// ./test/core/align64.wast:854 +let $24 = instantiate(`(module + (memory i64 1) + (func (export "store") (param i64 i64) + (i64.store align=4 (local.get 0) (local.get 1)) + ) + (func (export "load") (param i64) (result i32) + (i32.load (local.get 0)) + ) +)`); + +// Bug 1737225 - do not observe the partial store caused by bug 1666747 on +// some native platforms. +if (!partialOobWriteMayWritePartialData()) { + // ./test/core/align64.wast:864 + assert_trap( + () => invoke($24, `store`, [65532n, -1n]), + `out of bounds memory access`, + ); + + // ./test/core/align64.wast:866 + assert_return(() => invoke($24, `load`, [65532n]), [value("i32", 0)]); +} diff --git a/js/src/jit-test/tests/wasm/spec/memory64/directives.txt b/js/src/jit-test/tests/wasm/spec/memory64/directives.txt new file mode 100644 index 0000000000..bbc47fb788 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; skip-if: !wasmMemory64Enabled() \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/memory64/endianness64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/endianness64.wast.js new file mode 100644 index 0000000000..651714be6f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/endianness64.wast.js @@ -0,0 +1,385 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/endianness64.wast + +// ./test/core/endianness64.wast:1 +let $0 = instantiate(`(module + (memory i64 1) + + ;; Stores an i16 value in little-endian-format + (func $$i16_store_little (param $$address i64) (param $$value i32) + (i32.store8 (local.get $$address) (local.get $$value)) + (i32.store8 (i64.add (local.get $$address) (i64.const 1)) (i32.shr_u (local.get $$value) (i32.const 8))) + ) + + ;; Stores an i32 value in little-endian format + (func $$i32_store_little (param $$address i64) (param $$value i32) + (call $$i16_store_little (local.get $$address) (local.get $$value)) + (call $$i16_store_little (i64.add (local.get $$address) (i64.const 2)) (i32.shr_u (local.get $$value) (i32.const 16))) + ) + + ;; Stores an i64 value in little-endian format + (func $$i64_store_little (param $$address i64) (param $$value i64) + (call $$i32_store_little (local.get $$address) (i32.wrap_i64 (local.get $$value))) + (call $$i32_store_little (i64.add (local.get $$address) (i64.const 4)) (i32.wrap_i64 (i64.shr_u (local.get $$value) (i64.const 32)))) + ) + + ;; Loads an i16 value in little-endian format + (func $$i16_load_little (param $$address i64) (result i32) + (i32.or + (i32.load8_u (local.get $$address)) + (i32.shl (i32.load8_u (i64.add (local.get $$address) (i64.const 1))) (i32.const 8)) + ) + ) + + ;; Loads an i32 value in little-endian format + (func $$i32_load_little (param $$address i64) (result i32) + (i32.or + (call $$i16_load_little (local.get $$address)) + (i32.shl (call $$i16_load_little (i64.add (local.get $$address) (i64.const 2))) (i32.const 16)) + ) + ) + + ;; Loads an i64 value in little-endian format + (func $$i64_load_little (param $$address i64) (result i64) + (i64.or + (i64.extend_i32_u (call $$i32_load_little (local.get $$address))) + (i64.shl (i64.extend_i32_u (call $$i32_load_little (i64.add (local.get $$address) (i64.const 4)))) (i64.const 32)) + ) + ) + + (func (export "i32_load16_s") (param $$value i32) (result i32) + (call $$i16_store_little (i64.const 0) (local.get $$value)) + (i32.load16_s (i64.const 0)) + ) + + (func (export "i32_load16_u") (param $$value i32) (result i32) + (call $$i16_store_little (i64.const 0) (local.get $$value)) + (i32.load16_u (i64.const 0)) + ) + + (func (export "i32_load") (param $$value i32) (result i32) + (call $$i32_store_little (i64.const 0) (local.get $$value)) + (i32.load (i64.const 0)) + ) + + (func (export "i64_load16_s") (param $$value i64) (result i64) + (call $$i16_store_little (i64.const 0) (i32.wrap_i64 (local.get $$value))) + (i64.load16_s (i64.const 0)) + ) + + (func (export "i64_load16_u") (param $$value i64) (result i64) + (call $$i16_store_little (i64.const 0) (i32.wrap_i64 (local.get $$value))) + (i64.load16_u (i64.const 0)) + ) + + (func (export "i64_load32_s") (param $$value i64) (result i64) + (call $$i32_store_little (i64.const 0) (i32.wrap_i64 (local.get $$value))) + (i64.load32_s (i64.const 0)) + ) + + (func (export "i64_load32_u") (param $$value i64) (result i64) + (call $$i32_store_little (i64.const 0) (i32.wrap_i64 (local.get $$value))) + (i64.load32_u (i64.const 0)) + ) + + (func (export "i64_load") (param $$value i64) (result i64) + (call $$i64_store_little (i64.const 0) (local.get $$value)) + (i64.load (i64.const 0)) + ) + + (func (export "f32_load") (param $$value f32) (result f32) + (call $$i32_store_little (i64.const 0) (i32.reinterpret_f32 (local.get $$value))) + (f32.load (i64.const 0)) + ) + + (func (export "f64_load") (param $$value f64) (result f64) + (call $$i64_store_little (i64.const 0) (i64.reinterpret_f64 (local.get $$value))) + (f64.load (i64.const 0)) + ) + + + (func (export "i32_store16") (param $$value i32) (result i32) + (i32.store16 (i64.const 0) (local.get $$value)) + (call $$i16_load_little (i64.const 0)) + ) + + (func (export "i32_store") (param $$value i32) (result i32) + (i32.store (i64.const 0) (local.get $$value)) + (call $$i32_load_little (i64.const 0)) + ) + + (func (export "i64_store16") (param $$value i64) (result i64) + (i64.store16 (i64.const 0) (local.get $$value)) + (i64.extend_i32_u (call $$i16_load_little (i64.const 0))) + ) + + (func (export "i64_store32") (param $$value i64) (result i64) + (i64.store32 (i64.const 0) (local.get $$value)) + (i64.extend_i32_u (call $$i32_load_little (i64.const 0))) + ) + + (func (export "i64_store") (param $$value i64) (result i64) + (i64.store (i64.const 0) (local.get $$value)) + (call $$i64_load_little (i64.const 0)) + ) + + (func (export "f32_store") (param $$value f32) (result f32) + (f32.store (i64.const 0) (local.get $$value)) + (f32.reinterpret_i32 (call $$i32_load_little (i64.const 0))) + ) + + (func (export "f64_store") (param $$value f64) (result f64) + (f64.store (i64.const 0) (local.get $$value)) + (f64.reinterpret_i64 (call $$i64_load_little (i64.const 0))) + ) +)`); + +// ./test/core/endianness64.wast:133 +assert_return(() => invoke($0, `i32_load16_s`, [-1]), [value("i32", -1)]); + +// ./test/core/endianness64.wast:134 +assert_return(() => invoke($0, `i32_load16_s`, [-4242]), [value("i32", -4242)]); + +// ./test/core/endianness64.wast:135 +assert_return(() => invoke($0, `i32_load16_s`, [42]), [value("i32", 42)]); + +// ./test/core/endianness64.wast:136 +assert_return(() => invoke($0, `i32_load16_s`, [12816]), [value("i32", 12816)]); + +// ./test/core/endianness64.wast:138 +assert_return(() => invoke($0, `i32_load16_u`, [-1]), [value("i32", 65535)]); + +// ./test/core/endianness64.wast:139 +assert_return(() => invoke($0, `i32_load16_u`, [-4242]), [value("i32", 61294)]); + +// ./test/core/endianness64.wast:140 +assert_return(() => invoke($0, `i32_load16_u`, [42]), [value("i32", 42)]); + +// ./test/core/endianness64.wast:141 +assert_return(() => invoke($0, `i32_load16_u`, [51966]), [value("i32", 51966)]); + +// ./test/core/endianness64.wast:143 +assert_return(() => invoke($0, `i32_load`, [-1]), [value("i32", -1)]); + +// ./test/core/endianness64.wast:144 +assert_return(() => invoke($0, `i32_load`, [-42424242]), [value("i32", -42424242)]); + +// ./test/core/endianness64.wast:145 +assert_return(() => invoke($0, `i32_load`, [42424242]), [value("i32", 42424242)]); + +// ./test/core/endianness64.wast:146 +assert_return(() => invoke($0, `i32_load`, [-1414717974]), [value("i32", -1414717974)]); + +// ./test/core/endianness64.wast:148 +assert_return(() => invoke($0, `i64_load16_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/endianness64.wast:149 +assert_return(() => invoke($0, `i64_load16_s`, [-4242n]), [value("i64", -4242n)]); + +// ./test/core/endianness64.wast:150 +assert_return(() => invoke($0, `i64_load16_s`, [42n]), [value("i64", 42n)]); + +// ./test/core/endianness64.wast:151 +assert_return(() => invoke($0, `i64_load16_s`, [12816n]), [value("i64", 12816n)]); + +// ./test/core/endianness64.wast:153 +assert_return(() => invoke($0, `i64_load16_u`, [-1n]), [value("i64", 65535n)]); + +// ./test/core/endianness64.wast:154 +assert_return(() => invoke($0, `i64_load16_u`, [-4242n]), [value("i64", 61294n)]); + +// ./test/core/endianness64.wast:155 +assert_return(() => invoke($0, `i64_load16_u`, [42n]), [value("i64", 42n)]); + +// ./test/core/endianness64.wast:156 +assert_return(() => invoke($0, `i64_load16_u`, [51966n]), [value("i64", 51966n)]); + +// ./test/core/endianness64.wast:158 +assert_return(() => invoke($0, `i64_load32_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/endianness64.wast:159 +assert_return(() => invoke($0, `i64_load32_s`, [-42424242n]), [value("i64", -42424242n)]); + +// ./test/core/endianness64.wast:160 +assert_return(() => invoke($0, `i64_load32_s`, [42424242n]), [value("i64", 42424242n)]); + +// ./test/core/endianness64.wast:161 +assert_return(() => invoke($0, `i64_load32_s`, [305419896n]), [value("i64", 305419896n)]); + +// ./test/core/endianness64.wast:163 +assert_return(() => invoke($0, `i64_load32_u`, [-1n]), [value("i64", 4294967295n)]); + +// ./test/core/endianness64.wast:164 +assert_return(() => invoke($0, `i64_load32_u`, [-42424242n]), [value("i64", 4252543054n)]); + +// ./test/core/endianness64.wast:165 +assert_return(() => invoke($0, `i64_load32_u`, [42424242n]), [value("i64", 42424242n)]); + +// ./test/core/endianness64.wast:166 +assert_return(() => invoke($0, `i64_load32_u`, [2880249322n]), [value("i64", 2880249322n)]); + +// ./test/core/endianness64.wast:168 +assert_return(() => invoke($0, `i64_load`, [-1n]), [value("i64", -1n)]); + +// ./test/core/endianness64.wast:169 +assert_return(() => invoke($0, `i64_load`, [-42424242n]), [value("i64", -42424242n)]); + +// ./test/core/endianness64.wast:170 +assert_return(() => invoke($0, `i64_load`, [2880249322n]), [value("i64", 2880249322n)]); + +// ./test/core/endianness64.wast:171 +assert_return( + () => invoke($0, `i64_load`, [-6075977126246539798n]), + [value("i64", -6075977126246539798n)], +); + +// ./test/core/endianness64.wast:173 +assert_return(() => invoke($0, `f32_load`, [value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/endianness64.wast:174 +assert_return(() => invoke($0, `f32_load`, [value("f32", 0.01234)]), [value("f32", 0.01234)]); + +// ./test/core/endianness64.wast:175 +assert_return(() => invoke($0, `f32_load`, [value("f32", 4242.4243)]), [value("f32", 4242.4243)]); + +// ./test/core/endianness64.wast:176 +assert_return( + () => invoke($0, `f32_load`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/endianness64.wast:178 +assert_return(() => invoke($0, `f64_load`, [value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/endianness64.wast:179 +assert_return(() => invoke($0, `f64_load`, [value("f64", 1234.56789)]), [value("f64", 1234.56789)]); + +// ./test/core/endianness64.wast:180 +assert_return( + () => invoke($0, `f64_load`, [value("f64", 424242.424242)]), + [value("f64", 424242.424242)], +); + +// ./test/core/endianness64.wast:181 +assert_return( + () => invoke($0, `f64_load`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/endianness64.wast:184 +assert_return(() => invoke($0, `i32_store16`, [-1]), [value("i32", 65535)]); + +// ./test/core/endianness64.wast:185 +assert_return(() => invoke($0, `i32_store16`, [-4242]), [value("i32", 61294)]); + +// ./test/core/endianness64.wast:186 +assert_return(() => invoke($0, `i32_store16`, [42]), [value("i32", 42)]); + +// ./test/core/endianness64.wast:187 +assert_return(() => invoke($0, `i32_store16`, [51966]), [value("i32", 51966)]); + +// ./test/core/endianness64.wast:189 +assert_return(() => invoke($0, `i32_store`, [-1]), [value("i32", -1)]); + +// ./test/core/endianness64.wast:190 +assert_return(() => invoke($0, `i32_store`, [-4242]), [value("i32", -4242)]); + +// ./test/core/endianness64.wast:191 +assert_return(() => invoke($0, `i32_store`, [42424242]), [value("i32", 42424242)]); + +// ./test/core/endianness64.wast:192 +assert_return(() => invoke($0, `i32_store`, [-559035650]), [value("i32", -559035650)]); + +// ./test/core/endianness64.wast:194 +assert_return(() => invoke($0, `i64_store16`, [-1n]), [value("i64", 65535n)]); + +// ./test/core/endianness64.wast:195 +assert_return(() => invoke($0, `i64_store16`, [-4242n]), [value("i64", 61294n)]); + +// ./test/core/endianness64.wast:196 +assert_return(() => invoke($0, `i64_store16`, [42n]), [value("i64", 42n)]); + +// ./test/core/endianness64.wast:197 +assert_return(() => invoke($0, `i64_store16`, [51966n]), [value("i64", 51966n)]); + +// ./test/core/endianness64.wast:199 +assert_return(() => invoke($0, `i64_store32`, [-1n]), [value("i64", 4294967295n)]); + +// ./test/core/endianness64.wast:200 +assert_return(() => invoke($0, `i64_store32`, [-4242n]), [value("i64", 4294963054n)]); + +// ./test/core/endianness64.wast:201 +assert_return(() => invoke($0, `i64_store32`, [42424242n]), [value("i64", 42424242n)]); + +// ./test/core/endianness64.wast:202 +assert_return(() => invoke($0, `i64_store32`, [3735931646n]), [value("i64", 3735931646n)]); + +// ./test/core/endianness64.wast:204 +assert_return(() => invoke($0, `i64_store`, [-1n]), [value("i64", -1n)]); + +// ./test/core/endianness64.wast:205 +assert_return(() => invoke($0, `i64_store`, [-42424242n]), [value("i64", -42424242n)]); + +// ./test/core/endianness64.wast:206 +assert_return(() => invoke($0, `i64_store`, [2880249322n]), [value("i64", 2880249322n)]); + +// ./test/core/endianness64.wast:207 +assert_return( + () => invoke($0, `i64_store`, [-6075977126246539798n]), + [value("i64", -6075977126246539798n)], +); + +// ./test/core/endianness64.wast:209 +assert_return(() => invoke($0, `f32_store`, [value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/endianness64.wast:210 +assert_return(() => invoke($0, `f32_store`, [value("f32", 0.01234)]), [value("f32", 0.01234)]); + +// ./test/core/endianness64.wast:211 +assert_return(() => invoke($0, `f32_store`, [value("f32", 4242.4243)]), [value("f32", 4242.4243)]); + +// ./test/core/endianness64.wast:212 +assert_return( + () => invoke($0, `f32_store`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/endianness64.wast:214 +assert_return(() => invoke($0, `f64_store`, [value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/endianness64.wast:215 +assert_return(() => invoke($0, `f64_store`, [value("f64", 1234.56789)]), [value("f64", 1234.56789)]); + +// ./test/core/endianness64.wast:216 +assert_return( + () => invoke($0, `f64_store`, [value("f64", 424242.424242)]), + [value("f64", 424242.424242)], +); + +// ./test/core/endianness64.wast:217 +assert_return( + () => invoke($0, `f64_store`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/memory64/float_memory64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/float_memory64.wast.js new file mode 100644 index 0000000000..70f5605577 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/float_memory64.wast.js @@ -0,0 +1,361 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/float_memory64.wast + +// ./test/core/float_memory64.wast:5 +let $0 = instantiate(`(module + (memory i64 (data "\\00\\00\\a0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i64.const 0))) + (func (export "i32.load") (result i32) (i32.load (i64.const 0))) + (func (export "f32.store") (f32.store (i64.const 0) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store (i64.const 0) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store (i64.const 0) (i32.const 0))) +)`); + +// ./test/core/float_memory64.wast:15 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory64.wast:16 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory64.wast:17 +invoke($0, `reset`, []); + +// ./test/core/float_memory64.wast:18 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory64.wast:19 +assert_return(() => invoke($0, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory64.wast:20 +invoke($0, `f32.store`, []); + +// ./test/core/float_memory64.wast:21 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory64.wast:22 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory64.wast:23 +invoke($0, `reset`, []); + +// ./test/core/float_memory64.wast:24 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory64.wast:25 +assert_return(() => invoke($0, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory64.wast:26 +invoke($0, `i32.store`, []); + +// ./test/core/float_memory64.wast:27 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory64.wast:28 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory64.wast:30 +let $1 = instantiate(`(module + (memory i64 (data "\\00\\00\\00\\00\\00\\00\\f4\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i64.const 0))) + (func (export "i64.load") (result i64) (i64.load (i64.const 0))) + (func (export "f64.store") (f64.store (i64.const 0) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store (i64.const 0) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store (i64.const 0) (i64.const 0))) +)`); + +// ./test/core/float_memory64.wast:40 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory64.wast:41 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory64.wast:42 +invoke($1, `reset`, []); + +// ./test/core/float_memory64.wast:43 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory64.wast:44 +assert_return(() => invoke($1, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory64.wast:45 +invoke($1, `f64.store`, []); + +// ./test/core/float_memory64.wast:46 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory64.wast:47 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory64.wast:48 +invoke($1, `reset`, []); + +// ./test/core/float_memory64.wast:49 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory64.wast:50 +assert_return(() => invoke($1, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory64.wast:51 +invoke($1, `i64.store`, []); + +// ./test/core/float_memory64.wast:52 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory64.wast:53 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory64.wast:57 +let $2 = instantiate(`(module + (memory i64 (data "\\00\\00\\00\\a0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i64.const 1))) + (func (export "i32.load") (result i32) (i32.load (i64.const 1))) + (func (export "f32.store") (f32.store (i64.const 1) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store (i64.const 1) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store (i64.const 1) (i32.const 0))) +)`); + +// ./test/core/float_memory64.wast:67 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory64.wast:68 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory64.wast:69 +invoke($2, `reset`, []); + +// ./test/core/float_memory64.wast:70 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory64.wast:71 +assert_return(() => invoke($2, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory64.wast:72 +invoke($2, `f32.store`, []); + +// ./test/core/float_memory64.wast:73 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory64.wast:74 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory64.wast:75 +invoke($2, `reset`, []); + +// ./test/core/float_memory64.wast:76 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory64.wast:77 +assert_return(() => invoke($2, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory64.wast:78 +invoke($2, `i32.store`, []); + +// ./test/core/float_memory64.wast:79 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory64.wast:80 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory64.wast:82 +let $3 = instantiate(`(module + (memory i64 (data "\\00\\00\\00\\00\\00\\00\\00\\f4\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i64.const 1))) + (func (export "i64.load") (result i64) (i64.load (i64.const 1))) + (func (export "f64.store") (f64.store (i64.const 1) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store (i64.const 1) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store (i64.const 1) (i64.const 0))) +)`); + +// ./test/core/float_memory64.wast:92 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory64.wast:93 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory64.wast:94 +invoke($3, `reset`, []); + +// ./test/core/float_memory64.wast:95 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory64.wast:96 +assert_return(() => invoke($3, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory64.wast:97 +invoke($3, `f64.store`, []); + +// ./test/core/float_memory64.wast:98 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory64.wast:99 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory64.wast:100 +invoke($3, `reset`, []); + +// ./test/core/float_memory64.wast:101 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory64.wast:102 +assert_return(() => invoke($3, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory64.wast:103 +invoke($3, `i64.store`, []); + +// ./test/core/float_memory64.wast:104 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory64.wast:105 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory64.wast:109 +let $4 = instantiate(`(module + (memory i64 (data "\\01\\00\\d0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i64.const 0))) + (func (export "i32.load") (result i32) (i32.load (i64.const 0))) + (func (export "f32.store") (f32.store (i64.const 0) (f32.const nan:0x500001))) + (func (export "i32.store") (i32.store (i64.const 0) (i32.const 0x7fd00001))) + (func (export "reset") (i32.store (i64.const 0) (i32.const 0))) +)`); + +// ./test/core/float_memory64.wast:119 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory64.wast:120 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory64.wast:121 +invoke($4, `reset`, []); + +// ./test/core/float_memory64.wast:122 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory64.wast:123 +assert_return(() => invoke($4, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory64.wast:124 +invoke($4, `f32.store`, []); + +// ./test/core/float_memory64.wast:125 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory64.wast:126 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory64.wast:127 +invoke($4, `reset`, []); + +// ./test/core/float_memory64.wast:128 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory64.wast:129 +assert_return(() => invoke($4, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory64.wast:130 +invoke($4, `i32.store`, []); + +// ./test/core/float_memory64.wast:131 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory64.wast:132 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory64.wast:134 +let $5 = instantiate(`(module + (memory i64 (data "\\01\\00\\00\\00\\00\\00\\fc\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i64.const 0))) + (func (export "i64.load") (result i64) (i64.load (i64.const 0))) + (func (export "f64.store") (f64.store (i64.const 0) (f64.const nan:0xc000000000001))) + (func (export "i64.store") (i64.store (i64.const 0) (i64.const 0x7ffc000000000001))) + (func (export "reset") (i64.store (i64.const 0) (i64.const 0))) +)`); + +// ./test/core/float_memory64.wast:144 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory64.wast:145 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); + +// ./test/core/float_memory64.wast:146 +invoke($5, `reset`, []); + +// ./test/core/float_memory64.wast:147 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory64.wast:148 +assert_return(() => invoke($5, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory64.wast:149 +invoke($5, `f64.store`, []); + +// ./test/core/float_memory64.wast:150 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory64.wast:151 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); + +// ./test/core/float_memory64.wast:152 +invoke($5, `reset`, []); + +// ./test/core/float_memory64.wast:153 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory64.wast:154 +assert_return(() => invoke($5, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory64.wast:155 +invoke($5, `i64.store`, []); + +// ./test/core/float_memory64.wast:156 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory64.wast:157 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); diff --git a/js/src/jit-test/tests/wasm/spec/memory64/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/memory64/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/memory64/harness/harness.js b/js/src/jit-test/tests/wasm/spec/memory64/harness/harness.js new file mode 100644 index 0000000000..9bc1c17c0a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/harness/harness.js @@ -0,0 +1,457 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function partialOobWriteMayWritePartialData() { + let arm_native = getBuildConfiguration("arm") && !getBuildConfiguration("arm-simulator"); + let arm64_native = getBuildConfiguration("arm64") && !getBuildConfiguration("arm64-simulator"); + return arm_native || arm64_native; +} + +let native_arm = getBuildConfiguration("arm") && !getBuildConfiguration("arm-simulator"); +let native_arm64 = getBuildConfiguration("arm64") && !getBuildConfiguration("arm64-simulator"); + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/memory64/load64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/load64.wast.js new file mode 100644 index 0000000000..c353960337 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/load64.wast.js @@ -0,0 +1,749 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/load64.wast + +// ./test/core/load64.wast:3 +let $0 = instantiate(`(module + (memory i64 1) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (i32.load (i64.const 0)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (i32.load (i64.const 0)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (i32.load (i64.const 0)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (i32.load (i64.const 0)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (i32.load (i64.const 0)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (i32.load (i64.const 0)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (i32.load (i64.const 0))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i32) + (return (i32.load (i64.const 0))) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (i32.load (i64.const 0)) + (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (i32.load (i64.const 0))) (else (i32.const 0)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 0)) (else (i32.load (i64.const 0))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (i32.load (i64.const 0)) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (i32.load (i64.const 0)) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (i32.load (i64.const 0))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (call $$f (i32.load (i64.const 0)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (result i32) + (call $$f (i32.const 1) (i32.load (i64.const 0)) (i32.const 3)) + ) + (func (export "as-call-last") (result i32) + (call $$f (i32.const 1) (i32.const 2) (i32.load (i64.const 0))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-first") (result i32) + (call_indirect (type $$sig) + (i32.load (i64.const 0)) (i32.const 2) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.load (i64.const 0)) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.load (i64.const 0)) (i32.const 0) + ) + ) + (func (export "as-call_indirect-index") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.const 3) (i32.load (i64.const 0)) + ) + ) + + (func (export "as-local.set-value") (local i32) + (local.set 0 (i32.load (i64.const 0))) + ) + (func (export "as-local.tee-value") (result i32) (local i32) + (local.tee 0 (i32.load (i64.const 0))) + ) + (global $$g (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (local i32) + (global.set $$g (i32.load (i64.const 0))) + ) + + (func (export "as-load-address") (result i32) + (i32.load (i64.load (i64.const 0))) + ) + (func (export "as-loadN-address") (result i32) + (i32.load8_s (i64.load (i64.const 0))) + ) + + (func (export "as-store-address") + (i32.store (i64.load (i64.const 0)) (i32.const 7)) + ) + (func (export "as-store-value") + (i32.store (i64.const 2) (i32.load (i64.const 0))) + ) + + (func (export "as-storeN-address") + (i32.store8 (i64.load8_s (i64.const 0)) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i32.store16 (i64.const 2) (i32.load (i64.const 0))) + ) + + (func (export "as-unary-operand") (result i32) + (i32.clz (i32.load (i64.const 100))) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (i32.load (i64.const 100)) (i32.const 10)) + ) + (func (export "as-binary-right") (result i32) + (i32.sub (i32.const 10) (i32.load (i64.const 100))) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (i32.load (i64.const 100))) + ) + + (func (export "as-compare-left") (result i32) + (i32.le_s (i32.load (i64.const 100)) (i32.const 10)) + ) + (func (export "as-compare-right") (result i32) + (i32.ne (i32.const 10) (i32.load (i64.const 100))) + ) + + (func (export "as-memory.grow-size") (result i64) + (memory.grow (i64.load (i64.const 100))) + ) +)`); + +// ./test/core/load64.wast:161 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:163 +assert_return(() => invoke($0, `as-br_if-cond`, []), []); + +// ./test/core/load64.wast:164 +assert_return(() => invoke($0, `as-br_if-value`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:165 +assert_return(() => invoke($0, `as-br_if-value-cond`, []), [value("i32", 7)]); + +// ./test/core/load64.wast:167 +assert_return(() => invoke($0, `as-br_table-index`, []), []); + +// ./test/core/load64.wast:168 +assert_return(() => invoke($0, `as-br_table-value`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:169 +assert_return(() => invoke($0, `as-br_table-value-index`, []), [value("i32", 6)]); + +// ./test/core/load64.wast:171 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:173 +assert_return(() => invoke($0, `as-if-cond`, []), [value("i32", 1)]); + +// ./test/core/load64.wast:174 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:175 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:177 +assert_return(() => invoke($0, `as-select-first`, [0, 1]), [value("i32", 0)]); + +// ./test/core/load64.wast:178 +assert_return(() => invoke($0, `as-select-second`, [0, 0]), [value("i32", 0)]); + +// ./test/core/load64.wast:179 +assert_return(() => invoke($0, `as-select-cond`, []), [value("i32", 1)]); + +// ./test/core/load64.wast:181 +assert_return(() => invoke($0, `as-call-first`, []), [value("i32", -1)]); + +// ./test/core/load64.wast:182 +assert_return(() => invoke($0, `as-call-mid`, []), [value("i32", -1)]); + +// ./test/core/load64.wast:183 +assert_return(() => invoke($0, `as-call-last`, []), [value("i32", -1)]); + +// ./test/core/load64.wast:185 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", -1)]); + +// ./test/core/load64.wast:186 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", -1)]); + +// ./test/core/load64.wast:187 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", -1)]); + +// ./test/core/load64.wast:188 +assert_return(() => invoke($0, `as-call_indirect-index`, []), [value("i32", -1)]); + +// ./test/core/load64.wast:190 +assert_return(() => invoke($0, `as-local.set-value`, []), []); + +// ./test/core/load64.wast:191 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:192 +assert_return(() => invoke($0, `as-global.set-value`, []), []); + +// ./test/core/load64.wast:194 +assert_return(() => invoke($0, `as-load-address`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:195 +assert_return(() => invoke($0, `as-loadN-address`, []), [value("i32", 0)]); + +// ./test/core/load64.wast:196 +assert_return(() => invoke($0, `as-store-address`, []), []); + +// ./test/core/load64.wast:197 +assert_return(() => invoke($0, `as-store-value`, []), []); + +// ./test/core/load64.wast:198 +assert_return(() => invoke($0, `as-storeN-address`, []), []); + +// ./test/core/load64.wast:199 +assert_return(() => invoke($0, `as-storeN-value`, []), []); + +// ./test/core/load64.wast:201 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 32)]); + +// ./test/core/load64.wast:203 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 10)]); + +// ./test/core/load64.wast:204 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i32", 10)]); + +// ./test/core/load64.wast:206 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 1)]); + +// ./test/core/load64.wast:208 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/load64.wast:209 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/load64.wast:211 +assert_return(() => invoke($0, `as-memory.grow-size`, []), [value("i64", 1n)]); + +// ./test/core/load64.wast:213 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i32) (i32.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:220 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i32) (i32.load32_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:227 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i32) (i32.load32_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:234 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i32) (i32.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:241 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i32) (i32.load64_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:248 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i32) (i32.load64_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:256 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i64) (i64.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:263 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i64) (i64.load64_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:270 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result i64) (i64.load64_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:278 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result f32) (f32.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:285 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result f32) (f32.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:293 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result f64) (f64.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:300 +assert_malformed( + () => instantiate(`(memory i64 1) (func (param i64) (result f64) (f64.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load64.wast:311 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load_i32 (i32.load (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:315 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load8_s_i32 (i32.load8_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:319 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load8_u_i32 (i32.load8_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:323 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load16_s_i32 (i32.load16_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:327 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load16_u_i32 (i32.load16_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:331 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load_i64 (i64.load (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:335 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load8_s_i64 (i64.load8_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:339 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load8_u_i64 (i64.load8_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:343 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load16_s_i64 (i64.load16_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:347 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load16_u_i64 (i64.load16_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:351 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load32_s_i64 (i64.load32_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:355 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load32_u_i64 (i64.load32_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:359 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load_f32 (f32.load (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:363 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func $$load_f64 (f64.load (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:371 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i32) (i32.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:372 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i32) (i32.load8_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:373 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i32) (i32.load8_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:374 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i32) (i32.load16_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:375 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i32) (i32.load16_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:376 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i64) (i64.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:377 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i64) (i64.load8_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:378 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i64) (i64.load8_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:379 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i64) (i64.load16_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:380 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i64) (i64.load16_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:381 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i64) (i64.load32_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:382 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result i64) (i64.load32_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:383 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result f32) (f32.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:384 +assert_invalid( + () => instantiate(`(module (memory i64 1) (func (result f64) (f64.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load64.wast:387 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty + (i32.load) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:396 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-block + (i32.const 0) + (block (i32.load) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:406 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-loop + (i32.const 0) + (loop (i32.load) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:416 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (i32.load) (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:426 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.load))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:436 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-br + (i32.const 0) + (block (br 0 (i32.load)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:446 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-br_if + (i32.const 0) + (block (br_if 0 (i32.load) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:456 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-br_table + (i32.const 0) + (block (br_table 0 (i32.load)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:466 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-return + (return (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:475 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-select + (select (i32.load) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:484 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-call + (call 1 (i32.load)) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:494 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-address-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.load) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:511 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-local.set + (local i32) + (local.set 0 (i32.load)) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:521 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-local.tee + (local i32) + (local.tee 0 (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:531 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (global $$x (mut i32) (i32.const 0)) + (func $$type-address-empty-in-global.set + (global.set $$x (i32.load)) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:541 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-memory.grow + (memory.grow (i64.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:550 +assert_invalid( + () => instantiate(`(module + (memory i64 0) + (func $$type-address-empty-in-load + (i32.load (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load64.wast:559 +assert_invalid( + () => instantiate(`(module + (memory i64 1) + (func $$type-address-empty-in-store + (i32.store (i32.load) (i32.const 1)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/memory64/memory64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/memory64.wast.js new file mode 100644 index 0000000000..341742ab86 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/memory64.wast.js @@ -0,0 +1,324 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory64.wast + +// ./test/core/memory64.wast:3 +let $0 = instantiate(`(module (memory i64 0 0))`); + +// ./test/core/memory64.wast:4 +let $1 = instantiate(`(module (memory i64 0 1))`); + +// ./test/core/memory64.wast:5 +let $2 = instantiate(`(module (memory i64 1 256))`); + +// ./test/core/memory64.wast:6 +let $3 = instantiate(`(module (memory i64 0 65536))`); + +// ./test/core/memory64.wast:8 +assert_invalid( + () => instantiate(`(module (memory i64 0) (memory i64 0))`), + `multiple memories`, +); + +// ./test/core/memory64.wast:9 +assert_invalid( + () => instantiate(`(module (memory (import "spectest" "memory") i64 0) (memory i64 0))`), + `multiple memories`, +); + +// ./test/core/memory64.wast:11 +let $4 = instantiate(`(module (memory i64 (data)) (func (export "memsize") (result i64) (memory.size)))`); + +// ./test/core/memory64.wast:12 +assert_return(() => invoke($4, `memsize`, []), [value("i64", 0n)]); + +// ./test/core/memory64.wast:13 +let $5 = instantiate(`(module (memory i64 (data "")) (func (export "memsize") (result i64) (memory.size)))`); + +// ./test/core/memory64.wast:14 +assert_return(() => invoke($5, `memsize`, []), [value("i64", 0n)]); + +// ./test/core/memory64.wast:15 +let $6 = instantiate(`(module (memory i64 (data "x")) (func (export "memsize") (result i64) (memory.size)))`); + +// ./test/core/memory64.wast:16 +assert_return(() => invoke($6, `memsize`, []), [value("i64", 1n)]); + +// ./test/core/memory64.wast:18 +assert_invalid(() => instantiate(`(module (data (i64.const 0)))`), `unknown memory`); + +// ./test/core/memory64.wast:19 +assert_invalid(() => instantiate(`(module (data (i64.const 0) ""))`), `unknown memory`); + +// ./test/core/memory64.wast:20 +assert_invalid(() => instantiate(`(module (data (i64.const 0) "x"))`), `unknown memory`); + +// ./test/core/memory64.wast:22 +assert_invalid( + () => instantiate(`(module (func (drop (f32.load (i64.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory64.wast:26 +assert_invalid( + () => instantiate(`(module (func (f32.store (i64.const 0) (f32.const 0))))`), + `unknown memory`, +); + +// ./test/core/memory64.wast:30 +assert_invalid( + () => instantiate(`(module (func (drop (i32.load8_s (i64.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory64.wast:34 +assert_invalid( + () => instantiate(`(module (func (i32.store8 (i64.const 0) (i32.const 0))))`), + `unknown memory`, +); + +// ./test/core/memory64.wast:38 +assert_invalid( + () => instantiate(`(module (func (drop (memory.size))))`), + `unknown memory`, +); + +// ./test/core/memory64.wast:42 +assert_invalid( + () => instantiate(`(module (func (drop (memory.grow (i64.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory64.wast:48 +assert_invalid( + () => instantiate(`(module (memory i64 1 0))`), + `size minimum must not be greater than maximum`, +); + +// ./test/core/memory64.wast:53 +let $7 = instantiate(`(module + (memory i64 1) + (data (i64.const 0) "ABC\\a7D") (data (i64.const 20) "WASM") + + ;; Data section + (func (export "data") (result i32) + (i32.and + (i32.and + (i32.and + (i32.eq (i32.load8_u (i64.const 0)) (i32.const 65)) + (i32.eq (i32.load8_u (i64.const 3)) (i32.const 167)) + ) + (i32.and + (i32.eq (i32.load8_u (i64.const 6)) (i32.const 0)) + (i32.eq (i32.load8_u (i64.const 19)) (i32.const 0)) + ) + ) + (i32.and + (i32.and + (i32.eq (i32.load8_u (i64.const 20)) (i32.const 87)) + (i32.eq (i32.load8_u (i64.const 23)) (i32.const 77)) + ) + (i32.and + (i32.eq (i32.load8_u (i64.const 24)) (i32.const 0)) + (i32.eq (i32.load8_u (i64.const 1023)) (i32.const 0)) + ) + ) + ) + ) + + ;; Memory cast + (func (export "cast") (result f64) + (i64.store (i64.const 8) (i64.const -12345)) + (if + (f64.eq + (f64.load (i64.const 8)) + (f64.reinterpret_i64 (i64.const -12345)) + ) + (then (return (f64.const 0))) + ) + (i64.store align=1 (i64.const 9) (i64.const 0)) + (i32.store16 align=1 (i64.const 15) (i32.const 16453)) + (f64.load align=1 (i64.const 9)) + ) + + ;; Sign and zero extending memory loads + (func (export "i32_load8_s") (param $$i i32) (result i32) + (i32.store8 (i64.const 8) (local.get $$i)) + (i32.load8_s (i64.const 8)) + ) + (func (export "i32_load8_u") (param $$i i32) (result i32) + (i32.store8 (i64.const 8) (local.get $$i)) + (i32.load8_u (i64.const 8)) + ) + (func (export "i32_load16_s") (param $$i i32) (result i32) + (i32.store16 (i64.const 8) (local.get $$i)) + (i32.load16_s (i64.const 8)) + ) + (func (export "i32_load16_u") (param $$i i32) (result i32) + (i32.store16 (i64.const 8) (local.get $$i)) + (i32.load16_u (i64.const 8)) + ) + (func (export "i64_load8_s") (param $$i i64) (result i64) + (i64.store8 (i64.const 8) (local.get $$i)) + (i64.load8_s (i64.const 8)) + ) + (func (export "i64_load8_u") (param $$i i64) (result i64) + (i64.store8 (i64.const 8) (local.get $$i)) + (i64.load8_u (i64.const 8)) + ) + (func (export "i64_load16_s") (param $$i i64) (result i64) + (i64.store16 (i64.const 8) (local.get $$i)) + (i64.load16_s (i64.const 8)) + ) + (func (export "i64_load16_u") (param $$i i64) (result i64) + (i64.store16 (i64.const 8) (local.get $$i)) + (i64.load16_u (i64.const 8)) + ) + (func (export "i64_load32_s") (param $$i i64) (result i64) + (i64.store32 (i64.const 8) (local.get $$i)) + (i64.load32_s (i64.const 8)) + ) + (func (export "i64_load32_u") (param $$i i64) (result i64) + (i64.store32 (i64.const 8) (local.get $$i)) + (i64.load32_u (i64.const 8)) + ) +)`); + +// ./test/core/memory64.wast:141 +assert_return(() => invoke($7, `data`, []), [value("i32", 1)]); + +// ./test/core/memory64.wast:142 +assert_return(() => invoke($7, `cast`, []), [value("f64", 42)]); + +// ./test/core/memory64.wast:144 +assert_return(() => invoke($7, `i32_load8_s`, [-1]), [value("i32", -1)]); + +// ./test/core/memory64.wast:145 +assert_return(() => invoke($7, `i32_load8_u`, [-1]), [value("i32", 255)]); + +// ./test/core/memory64.wast:146 +assert_return(() => invoke($7, `i32_load16_s`, [-1]), [value("i32", -1)]); + +// ./test/core/memory64.wast:147 +assert_return(() => invoke($7, `i32_load16_u`, [-1]), [value("i32", 65535)]); + +// ./test/core/memory64.wast:149 +assert_return(() => invoke($7, `i32_load8_s`, [100]), [value("i32", 100)]); + +// ./test/core/memory64.wast:150 +assert_return(() => invoke($7, `i32_load8_u`, [200]), [value("i32", 200)]); + +// ./test/core/memory64.wast:151 +assert_return(() => invoke($7, `i32_load16_s`, [20000]), [value("i32", 20000)]); + +// ./test/core/memory64.wast:152 +assert_return(() => invoke($7, `i32_load16_u`, [40000]), [value("i32", 40000)]); + +// ./test/core/memory64.wast:154 +assert_return(() => invoke($7, `i32_load8_s`, [-19110589]), [value("i32", 67)]); + +// ./test/core/memory64.wast:155 +assert_return(() => invoke($7, `i32_load8_s`, [878104047]), [value("i32", -17)]); + +// ./test/core/memory64.wast:156 +assert_return(() => invoke($7, `i32_load8_u`, [-19110589]), [value("i32", 67)]); + +// ./test/core/memory64.wast:157 +assert_return(() => invoke($7, `i32_load8_u`, [878104047]), [value("i32", 239)]); + +// ./test/core/memory64.wast:158 +assert_return(() => invoke($7, `i32_load16_s`, [-19110589]), [value("i32", 25923)]); + +// ./test/core/memory64.wast:159 +assert_return(() => invoke($7, `i32_load16_s`, [878104047]), [value("i32", -12817)]); + +// ./test/core/memory64.wast:160 +assert_return(() => invoke($7, `i32_load16_u`, [-19110589]), [value("i32", 25923)]); + +// ./test/core/memory64.wast:161 +assert_return(() => invoke($7, `i32_load16_u`, [878104047]), [value("i32", 52719)]); + +// ./test/core/memory64.wast:163 +assert_return(() => invoke($7, `i64_load8_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory64.wast:164 +assert_return(() => invoke($7, `i64_load8_u`, [-1n]), [value("i64", 255n)]); + +// ./test/core/memory64.wast:165 +assert_return(() => invoke($7, `i64_load16_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory64.wast:166 +assert_return(() => invoke($7, `i64_load16_u`, [-1n]), [value("i64", 65535n)]); + +// ./test/core/memory64.wast:167 +assert_return(() => invoke($7, `i64_load32_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory64.wast:168 +assert_return(() => invoke($7, `i64_load32_u`, [-1n]), [value("i64", 4294967295n)]); + +// ./test/core/memory64.wast:170 +assert_return(() => invoke($7, `i64_load8_s`, [100n]), [value("i64", 100n)]); + +// ./test/core/memory64.wast:171 +assert_return(() => invoke($7, `i64_load8_u`, [200n]), [value("i64", 200n)]); + +// ./test/core/memory64.wast:172 +assert_return(() => invoke($7, `i64_load16_s`, [20000n]), [value("i64", 20000n)]); + +// ./test/core/memory64.wast:173 +assert_return(() => invoke($7, `i64_load16_u`, [40000n]), [value("i64", 40000n)]); + +// ./test/core/memory64.wast:174 +assert_return(() => invoke($7, `i64_load32_s`, [20000n]), [value("i64", 20000n)]); + +// ./test/core/memory64.wast:175 +assert_return(() => invoke($7, `i64_load32_u`, [40000n]), [value("i64", 40000n)]); + +// ./test/core/memory64.wast:177 +assert_return(() => invoke($7, `i64_load8_s`, [-81985529755441853n]), [value("i64", 67n)]); + +// ./test/core/memory64.wast:178 +assert_return(() => invoke($7, `i64_load8_s`, [3771275841602506223n]), [value("i64", -17n)]); + +// ./test/core/memory64.wast:179 +assert_return(() => invoke($7, `i64_load8_u`, [-81985529755441853n]), [value("i64", 67n)]); + +// ./test/core/memory64.wast:180 +assert_return(() => invoke($7, `i64_load8_u`, [3771275841602506223n]), [value("i64", 239n)]); + +// ./test/core/memory64.wast:181 +assert_return(() => invoke($7, `i64_load16_s`, [-81985529755441853n]), [value("i64", 25923n)]); + +// ./test/core/memory64.wast:182 +assert_return(() => invoke($7, `i64_load16_s`, [3771275841602506223n]), [value("i64", -12817n)]); + +// ./test/core/memory64.wast:183 +assert_return(() => invoke($7, `i64_load16_u`, [-81985529755441853n]), [value("i64", 25923n)]); + +// ./test/core/memory64.wast:184 +assert_return(() => invoke($7, `i64_load16_u`, [3771275841602506223n]), [value("i64", 52719n)]); + +// ./test/core/memory64.wast:185 +assert_return(() => invoke($7, `i64_load32_s`, [-81985529755441853n]), [value("i64", 1446274371n)]); + +// ./test/core/memory64.wast:186 +assert_return(() => invoke($7, `i64_load32_s`, [3771275841602506223n]), [value("i64", -1732588049n)]); + +// ./test/core/memory64.wast:187 +assert_return(() => invoke($7, `i64_load32_u`, [-81985529755441853n]), [value("i64", 1446274371n)]); + +// ./test/core/memory64.wast:188 +assert_return(() => invoke($7, `i64_load32_u`, [3771275841602506223n]), [value("i64", 2562379247n)]); diff --git a/js/src/jit-test/tests/wasm/spec/memory64/memory_grow64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/memory_grow64.wast.js new file mode 100644 index 0000000000..5286d975d8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/memory_grow64.wast.js @@ -0,0 +1,199 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_grow64.wast + +// ./test/core/memory_grow64.wast:1 +let $0 = instantiate(`(module + (memory i64 0) + + (func (export "load_at_zero") (result i32) (i32.load (i64.const 0))) + (func (export "store_at_zero") (i32.store (i64.const 0) (i32.const 2))) + + (func (export "load_at_page_size") (result i32) (i32.load (i64.const 0x10000))) + (func (export "store_at_page_size") (i32.store (i64.const 0x10000) (i32.const 3))) + + (func (export "grow") (param $$sz i64) (result i64) (memory.grow (local.get $$sz))) + (func (export "size") (result i64) (memory.size)) +)`); + +// ./test/core/memory_grow64.wast:14 +assert_return(() => invoke($0, `size`, []), [value("i64", 0n)]); + +// ./test/core/memory_grow64.wast:15 +assert_trap(() => invoke($0, `store_at_zero`, []), `out of bounds memory access`); + +// ./test/core/memory_grow64.wast:16 +assert_trap(() => invoke($0, `load_at_zero`, []), `out of bounds memory access`); + +// ./test/core/memory_grow64.wast:17 +assert_trap(() => invoke($0, `store_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow64.wast:18 +assert_trap(() => invoke($0, `load_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow64.wast:19 +assert_return(() => invoke($0, `grow`, [1n]), [value("i64", 0n)]); + +// ./test/core/memory_grow64.wast:20 +assert_return(() => invoke($0, `size`, []), [value("i64", 1n)]); + +// ./test/core/memory_grow64.wast:21 +assert_return(() => invoke($0, `load_at_zero`, []), [value("i32", 0)]); + +// ./test/core/memory_grow64.wast:22 +assert_return(() => invoke($0, `store_at_zero`, []), []); + +// ./test/core/memory_grow64.wast:23 +assert_return(() => invoke($0, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow64.wast:24 +assert_trap(() => invoke($0, `store_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow64.wast:25 +assert_trap(() => invoke($0, `load_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow64.wast:26 +assert_return(() => invoke($0, `grow`, [4n]), [value("i64", 1n)]); + +// ./test/core/memory_grow64.wast:27 +assert_return(() => invoke($0, `size`, []), [value("i64", 5n)]); + +// ./test/core/memory_grow64.wast:28 +assert_return(() => invoke($0, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow64.wast:29 +assert_return(() => invoke($0, `store_at_zero`, []), []); + +// ./test/core/memory_grow64.wast:30 +assert_return(() => invoke($0, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow64.wast:31 +assert_return(() => invoke($0, `load_at_page_size`, []), [value("i32", 0)]); + +// ./test/core/memory_grow64.wast:32 +assert_return(() => invoke($0, `store_at_page_size`, []), []); + +// ./test/core/memory_grow64.wast:33 +assert_return(() => invoke($0, `load_at_page_size`, []), [value("i32", 3)]); + +// ./test/core/memory_grow64.wast:36 +let $1 = instantiate(`(module + (memory i64 0) + (func (export "grow") (param i64) (result i64) (memory.grow (local.get 0))) +)`); + +// ./test/core/memory_grow64.wast:41 +assert_return(() => invoke($1, `grow`, [0n]), [value("i64", 0n)]); + +// ./test/core/memory_grow64.wast:42 +assert_return(() => invoke($1, `grow`, [1n]), [value("i64", 0n)]); + +// ./test/core/memory_grow64.wast:43 +assert_return(() => invoke($1, `grow`, [0n]), [value("i64", 1n)]); + +// ./test/core/memory_grow64.wast:44 +assert_return(() => invoke($1, `grow`, [2n]), [value("i64", 1n)]); + +// ./test/core/memory_grow64.wast:45 +assert_return(() => invoke($1, `grow`, [800n]), [value("i64", 3n)]); + +// ./test/core/memory_grow64.wast:46 +assert_return(() => invoke($1, `grow`, [1n]), [value("i64", 803n)]); + +// ./test/core/memory_grow64.wast:48 +let $2 = instantiate(`(module + (memory i64 0 10) + (func (export "grow") (param i64) (result i64) (memory.grow (local.get 0))) +)`); + +// ./test/core/memory_grow64.wast:53 +assert_return(() => invoke($2, `grow`, [0n]), [value("i64", 0n)]); + +// ./test/core/memory_grow64.wast:54 +assert_return(() => invoke($2, `grow`, [1n]), [value("i64", 0n)]); + +// ./test/core/memory_grow64.wast:55 +assert_return(() => invoke($2, `grow`, [1n]), [value("i64", 1n)]); + +// ./test/core/memory_grow64.wast:56 +assert_return(() => invoke($2, `grow`, [2n]), [value("i64", 2n)]); + +// ./test/core/memory_grow64.wast:57 +assert_return(() => invoke($2, `grow`, [6n]), [value("i64", 4n)]); + +// ./test/core/memory_grow64.wast:58 +assert_return(() => invoke($2, `grow`, [0n]), [value("i64", 10n)]); + +// ./test/core/memory_grow64.wast:59 +assert_return(() => invoke($2, `grow`, [1n]), [value("i64", -1n)]); + +// ./test/core/memory_grow64.wast:60 +assert_return(() => invoke($2, `grow`, [65536n]), [value("i64", -1n)]); + +// ./test/core/memory_grow64.wast:64 +let $3 = instantiate(`(module + (memory i64 1) + (func (export "grow") (param i64) (result i64) + (memory.grow (local.get 0)) + ) + (func (export "check-memory-zero") (param i64 i64) (result i32) + (local i32) + (local.set 2 (i32.const 1)) + (block + (loop + (local.set 2 (i32.load8_u (local.get 0))) + (br_if 1 (i32.ne (local.get 2) (i32.const 0))) + (br_if 1 (i64.ge_u (local.get 0) (local.get 1))) + (local.set 0 (i64.add (local.get 0) (i64.const 1))) + (br_if 0 (i64.le_u (local.get 0) (local.get 1))) + ) + ) + (local.get 2) + ) +)`); + +// ./test/core/memory_grow64.wast:85 +assert_return(() => invoke($3, `check-memory-zero`, [0n, 65535n]), [value("i32", 0)]); + +// ./test/core/memory_grow64.wast:86 +assert_return(() => invoke($3, `grow`, [1n]), [value("i64", 1n)]); + +// ./test/core/memory_grow64.wast:87 +assert_return(() => invoke($3, `check-memory-zero`, [65536n, 131071n]), [value("i32", 0)]); + +// ./test/core/memory_grow64.wast:88 +assert_return(() => invoke($3, `grow`, [1n]), [value("i64", 2n)]); + +// ./test/core/memory_grow64.wast:89 +assert_return(() => invoke($3, `check-memory-zero`, [131072n, 196607n]), [value("i32", 0)]); + +// ./test/core/memory_grow64.wast:90 +assert_return(() => invoke($3, `grow`, [1n]), [value("i64", 3n)]); + +// ./test/core/memory_grow64.wast:91 +assert_return(() => invoke($3, `check-memory-zero`, [196608n, 262143n]), [value("i32", 0)]); + +// ./test/core/memory_grow64.wast:92 +assert_return(() => invoke($3, `grow`, [1n]), [value("i64", 4n)]); + +// ./test/core/memory_grow64.wast:93 +assert_return(() => invoke($3, `check-memory-zero`, [262144n, 327679n]), [value("i32", 0)]); + +// ./test/core/memory_grow64.wast:94 +assert_return(() => invoke($3, `grow`, [1n]), [value("i64", 5n)]); + +// ./test/core/memory_grow64.wast:95 +assert_return(() => invoke($3, `check-memory-zero`, [327680n, 393215n]), [value("i32", 0)]); diff --git a/js/src/jit-test/tests/wasm/spec/memory64/memory_redundancy64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/memory_redundancy64.wast.js new file mode 100644 index 0000000000..5801c3057e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/memory_redundancy64.wast.js @@ -0,0 +1,95 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_redundancy64.wast + +// ./test/core/memory_redundancy64.wast:5 +let $0 = instantiate(`(module + (memory i64 1 1) + + (func (export "zero_everything") + (i32.store (i64.const 0) (i32.const 0)) + (i32.store (i64.const 4) (i32.const 0)) + (i32.store (i64.const 8) (i32.const 0)) + (i32.store (i64.const 12) (i32.const 0)) + ) + + (func (export "test_store_to_load") (result i32) + (i32.store (i64.const 8) (i32.const 0)) + (f32.store (i64.const 5) (f32.const -0.0)) + (i32.load (i64.const 8)) + ) + + (func (export "test_redundant_load") (result i32) + (local $$t i32) + (local $$s i32) + (local.set $$t (i32.load (i64.const 8))) + (i32.store (i64.const 5) (i32.const 0x80000000)) + (local.set $$s (i32.load (i64.const 8))) + (i32.add (local.get $$t) (local.get $$s)) + ) + + (func (export "test_dead_store") (result f32) + (local $$t f32) + (i32.store (i64.const 8) (i32.const 0x23232323)) + (local.set $$t (f32.load (i64.const 11))) + (i32.store (i64.const 8) (i32.const 0)) + (local.get $$t) + ) + + ;; A function named "malloc" which implementations nonetheless shouldn't + ;; assume behaves like C malloc. + (func $$malloc (export "malloc") + (param $$size i64) + (result i64) + (i64.const 16) + ) + + ;; Call malloc twice, but unlike C malloc, we don't get non-aliasing pointers. + (func (export "malloc_aliasing") + (result i32) + (local $$x i64) + (local $$y i64) + (local.set $$x (call $$malloc (i64.const 4))) + (local.set $$y (call $$malloc (i64.const 4))) + (i32.store (local.get $$x) (i32.const 42)) + (i32.store (local.get $$y) (i32.const 43)) + (i32.load (local.get $$x)) + ) +)`); + +// ./test/core/memory_redundancy64.wast:59 +assert_return(() => invoke($0, `test_store_to_load`, []), [value("i32", 128)]); + +// ./test/core/memory_redundancy64.wast:60 +invoke($0, `zero_everything`, []); + +// ./test/core/memory_redundancy64.wast:61 +assert_return(() => invoke($0, `test_redundant_load`, []), [value("i32", 128)]); + +// ./test/core/memory_redundancy64.wast:62 +invoke($0, `zero_everything`, []); + +// ./test/core/memory_redundancy64.wast:63 +assert_return( + () => invoke($0, `test_dead_store`, []), + [value("f32", 0.000000000000000000000000000000000000000000049)], +); + +// ./test/core/memory_redundancy64.wast:64 +invoke($0, `zero_everything`, []); + +// ./test/core/memory_redundancy64.wast:65 +assert_return(() => invoke($0, `malloc_aliasing`, []), [value("i32", 43)]); diff --git a/js/src/jit-test/tests/wasm/spec/memory64/memory_trap64.wast.js b/js/src/jit-test/tests/wasm/spec/memory64/memory_trap64.wast.js new file mode 100644 index 0000000000..ffc8eb2cb3 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/memory64/memory_trap64.wast.js @@ -0,0 +1,632 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_trap64.wast + +// ./test/core/memory_trap64.wast:1 +let $0 = instantiate(`(module + (memory i64 1) + + (func $$addr_limit (result i64) + (i64.mul (memory.size) (i64.const 0x10000)) + ) + + (func (export "store") (param $$i i64) (param $$v i32) + (i32.store (i64.add (call $$addr_limit) (local.get $$i)) (local.get $$v)) + ) + + (func (export "load") (param $$i i64) (result i32) + (i32.load (i64.add (call $$addr_limit) (local.get $$i))) + ) + + (func (export "memory.grow") (param i64) (result i64) + (memory.grow (local.get 0)) + ) +)`); + +// ./test/core/memory_trap64.wast:21 +assert_return(() => invoke($0, `store`, [-4n, 42]), []); + +// ./test/core/memory_trap64.wast:22 +assert_return(() => invoke($0, `load`, [-4n]), [value("i32", 42)]); + +// ./test/core/memory_trap64.wast:23 +assert_trap(() => invoke($0, `store`, [-3n, 13]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:24 +assert_trap(() => invoke($0, `load`, [-3n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:25 +assert_trap(() => invoke($0, `store`, [-2n, 13]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:26 +assert_trap(() => invoke($0, `load`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:27 +assert_trap(() => invoke($0, `store`, [-1n, 13]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:28 +assert_trap(() => invoke($0, `load`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:29 +assert_trap(() => invoke($0, `store`, [0n, 13]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:30 +assert_trap(() => invoke($0, `load`, [0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:31 +assert_trap(() => invoke($0, `store`, [2147483648n, 13]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:32 +assert_trap(() => invoke($0, `load`, [2147483648n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:34 +let $1 = instantiate(`(module + (memory i64 1) + (data (i64.const 0) "abcdefgh") + (data (i64.const 0xfff8) "abcdefgh") + + (func (export "i32.load") (param $$a i64) (result i32) + (i32.load (local.get $$a)) + ) + (func (export "i64.load") (param $$a i64) (result i64) + (i64.load (local.get $$a)) + ) + (func (export "f32.load") (param $$a i64) (result f32) + (f32.load (local.get $$a)) + ) + (func (export "f64.load") (param $$a i64) (result f64) + (f64.load (local.get $$a)) + ) + (func (export "i32.load8_s") (param $$a i64) (result i32) + (i32.load8_s (local.get $$a)) + ) + (func (export "i32.load8_u") (param $$a i64) (result i32) + (i32.load8_u (local.get $$a)) + ) + (func (export "i32.load16_s") (param $$a i64) (result i32) + (i32.load16_s (local.get $$a)) + ) + (func (export "i32.load16_u") (param $$a i64) (result i32) + (i32.load16_u (local.get $$a)) + ) + (func (export "i64.load8_s") (param $$a i64) (result i64) + (i64.load8_s (local.get $$a)) + ) + (func (export "i64.load8_u") (param $$a i64) (result i64) + (i64.load8_u (local.get $$a)) + ) + (func (export "i64.load16_s") (param $$a i64) (result i64) + (i64.load16_s (local.get $$a)) + ) + (func (export "i64.load16_u") (param $$a i64) (result i64) + (i64.load16_u (local.get $$a)) + ) + (func (export "i64.load32_s") (param $$a i64) (result i64) + (i64.load32_s (local.get $$a)) + ) + (func (export "i64.load32_u") (param $$a i64) (result i64) + (i64.load32_u (local.get $$a)) + ) + (func (export "i32.store") (param $$a i64) (param $$v i32) + (i32.store (local.get $$a) (local.get $$v)) + ) + (func (export "i64.store") (param $$a i64) (param $$v i64) + (i64.store (local.get $$a) (local.get $$v)) + ) + (func (export "f32.store") (param $$a i64) (param $$v f32) + (f32.store (local.get $$a) (local.get $$v)) + ) + (func (export "f64.store") (param $$a i64) (param $$v f64) + (f64.store (local.get $$a) (local.get $$v)) + ) + (func (export "i32.store8") (param $$a i64) (param $$v i32) + (i32.store8 (local.get $$a) (local.get $$v)) + ) + (func (export "i32.store16") (param $$a i64) (param $$v i32) + (i32.store16 (local.get $$a) (local.get $$v)) + ) + (func (export "i64.store8") (param $$a i64) (param $$v i64) + (i64.store8 (local.get $$a) (local.get $$v)) + ) + (func (export "i64.store16") (param $$a i64) (param $$v i64) + (i64.store16 (local.get $$a) (local.get $$v)) + ) + (func (export "i64.store32") (param $$a i64) (param $$v i64) + (i64.store32 (local.get $$a) (local.get $$v)) + ) +)`); + +// ./test/core/memory_trap64.wast:110 +assert_trap(() => invoke($1, `i32.store`, [65536n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:111 +assert_trap(() => invoke($1, `i32.store`, [65535n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:112 +assert_trap(() => invoke($1, `i32.store`, [65534n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:113 +assert_trap(() => invoke($1, `i32.store`, [65533n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:114 +assert_trap(() => invoke($1, `i32.store`, [-1n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:115 +assert_trap(() => invoke($1, `i32.store`, [-2n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:116 +assert_trap(() => invoke($1, `i32.store`, [-3n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:117 +assert_trap(() => invoke($1, `i32.store`, [-4n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:118 +assert_trap(() => invoke($1, `i64.store`, [65536n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:119 +assert_trap(() => invoke($1, `i64.store`, [65535n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:120 +assert_trap(() => invoke($1, `i64.store`, [65534n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:121 +assert_trap(() => invoke($1, `i64.store`, [65533n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:122 +assert_trap(() => invoke($1, `i64.store`, [65532n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:123 +assert_trap(() => invoke($1, `i64.store`, [65531n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:124 +assert_trap(() => invoke($1, `i64.store`, [65530n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:125 +assert_trap(() => invoke($1, `i64.store`, [65529n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:126 +assert_trap(() => invoke($1, `i64.store`, [-1n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:127 +assert_trap(() => invoke($1, `i64.store`, [-2n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:128 +assert_trap(() => invoke($1, `i64.store`, [-3n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:129 +assert_trap(() => invoke($1, `i64.store`, [-4n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:130 +assert_trap(() => invoke($1, `i64.store`, [-5n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:131 +assert_trap(() => invoke($1, `i64.store`, [-6n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:132 +assert_trap(() => invoke($1, `i64.store`, [-7n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:133 +assert_trap(() => invoke($1, `i64.store`, [-8n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:134 +assert_trap(() => invoke($1, `f32.store`, [65536n, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:135 +assert_trap(() => invoke($1, `f32.store`, [65535n, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:136 +assert_trap(() => invoke($1, `f32.store`, [65534n, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:137 +assert_trap(() => invoke($1, `f32.store`, [65533n, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:138 +assert_trap(() => invoke($1, `f32.store`, [-1n, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:139 +assert_trap(() => invoke($1, `f32.store`, [-2n, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:140 +assert_trap(() => invoke($1, `f32.store`, [-3n, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:141 +assert_trap(() => invoke($1, `f32.store`, [-4n, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:142 +assert_trap(() => invoke($1, `f64.store`, [65536n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:143 +assert_trap(() => invoke($1, `f64.store`, [65535n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:144 +assert_trap(() => invoke($1, `f64.store`, [65534n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:145 +assert_trap(() => invoke($1, `f64.store`, [65533n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:146 +assert_trap(() => invoke($1, `f64.store`, [65532n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:147 +assert_trap(() => invoke($1, `f64.store`, [65531n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:148 +assert_trap(() => invoke($1, `f64.store`, [65530n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:149 +assert_trap(() => invoke($1, `f64.store`, [65529n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:150 +assert_trap(() => invoke($1, `f64.store`, [-1n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:151 +assert_trap(() => invoke($1, `f64.store`, [-2n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:152 +assert_trap(() => invoke($1, `f64.store`, [-3n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:153 +assert_trap(() => invoke($1, `f64.store`, [-4n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:154 +assert_trap(() => invoke($1, `f64.store`, [-5n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:155 +assert_trap(() => invoke($1, `f64.store`, [-6n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:156 +assert_trap(() => invoke($1, `f64.store`, [-7n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:157 +assert_trap(() => invoke($1, `f64.store`, [-8n, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:158 +assert_trap(() => invoke($1, `i32.store8`, [65536n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:159 +assert_trap(() => invoke($1, `i32.store8`, [-1n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:160 +assert_trap(() => invoke($1, `i32.store16`, [65536n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:161 +assert_trap(() => invoke($1, `i32.store16`, [65535n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:162 +assert_trap(() => invoke($1, `i32.store16`, [-1n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:163 +assert_trap(() => invoke($1, `i32.store16`, [-2n, 0]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:164 +assert_trap(() => invoke($1, `i64.store8`, [65536n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:165 +assert_trap(() => invoke($1, `i64.store8`, [-1n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:166 +assert_trap(() => invoke($1, `i64.store16`, [65536n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:167 +assert_trap(() => invoke($1, `i64.store16`, [65535n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:168 +assert_trap(() => invoke($1, `i64.store16`, [-1n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:169 +assert_trap(() => invoke($1, `i64.store16`, [-2n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:170 +assert_trap(() => invoke($1, `i64.store32`, [65536n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:171 +assert_trap(() => invoke($1, `i64.store32`, [65535n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:172 +assert_trap(() => invoke($1, `i64.store32`, [65534n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:173 +assert_trap(() => invoke($1, `i64.store32`, [65533n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:174 +assert_trap(() => invoke($1, `i64.store32`, [-1n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:175 +assert_trap(() => invoke($1, `i64.store32`, [-2n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:176 +assert_trap(() => invoke($1, `i64.store32`, [-3n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:177 +assert_trap(() => invoke($1, `i64.store32`, [-4n, 0n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:178 +assert_trap(() => invoke($1, `i32.load`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:179 +assert_trap(() => invoke($1, `i32.load`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:180 +assert_trap(() => invoke($1, `i32.load`, [65534n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:181 +assert_trap(() => invoke($1, `i32.load`, [65533n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:182 +assert_trap(() => invoke($1, `i32.load`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:183 +assert_trap(() => invoke($1, `i32.load`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:184 +assert_trap(() => invoke($1, `i32.load`, [-3n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:185 +assert_trap(() => invoke($1, `i32.load`, [-4n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:186 +assert_trap(() => invoke($1, `i64.load`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:187 +assert_trap(() => invoke($1, `i64.load`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:188 +assert_trap(() => invoke($1, `i64.load`, [65534n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:189 +assert_trap(() => invoke($1, `i64.load`, [65533n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:190 +assert_trap(() => invoke($1, `i64.load`, [65532n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:191 +assert_trap(() => invoke($1, `i64.load`, [65531n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:192 +assert_trap(() => invoke($1, `i64.load`, [65530n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:193 +assert_trap(() => invoke($1, `i64.load`, [65529n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:194 +assert_trap(() => invoke($1, `i64.load`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:195 +assert_trap(() => invoke($1, `i64.load`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:196 +assert_trap(() => invoke($1, `i64.load`, [-3n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:197 +assert_trap(() => invoke($1, `i64.load`, [-4n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:198 +assert_trap(() => invoke($1, `i64.load`, [-5n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:199 +assert_trap(() => invoke($1, `i64.load`, [-6n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:200 +assert_trap(() => invoke($1, `i64.load`, [-7n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:201 +assert_trap(() => invoke($1, `i64.load`, [-8n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:202 +assert_trap(() => invoke($1, `f32.load`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:203 +assert_trap(() => invoke($1, `f32.load`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:204 +assert_trap(() => invoke($1, `f32.load`, [65534n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:205 +assert_trap(() => invoke($1, `f32.load`, [65533n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:206 +assert_trap(() => invoke($1, `f32.load`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:207 +assert_trap(() => invoke($1, `f32.load`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:208 +assert_trap(() => invoke($1, `f32.load`, [-3n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:209 +assert_trap(() => invoke($1, `f32.load`, [-4n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:210 +assert_trap(() => invoke($1, `f64.load`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:211 +assert_trap(() => invoke($1, `f64.load`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:212 +assert_trap(() => invoke($1, `f64.load`, [65534n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:213 +assert_trap(() => invoke($1, `f64.load`, [65533n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:214 +assert_trap(() => invoke($1, `f64.load`, [65532n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:215 +assert_trap(() => invoke($1, `f64.load`, [65531n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:216 +assert_trap(() => invoke($1, `f64.load`, [65530n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:217 +assert_trap(() => invoke($1, `f64.load`, [65529n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:218 +assert_trap(() => invoke($1, `f64.load`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:219 +assert_trap(() => invoke($1, `f64.load`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:220 +assert_trap(() => invoke($1, `f64.load`, [-3n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:221 +assert_trap(() => invoke($1, `f64.load`, [-4n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:222 +assert_trap(() => invoke($1, `f64.load`, [-5n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:223 +assert_trap(() => invoke($1, `f64.load`, [-6n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:224 +assert_trap(() => invoke($1, `f64.load`, [-7n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:225 +assert_trap(() => invoke($1, `f64.load`, [-8n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:226 +assert_trap(() => invoke($1, `i32.load8_s`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:227 +assert_trap(() => invoke($1, `i32.load8_s`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:228 +assert_trap(() => invoke($1, `i32.load8_u`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:229 +assert_trap(() => invoke($1, `i32.load8_u`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:230 +assert_trap(() => invoke($1, `i32.load16_s`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:231 +assert_trap(() => invoke($1, `i32.load16_s`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:232 +assert_trap(() => invoke($1, `i32.load16_s`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:233 +assert_trap(() => invoke($1, `i32.load16_s`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:234 +assert_trap(() => invoke($1, `i32.load16_u`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:235 +assert_trap(() => invoke($1, `i32.load16_u`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:236 +assert_trap(() => invoke($1, `i32.load16_u`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:237 +assert_trap(() => invoke($1, `i32.load16_u`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:238 +assert_trap(() => invoke($1, `i64.load8_s`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:239 +assert_trap(() => invoke($1, `i64.load8_s`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:240 +assert_trap(() => invoke($1, `i64.load8_u`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:241 +assert_trap(() => invoke($1, `i64.load8_u`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:242 +assert_trap(() => invoke($1, `i64.load16_s`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:243 +assert_trap(() => invoke($1, `i64.load16_s`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:244 +assert_trap(() => invoke($1, `i64.load16_s`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:245 +assert_trap(() => invoke($1, `i64.load16_s`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:246 +assert_trap(() => invoke($1, `i64.load16_u`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:247 +assert_trap(() => invoke($1, `i64.load16_u`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:248 +assert_trap(() => invoke($1, `i64.load16_u`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:249 +assert_trap(() => invoke($1, `i64.load16_u`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:250 +assert_trap(() => invoke($1, `i64.load32_s`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:251 +assert_trap(() => invoke($1, `i64.load32_s`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:252 +assert_trap(() => invoke($1, `i64.load32_s`, [65534n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:253 +assert_trap(() => invoke($1, `i64.load32_s`, [65533n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:254 +assert_trap(() => invoke($1, `i64.load32_s`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:255 +assert_trap(() => invoke($1, `i64.load32_s`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:256 +assert_trap(() => invoke($1, `i64.load32_s`, [-3n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:257 +assert_trap(() => invoke($1, `i64.load32_s`, [-4n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:258 +assert_trap(() => invoke($1, `i64.load32_u`, [65536n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:259 +assert_trap(() => invoke($1, `i64.load32_u`, [65535n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:260 +assert_trap(() => invoke($1, `i64.load32_u`, [65534n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:261 +assert_trap(() => invoke($1, `i64.load32_u`, [65533n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:262 +assert_trap(() => invoke($1, `i64.load32_u`, [-1n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:263 +assert_trap(() => invoke($1, `i64.load32_u`, [-2n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:264 +assert_trap(() => invoke($1, `i64.load32_u`, [-3n]), `out of bounds memory access`); + +// ./test/core/memory_trap64.wast:265 +assert_trap(() => invoke($1, `i64.load32_u`, [-4n]), `out of bounds memory access`); + +// Bug 1737225 - do not observe the partial store caused by bug 1666747 on +// some native platforms. +if (!partialOobWriteMayWritePartialData()) { + // ./test/core/memory_trap64.wast:268 + assert_return(() => invoke($1, `i64.load`, [65528n]), [ + value("i64", 7523094288207667809n), + ]); + + // ./test/core/memory_trap64.wast:269 + assert_return(() => invoke($1, `i64.load`, [0n]), [ + value("i64", 7523094288207667809n), + ]); +} diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/address0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/address0.wast.js new file mode 100644 index 0000000000..62b3c985d6 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/address0.wast.js @@ -0,0 +1,392 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/address0.wast + +// ./test/core/multi-memory/address0.wast:3 +let $0 = instantiate(`(module + (memory $$mem0 0) + (memory $$mem1 1) + (data (memory $$mem1) (i32.const 0) "abcdefghijklmnopqrstuvwxyz") + + (func (export "8u_good1") (param $$i i32) (result i32) + (i32.load8_u $$mem1 offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good2") (param $$i i32) (result i32) + (i32.load8_u $$mem1 align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good3") (param $$i i32) (result i32) + (i32.load8_u $$mem1 offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8u_good4") (param $$i i32) (result i32) + (i32.load8_u $$mem1 offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8u_good5") (param $$i i32) (result i32) + (i32.load8_u $$mem1 offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "8s_good1") (param $$i i32) (result i32) + (i32.load8_s $$mem1 offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good2") (param $$i i32) (result i32) + (i32.load8_s $$mem1 align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good3") (param $$i i32) (result i32) + (i32.load8_s $$mem1 offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8s_good4") (param $$i i32) (result i32) + (i32.load8_s $$mem1 offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8s_good5") (param $$i i32) (result i32) + (i32.load8_s $$mem1 offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "16u_good1") (param $$i i32) (result i32) + (i32.load16_u $$mem1 offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good2") (param $$i i32) (result i32) + (i32.load16_u $$mem1 align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good3") (param $$i i32) (result i32) + (i32.load16_u $$mem1 offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16u_good4") (param $$i i32) (result i32) + (i32.load16_u $$mem1 offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16u_good5") (param $$i i32) (result i32) + (i32.load16_u $$mem1 offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "16s_good1") (param $$i i32) (result i32) + (i32.load16_s $$mem1 offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good2") (param $$i i32) (result i32) + (i32.load16_s $$mem1 align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good3") (param $$i i32) (result i32) + (i32.load16_s $$mem1 offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16s_good4") (param $$i i32) (result i32) + (i32.load16_s $$mem1 offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16s_good5") (param $$i i32) (result i32) + (i32.load16_s $$mem1 offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "32_good1") (param $$i i32) (result i32) + (i32.load $$mem1 offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32_good2") (param $$i i32) (result i32) + (i32.load $$mem1 align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32_good3") (param $$i i32) (result i32) + (i32.load $$mem1 offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32_good4") (param $$i i32) (result i32) + (i32.load $$mem1 offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32_good5") (param $$i i32) (result i32) + (i32.load $$mem1 offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "8u_bad") (param $$i i32) + (drop (i32.load8_u $$mem1 offset=4294967295 (local.get $$i))) + ) + (func (export "8s_bad") (param $$i i32) + (drop (i32.load8_s $$mem1 offset=4294967295 (local.get $$i))) + ) + (func (export "16u_bad") (param $$i i32) + (drop (i32.load16_u $$mem1 offset=4294967295 (local.get $$i))) + ) + (func (export "16s_bad") (param $$i i32) + (drop (i32.load16_s $$mem1 offset=4294967295 (local.get $$i))) + ) + (func (export "32_bad") (param $$i i32) + (drop (i32.load $$mem1 offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/multi-memory/address0.wast:105 +assert_return(() => invoke($0, `8u_good1`, [0]), [value("i32", 97)]); + +// ./test/core/multi-memory/address0.wast:106 +assert_return(() => invoke($0, `8u_good2`, [0]), [value("i32", 97)]); + +// ./test/core/multi-memory/address0.wast:107 +assert_return(() => invoke($0, `8u_good3`, [0]), [value("i32", 98)]); + +// ./test/core/multi-memory/address0.wast:108 +assert_return(() => invoke($0, `8u_good4`, [0]), [value("i32", 99)]); + +// ./test/core/multi-memory/address0.wast:109 +assert_return(() => invoke($0, `8u_good5`, [0]), [value("i32", 122)]); + +// ./test/core/multi-memory/address0.wast:111 +assert_return(() => invoke($0, `8s_good1`, [0]), [value("i32", 97)]); + +// ./test/core/multi-memory/address0.wast:112 +assert_return(() => invoke($0, `8s_good2`, [0]), [value("i32", 97)]); + +// ./test/core/multi-memory/address0.wast:113 +assert_return(() => invoke($0, `8s_good3`, [0]), [value("i32", 98)]); + +// ./test/core/multi-memory/address0.wast:114 +assert_return(() => invoke($0, `8s_good4`, [0]), [value("i32", 99)]); + +// ./test/core/multi-memory/address0.wast:115 +assert_return(() => invoke($0, `8s_good5`, [0]), [value("i32", 122)]); + +// ./test/core/multi-memory/address0.wast:117 +assert_return(() => invoke($0, `16u_good1`, [0]), [value("i32", 25185)]); + +// ./test/core/multi-memory/address0.wast:118 +assert_return(() => invoke($0, `16u_good2`, [0]), [value("i32", 25185)]); + +// ./test/core/multi-memory/address0.wast:119 +assert_return(() => invoke($0, `16u_good3`, [0]), [value("i32", 25442)]); + +// ./test/core/multi-memory/address0.wast:120 +assert_return(() => invoke($0, `16u_good4`, [0]), [value("i32", 25699)]); + +// ./test/core/multi-memory/address0.wast:121 +assert_return(() => invoke($0, `16u_good5`, [0]), [value("i32", 122)]); + +// ./test/core/multi-memory/address0.wast:123 +assert_return(() => invoke($0, `16s_good1`, [0]), [value("i32", 25185)]); + +// ./test/core/multi-memory/address0.wast:124 +assert_return(() => invoke($0, `16s_good2`, [0]), [value("i32", 25185)]); + +// ./test/core/multi-memory/address0.wast:125 +assert_return(() => invoke($0, `16s_good3`, [0]), [value("i32", 25442)]); + +// ./test/core/multi-memory/address0.wast:126 +assert_return(() => invoke($0, `16s_good4`, [0]), [value("i32", 25699)]); + +// ./test/core/multi-memory/address0.wast:127 +assert_return(() => invoke($0, `16s_good5`, [0]), [value("i32", 122)]); + +// ./test/core/multi-memory/address0.wast:129 +assert_return(() => invoke($0, `32_good1`, [0]), [value("i32", 1684234849)]); + +// ./test/core/multi-memory/address0.wast:130 +assert_return(() => invoke($0, `32_good2`, [0]), [value("i32", 1684234849)]); + +// ./test/core/multi-memory/address0.wast:131 +assert_return(() => invoke($0, `32_good3`, [0]), [value("i32", 1701077858)]); + +// ./test/core/multi-memory/address0.wast:132 +assert_return(() => invoke($0, `32_good4`, [0]), [value("i32", 1717920867)]); + +// ./test/core/multi-memory/address0.wast:133 +assert_return(() => invoke($0, `32_good5`, [0]), [value("i32", 122)]); + +// ./test/core/multi-memory/address0.wast:135 +assert_return(() => invoke($0, `8u_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:136 +assert_return(() => invoke($0, `8u_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:137 +assert_return(() => invoke($0, `8u_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:138 +assert_return(() => invoke($0, `8u_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:139 +assert_return(() => invoke($0, `8u_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:141 +assert_return(() => invoke($0, `8s_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:142 +assert_return(() => invoke($0, `8s_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:143 +assert_return(() => invoke($0, `8s_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:144 +assert_return(() => invoke($0, `8s_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:145 +assert_return(() => invoke($0, `8s_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:147 +assert_return(() => invoke($0, `16u_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:148 +assert_return(() => invoke($0, `16u_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:149 +assert_return(() => invoke($0, `16u_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:150 +assert_return(() => invoke($0, `16u_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:151 +assert_return(() => invoke($0, `16u_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:153 +assert_return(() => invoke($0, `16s_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:154 +assert_return(() => invoke($0, `16s_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:155 +assert_return(() => invoke($0, `16s_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:156 +assert_return(() => invoke($0, `16s_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:157 +assert_return(() => invoke($0, `16s_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:159 +assert_return(() => invoke($0, `32_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:160 +assert_return(() => invoke($0, `32_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:161 +assert_return(() => invoke($0, `32_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:162 +assert_return(() => invoke($0, `32_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:163 +assert_return(() => invoke($0, `32_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:165 +assert_return(() => invoke($0, `8u_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:166 +assert_return(() => invoke($0, `8u_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:167 +assert_return(() => invoke($0, `8u_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:168 +assert_return(() => invoke($0, `8u_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:169 +assert_return(() => invoke($0, `8u_good5`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:171 +assert_return(() => invoke($0, `8s_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:172 +assert_return(() => invoke($0, `8s_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:173 +assert_return(() => invoke($0, `8s_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:174 +assert_return(() => invoke($0, `8s_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:175 +assert_return(() => invoke($0, `8s_good5`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:177 +assert_return(() => invoke($0, `16u_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:178 +assert_return(() => invoke($0, `16u_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:179 +assert_return(() => invoke($0, `16u_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:180 +assert_return(() => invoke($0, `16u_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:181 +assert_return(() => invoke($0, `16u_good5`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:183 +assert_return(() => invoke($0, `16s_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:184 +assert_return(() => invoke($0, `16s_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:185 +assert_return(() => invoke($0, `16s_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:186 +assert_return(() => invoke($0, `16s_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:187 +assert_return(() => invoke($0, `16s_good5`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:189 +assert_return(() => invoke($0, `32_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:190 +assert_return(() => invoke($0, `32_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:191 +assert_return(() => invoke($0, `32_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:192 +assert_return(() => invoke($0, `32_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/multi-memory/address0.wast:193 +assert_trap(() => invoke($0, `32_good5`, [65508]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:195 +assert_trap(() => invoke($0, `8u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:196 +assert_trap(() => invoke($0, `8s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:197 +assert_trap(() => invoke($0, `16u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:198 +assert_trap(() => invoke($0, `16s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:199 +assert_trap(() => invoke($0, `32_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:200 +assert_trap(() => invoke($0, `32_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:202 +assert_trap(() => invoke($0, `8u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:203 +assert_trap(() => invoke($0, `8s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:204 +assert_trap(() => invoke($0, `16u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:205 +assert_trap(() => invoke($0, `16s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:206 +assert_trap(() => invoke($0, `32_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:208 +assert_trap(() => invoke($0, `8u_bad`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:209 +assert_trap(() => invoke($0, `8s_bad`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:210 +assert_trap(() => invoke($0, `16u_bad`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:211 +assert_trap(() => invoke($0, `16s_bad`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address0.wast:212 +assert_trap(() => invoke($0, `32_bad`, [1]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/address1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/address1.wast.js new file mode 100644 index 0000000000..602de2a5ce --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/address1.wast.js @@ -0,0 +1,538 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/address1.wast + +// ./test/core/multi-memory/address1.wast:3 +let $0 = instantiate(`(module + (memory $$mem0 0) + (memory $$mem1 0) + (memory $$mem2 0) + (memory $$mem3 0) + (memory $$mem4 1) + (data (memory $$mem4) (i32.const 0) "abcdefghijklmnopqrstuvwxyz") + + (func (export "8u_good1") (param $$i i32) (result i64) + (i64.load8_u $$mem4 offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good2") (param $$i i32) (result i64) + (i64.load8_u $$mem4 align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good3") (param $$i i32) (result i64) + (i64.load8_u $$mem4 offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8u_good4") (param $$i i32) (result i64) + (i64.load8_u $$mem4 offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8u_good5") (param $$i i32) (result i64) + (i64.load8_u $$mem4 offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "8s_good1") (param $$i i32) (result i64) + (i64.load8_s $$mem4 offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good2") (param $$i i32) (result i64) + (i64.load8_s $$mem4 align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good3") (param $$i i32) (result i64) + (i64.load8_s $$mem4 offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8s_good4") (param $$i i32) (result i64) + (i64.load8_s $$mem4 offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8s_good5") (param $$i i32) (result i64) + (i64.load8_s $$mem4 offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "16u_good1") (param $$i i32) (result i64) + (i64.load16_u $$mem4 offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good2") (param $$i i32) (result i64) + (i64.load16_u $$mem4 align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good3") (param $$i i32) (result i64) + (i64.load16_u $$mem4 offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16u_good4") (param $$i i32) (result i64) + (i64.load16_u $$mem4 offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16u_good5") (param $$i i32) (result i64) + (i64.load16_u $$mem4 offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "16s_good1") (param $$i i32) (result i64) + (i64.load16_s $$mem4 offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good2") (param $$i i32) (result i64) + (i64.load16_s $$mem4 align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good3") (param $$i i32) (result i64) + (i64.load16_s $$mem4 offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16s_good4") (param $$i i32) (result i64) + (i64.load16_s $$mem4 offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16s_good5") (param $$i i32) (result i64) + (i64.load16_s $$mem4 offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "32u_good1") (param $$i i32) (result i64) + (i64.load32_u $$mem4 offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32u_good2") (param $$i i32) (result i64) + (i64.load32_u $$mem4 align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32u_good3") (param $$i i32) (result i64) + (i64.load32_u $$mem4 offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32u_good4") (param $$i i32) (result i64) + (i64.load32_u $$mem4 offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32u_good5") (param $$i i32) (result i64) + (i64.load32_u $$mem4 offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "32s_good1") (param $$i i32) (result i64) + (i64.load32_s $$mem4 offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32s_good2") (param $$i i32) (result i64) + (i64.load32_s $$mem4 align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32s_good3") (param $$i i32) (result i64) + (i64.load32_s $$mem4 offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32s_good4") (param $$i i32) (result i64) + (i64.load32_s $$mem4 offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32s_good5") (param $$i i32) (result i64) + (i64.load32_s $$mem4 offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "64_good1") (param $$i i32) (result i64) + (i64.load $$mem4 offset=0 (local.get $$i)) ;; 0x6867666564636261 'abcdefgh' + ) + (func (export "64_good2") (param $$i i32) (result i64) + (i64.load $$mem4 align=1 (local.get $$i)) ;; 0x6867666564636261 'abcdefgh' + ) + (func (export "64_good3") (param $$i i32) (result i64) + (i64.load $$mem4 offset=1 align=1 (local.get $$i)) ;; 0x6968676665646362 'bcdefghi' + ) + (func (export "64_good4") (param $$i i32) (result i64) + (i64.load $$mem4 offset=2 align=2 (local.get $$i)) ;; 0x6a69686766656463 'cdefghij' + ) + (func (export "64_good5") (param $$i i32) (result i64) + (i64.load $$mem4 offset=25 align=8 (local.get $$i)) ;; 122 'z\\0\\0\\0\\0\\0\\0\\0' + ) + + (func (export "8u_bad") (param $$i i32) + (drop (i64.load8_u $$mem4 offset=4294967295 (local.get $$i))) + ) + (func (export "8s_bad") (param $$i i32) + (drop (i64.load8_s $$mem4 offset=4294967295 (local.get $$i))) + ) + (func (export "16u_bad") (param $$i i32) + (drop (i64.load16_u $$mem4 offset=4294967295 (local.get $$i))) + ) + (func (export "16s_bad") (param $$i i32) + (drop (i64.load16_s $$mem4 offset=4294967295 (local.get $$i))) + ) + (func (export "32u_bad") (param $$i i32) + (drop (i64.load32_u $$mem4 offset=4294967295 (local.get $$i))) + ) + (func (export "32s_bad") (param $$i i32) + (drop (i64.load32_s $$mem4 offset=4294967295 (local.get $$i))) + ) + (func (export "64_bad") (param $$i i32) + (drop (i64.load $$mem4 offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/multi-memory/address1.wast:146 +assert_return(() => invoke($0, `8u_good1`, [0]), [value("i64", 97n)]); + +// ./test/core/multi-memory/address1.wast:147 +assert_return(() => invoke($0, `8u_good2`, [0]), [value("i64", 97n)]); + +// ./test/core/multi-memory/address1.wast:148 +assert_return(() => invoke($0, `8u_good3`, [0]), [value("i64", 98n)]); + +// ./test/core/multi-memory/address1.wast:149 +assert_return(() => invoke($0, `8u_good4`, [0]), [value("i64", 99n)]); + +// ./test/core/multi-memory/address1.wast:150 +assert_return(() => invoke($0, `8u_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/multi-memory/address1.wast:152 +assert_return(() => invoke($0, `8s_good1`, [0]), [value("i64", 97n)]); + +// ./test/core/multi-memory/address1.wast:153 +assert_return(() => invoke($0, `8s_good2`, [0]), [value("i64", 97n)]); + +// ./test/core/multi-memory/address1.wast:154 +assert_return(() => invoke($0, `8s_good3`, [0]), [value("i64", 98n)]); + +// ./test/core/multi-memory/address1.wast:155 +assert_return(() => invoke($0, `8s_good4`, [0]), [value("i64", 99n)]); + +// ./test/core/multi-memory/address1.wast:156 +assert_return(() => invoke($0, `8s_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/multi-memory/address1.wast:158 +assert_return(() => invoke($0, `16u_good1`, [0]), [value("i64", 25185n)]); + +// ./test/core/multi-memory/address1.wast:159 +assert_return(() => invoke($0, `16u_good2`, [0]), [value("i64", 25185n)]); + +// ./test/core/multi-memory/address1.wast:160 +assert_return(() => invoke($0, `16u_good3`, [0]), [value("i64", 25442n)]); + +// ./test/core/multi-memory/address1.wast:161 +assert_return(() => invoke($0, `16u_good4`, [0]), [value("i64", 25699n)]); + +// ./test/core/multi-memory/address1.wast:162 +assert_return(() => invoke($0, `16u_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/multi-memory/address1.wast:164 +assert_return(() => invoke($0, `16s_good1`, [0]), [value("i64", 25185n)]); + +// ./test/core/multi-memory/address1.wast:165 +assert_return(() => invoke($0, `16s_good2`, [0]), [value("i64", 25185n)]); + +// ./test/core/multi-memory/address1.wast:166 +assert_return(() => invoke($0, `16s_good3`, [0]), [value("i64", 25442n)]); + +// ./test/core/multi-memory/address1.wast:167 +assert_return(() => invoke($0, `16s_good4`, [0]), [value("i64", 25699n)]); + +// ./test/core/multi-memory/address1.wast:168 +assert_return(() => invoke($0, `16s_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/multi-memory/address1.wast:170 +assert_return(() => invoke($0, `32u_good1`, [0]), [value("i64", 1684234849n)]); + +// ./test/core/multi-memory/address1.wast:171 +assert_return(() => invoke($0, `32u_good2`, [0]), [value("i64", 1684234849n)]); + +// ./test/core/multi-memory/address1.wast:172 +assert_return(() => invoke($0, `32u_good3`, [0]), [value("i64", 1701077858n)]); + +// ./test/core/multi-memory/address1.wast:173 +assert_return(() => invoke($0, `32u_good4`, [0]), [value("i64", 1717920867n)]); + +// ./test/core/multi-memory/address1.wast:174 +assert_return(() => invoke($0, `32u_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/multi-memory/address1.wast:176 +assert_return(() => invoke($0, `32s_good1`, [0]), [value("i64", 1684234849n)]); + +// ./test/core/multi-memory/address1.wast:177 +assert_return(() => invoke($0, `32s_good2`, [0]), [value("i64", 1684234849n)]); + +// ./test/core/multi-memory/address1.wast:178 +assert_return(() => invoke($0, `32s_good3`, [0]), [value("i64", 1701077858n)]); + +// ./test/core/multi-memory/address1.wast:179 +assert_return(() => invoke($0, `32s_good4`, [0]), [value("i64", 1717920867n)]); + +// ./test/core/multi-memory/address1.wast:180 +assert_return(() => invoke($0, `32s_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/multi-memory/address1.wast:182 +assert_return(() => invoke($0, `64_good1`, [0]), [value("i64", 7523094288207667809n)]); + +// ./test/core/multi-memory/address1.wast:183 +assert_return(() => invoke($0, `64_good2`, [0]), [value("i64", 7523094288207667809n)]); + +// ./test/core/multi-memory/address1.wast:184 +assert_return(() => invoke($0, `64_good3`, [0]), [value("i64", 7595434461045744482n)]); + +// ./test/core/multi-memory/address1.wast:185 +assert_return(() => invoke($0, `64_good4`, [0]), [value("i64", 7667774633883821155n)]); + +// ./test/core/multi-memory/address1.wast:186 +assert_return(() => invoke($0, `64_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/multi-memory/address1.wast:188 +assert_return(() => invoke($0, `8u_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:189 +assert_return(() => invoke($0, `8u_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:190 +assert_return(() => invoke($0, `8u_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:191 +assert_return(() => invoke($0, `8u_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:192 +assert_return(() => invoke($0, `8u_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:194 +assert_return(() => invoke($0, `8s_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:195 +assert_return(() => invoke($0, `8s_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:196 +assert_return(() => invoke($0, `8s_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:197 +assert_return(() => invoke($0, `8s_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:198 +assert_return(() => invoke($0, `8s_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:200 +assert_return(() => invoke($0, `16u_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:201 +assert_return(() => invoke($0, `16u_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:202 +assert_return(() => invoke($0, `16u_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:203 +assert_return(() => invoke($0, `16u_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:204 +assert_return(() => invoke($0, `16u_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:206 +assert_return(() => invoke($0, `16s_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:207 +assert_return(() => invoke($0, `16s_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:208 +assert_return(() => invoke($0, `16s_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:209 +assert_return(() => invoke($0, `16s_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:210 +assert_return(() => invoke($0, `16s_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:212 +assert_return(() => invoke($0, `32u_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:213 +assert_return(() => invoke($0, `32u_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:214 +assert_return(() => invoke($0, `32u_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:215 +assert_return(() => invoke($0, `32u_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:216 +assert_return(() => invoke($0, `32u_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:218 +assert_return(() => invoke($0, `32s_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:219 +assert_return(() => invoke($0, `32s_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:220 +assert_return(() => invoke($0, `32s_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:221 +assert_return(() => invoke($0, `32s_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:222 +assert_return(() => invoke($0, `32s_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:224 +assert_return(() => invoke($0, `64_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:225 +assert_return(() => invoke($0, `64_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:226 +assert_return(() => invoke($0, `64_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:227 +assert_return(() => invoke($0, `64_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:228 +assert_return(() => invoke($0, `64_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:230 +assert_return(() => invoke($0, `8u_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:231 +assert_return(() => invoke($0, `8u_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:232 +assert_return(() => invoke($0, `8u_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:233 +assert_return(() => invoke($0, `8u_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:234 +assert_return(() => invoke($0, `8u_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:236 +assert_return(() => invoke($0, `8s_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:237 +assert_return(() => invoke($0, `8s_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:238 +assert_return(() => invoke($0, `8s_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:239 +assert_return(() => invoke($0, `8s_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:240 +assert_return(() => invoke($0, `8s_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:242 +assert_return(() => invoke($0, `16u_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:243 +assert_return(() => invoke($0, `16u_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:244 +assert_return(() => invoke($0, `16u_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:245 +assert_return(() => invoke($0, `16u_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:246 +assert_return(() => invoke($0, `16u_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:248 +assert_return(() => invoke($0, `16s_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:249 +assert_return(() => invoke($0, `16s_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:250 +assert_return(() => invoke($0, `16s_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:251 +assert_return(() => invoke($0, `16s_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:252 +assert_return(() => invoke($0, `16s_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:254 +assert_return(() => invoke($0, `32u_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:255 +assert_return(() => invoke($0, `32u_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:256 +assert_return(() => invoke($0, `32u_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:257 +assert_return(() => invoke($0, `32u_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:258 +assert_return(() => invoke($0, `32u_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:260 +assert_return(() => invoke($0, `32s_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:261 +assert_return(() => invoke($0, `32s_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:262 +assert_return(() => invoke($0, `32s_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:263 +assert_return(() => invoke($0, `32s_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:264 +assert_return(() => invoke($0, `32s_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:266 +assert_return(() => invoke($0, `64_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:267 +assert_return(() => invoke($0, `64_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:268 +assert_return(() => invoke($0, `64_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:269 +assert_return(() => invoke($0, `64_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/multi-memory/address1.wast:270 +assert_trap(() => invoke($0, `64_good5`, [65504]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:272 +assert_trap(() => invoke($0, `8u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:273 +assert_trap(() => invoke($0, `8s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:274 +assert_trap(() => invoke($0, `16u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:275 +assert_trap(() => invoke($0, `16s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:276 +assert_trap(() => invoke($0, `32u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:277 +assert_trap(() => invoke($0, `32s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:278 +assert_trap(() => invoke($0, `64_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:280 +assert_trap(() => invoke($0, `8u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:281 +assert_trap(() => invoke($0, `8s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:282 +assert_trap(() => invoke($0, `16u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:283 +assert_trap(() => invoke($0, `16s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:284 +assert_trap(() => invoke($0, `32u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:285 +assert_trap(() => invoke($0, `32s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:286 +assert_trap(() => invoke($0, `64_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:288 +assert_trap(() => invoke($0, `8u_bad`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:289 +assert_trap(() => invoke($0, `8s_bad`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:290 +assert_trap(() => invoke($0, `16u_bad`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:291 +assert_trap(() => invoke($0, `16s_bad`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:292 +assert_trap(() => invoke($0, `32u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:293 +assert_trap(() => invoke($0, `32s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/address1.wast:294 +assert_trap(() => invoke($0, `64_bad`, [1]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/align0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/align0.wast.js new file mode 100644 index 0000000000..bafbd476e2 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/align0.wast.js @@ -0,0 +1,65 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/align0.wast + +// ./test/core/multi-memory/align0.wast:3 +let $0 = instantiate(`(module + (memory $$mem0 0) + (memory $$mem1 1) + (memory $$mem2 0) + + ;; $$default: natural alignment, $$1: align=1, $$2: align=2, $$4: align=4, $$8: align=8 + + (func (export "f32_align_switch") (param i32) (result f32) + (local f32 f32) + (local.set 1 (f32.const 10.0)) + (block $$4 + (block $$2 + (block $$1 + (block $$default + (block $$0 + (br_table $$0 $$default $$1 $$2 $$4 (local.get 0)) + ) ;; 0 + (f32.store $$mem1 (i32.const 0) (local.get 1)) + (local.set 2 (f32.load $$mem1 (i32.const 0))) + (br $$4) + ) ;; default + (f32.store $$mem1 align=1 (i32.const 0) (local.get 1)) + (local.set 2 (f32.load $$mem1 align=1 (i32.const 0))) + (br $$4) + ) ;; 1 + (f32.store $$mem1 align=2 (i32.const 0) (local.get 1)) + (local.set 2 (f32.load $$mem1 align=2 (i32.const 0))) + (br $$4) + ) ;; 2 + (f32.store $$mem1 align=4 (i32.const 0) (local.get 1)) + (local.set 2 (f32.load $$mem1 align=4 (i32.const 0))) + ) ;; 4 + (local.get 2) + ) +)`); + +// ./test/core/multi-memory/align0.wast:39 +assert_return(() => invoke($0, `f32_align_switch`, [0]), [value("f32", 10)]); + +// ./test/core/multi-memory/align0.wast:40 +assert_return(() => invoke($0, `f32_align_switch`, [1]), [value("f32", 10)]); + +// ./test/core/multi-memory/align0.wast:41 +assert_return(() => invoke($0, `f32_align_switch`, [2]), [value("f32", 10)]); + +// ./test/core/multi-memory/align0.wast:42 +assert_return(() => invoke($0, `f32_align_switch`, [3]), [value("f32", 10)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/binary0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/binary0.wast.js new file mode 100644 index 0000000000..db6f0bd879 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/binary0.wast.js @@ -0,0 +1,88 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/binary0.wast + +// ./test/core/multi-memory/binary0.wast:2 +let $0 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\05\\07\\02" ;; Memory section with 2 entries + "\\00\\82\\00" ;; no max, minimum 2 + "\\00\\82\\00" ;; no max, minimum 2 +)`); + +// ./test/core/multi-memory/binary0.wast:8 +let $1 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\05\\13\\03" ;; Memory section with 3 entries + "\\00\\83\\80\\80\\80\\00" ;; no max, minimum 3 + "\\00\\84\\80\\80\\80\\00" ;; no max, minimum 4 + "\\00\\85\\80\\80\\80\\00" ;; no max, minimum 5 +)`); + +// ./test/core/multi-memory/binary0.wast:16 +let $2 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\05\\05\\02" ;; Memory section with 2 entries + "\\00\\00" ;; no max, minimum 0 + "\\00\\00" ;; no max, minimum 0 + "\\0b\\06\\01" ;; Data section with 1 entry + "\\00" ;; Memory index 0 + "\\41\\00\\0b\\00" ;; (i32.const 0) with contents "" +)`); + +// ./test/core/multi-memory/binary0.wast:26 +let $3 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\05\\05\\02" ;; Memory section with 2 entries + "\\00\\00" ;; no max, minimum 0 + "\\00\\01" ;; no max, minimum 1 + "\\0b\\07\\01" ;; Data section with 1 entry + "\\02\\01" ;; Memory index 1 + "\\41\\00\\0b\\00" ;; (i32.const 0) with contents "" +)`); + +// ./test/core/multi-memory/binary0.wast:36 +let $4 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\05\\05\\02" ;; Memory section with 2 entries + "\\00\\00" ;; no max, minimum 0 + "\\00\\01" ;; no max, minimum 1 + "\\0b\\0a\\01" ;; Data section with 1 entry + "\\02\\81\\80\\80\\00" ;; Memory index 1 + "\\41\\00\\0b\\00" ;; (i32.const 0) with contents "" +)`); + +// ./test/core/multi-memory/binary0.wast:47 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\05\\0a\\02" ;; Memory section with 2 entries + "\\00\\01" ;; no max, minimum 1 + "\\00\\82\\80\\80\\80\\80\\00" ;; no max, minimum 2 with one byte too many + )`), + `integer representation too long`, +); + +// ./test/core/multi-memory/binary0.wast:58 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\05\\03\\02" ;; memory section with inconsistent count (1 declared, 0 given) + "\\00\\00" ;; memory 0 (missed) + ;; "\\00\\00" ;; memory 1 (missing) + )`), + `unexpected end of section or function`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/data0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/data0.wast.js new file mode 100644 index 0000000000..5fa85e426c --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/data0.wast.js @@ -0,0 +1,93 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/data0.wast + +// ./test/core/multi-memory/data0.wast:5 +let $0 = instantiate(`(module + (memory $$mem0 1) + (memory $$mem1 1) + (memory $$mem2 1) + + (data (i32.const 0)) + (data (i32.const 1) "a" "" "bcd") + (data (offset (i32.const 0))) + (data (offset (i32.const 0)) "" "a" "bc" "") + (data (memory 0) (i32.const 0)) + (data (memory 0x0) (i32.const 1) "a" "" "bcd") + (data (memory 0x000) (offset (i32.const 0))) + (data (memory 0) (offset (i32.const 0)) "" "a" "bc" "") + (data (memory $$mem0) (i32.const 0)) + (data (memory $$mem1) (i32.const 1) "a" "" "bcd") + (data (memory $$mem2) (offset (i32.const 0))) + (data (memory $$mem0) (offset (i32.const 0)) "" "a" "bc" "") + + (data $$d1 (i32.const 0)) + (data $$d2 (i32.const 1) "a" "" "bcd") + (data $$d3 (offset (i32.const 0))) + (data $$d4 (offset (i32.const 0)) "" "a" "bc" "") + (data $$d5 (memory 0) (i32.const 0)) + (data $$d6 (memory 0x0) (i32.const 1) "a" "" "bcd") + (data $$d7 (memory 0x000) (offset (i32.const 0))) + (data $$d8 (memory 0) (offset (i32.const 0)) "" "a" "bc" "") + (data $$d9 (memory $$mem0) (i32.const 0)) + (data $$d10 (memory $$mem1) (i32.const 1) "a" "" "bcd") + (data $$d11 (memory $$mem2) (offset (i32.const 0))) + (data $$d12 (memory $$mem0) (offset (i32.const 0)) "" "a" "bc" "") +)`); + +// ./test/core/multi-memory/data0.wast:39 +let $1 = instantiate(`(module + (memory 1) + (data (i32.const 0) "a") +)`); + +// ./test/core/multi-memory/data0.wast:43 +let $2 = instantiate(`(module + (import "spectest" "memory" (memory 1)) + (import "spectest" "memory" (memory 1)) + (import "spectest" "memory" (memory 1)) + (data (memory 0) (i32.const 0) "a") + (data (memory 1) (i32.const 0) "a") + (data (memory 2) (i32.const 0) "a") +)`); + +// ./test/core/multi-memory/data0.wast:52 +let $3 = instantiate(`(module + (global (import "spectest" "global_i32") i32) + (memory 1) + (data (global.get 0) "a") +)`); + +// ./test/core/multi-memory/data0.wast:57 +let $4 = instantiate(`(module + (global (import "spectest" "global_i32") i32) + (import "spectest" "memory" (memory 1)) + (data (global.get 0) "a") +)`); + +// ./test/core/multi-memory/data0.wast:63 +let $5 = instantiate(`(module + (global $$g (import "spectest" "global_i32") i32) + (memory 1) + (data (global.get $$g) "a") +)`); + +// ./test/core/multi-memory/data0.wast:68 +let $6 = instantiate(`(module + (global $$g (import "spectest" "global_i32") i32) + (import "spectest" "memory" (memory 1)) + (data (global.get $$g) "a") +)`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/data1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/data1.wast.js new file mode 100644 index 0000000000..953cc7c729 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/data1.wast.js @@ -0,0 +1,170 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/data1.wast + +// ./test/core/multi-memory/data1.wast:3 +assert_trap( + () => instantiate(`(module + (memory 1) + (memory 0) + (memory 2) + (data (memory 1) (i32.const 0) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:13 +assert_trap( + () => instantiate(`(module + (memory 1 1) + (memory 1 1) + (memory 0 0) + (data (memory 2) (i32.const 0) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:23 +assert_trap( + () => instantiate(`(module + (memory 1 1) + (memory 0 1) + (memory 1 1) + (data (memory 1) (i32.const 0) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:32 +assert_trap( + () => instantiate(`(module + (memory 1) + (memory 1) + (memory 0) + (data (memory 2) (i32.const 1)) + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:41 +assert_trap( + () => instantiate(`(module + (memory 1 1) + (memory 1 1) + (memory 0 1) + (data (memory 2) (i32.const 1)) + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:60 +assert_trap( + () => instantiate(`(module + (global (import "spectest" "global_i32") i32) + (memory 3) + (memory 0) + (memory 3) + (data (memory 1) (global.get 0) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:71 +assert_trap( + () => instantiate(`(module + (memory 2 2) + (memory 1 2) + (memory 2 2) + (data (memory 1) (i32.const 0x1_0000) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:80 +assert_trap( + () => instantiate(`(module + (import "spectest" "memory" (memory 1)) + (data (i32.const 0x1_0000) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:88 +assert_trap( + () => instantiate(`(module + (memory 3) + (memory 3) + (memory 2) + (data (memory 2) (i32.const 0x2_0000) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:98 +assert_trap( + () => instantiate(`(module + (memory 3 3) + (memory 2 3) + (memory 3 3) + (data (memory 1) (i32.const 0x2_0000) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:108 +assert_trap( + () => instantiate(`(module + (memory 0) + (memory 0) + (memory 1) + (data (memory 2) (i32.const -1) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:117 +assert_trap( + () => instantiate(`(module + (import "spectest" "memory" (memory 1)) + (import "spectest" "memory" (memory 1)) + (import "spectest" "memory" (memory 1)) + (data (memory 2) (i32.const -1) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:127 +assert_trap( + () => instantiate(`(module + (memory 2) + (memory 2) + (memory 2) + (data (memory 2) (i32.const -100) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/data1.wast:136 +assert_trap( + () => instantiate(`(module + (import "spectest" "memory" (memory 1)) + (import "spectest" "memory" (memory 1)) + (import "spectest" "memory" (memory 1)) + (import "spectest" "memory" (memory 1)) + (data (memory 3) (i32.const -100) "a") + )`), + `out of bounds memory access`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/data_drop0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/data_drop0.wast.js new file mode 100644 index 0000000000..7e0b28f4ac --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/data_drop0.wast.js @@ -0,0 +1,63 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/data_drop0.wast + +// ./test/core/multi-memory/data_drop0.wast:2 +let $0 = instantiate(`(module + (memory $$mem0 0) + (memory $$mem1 1) + (memory $$mem2 0) + (data $$p "x") + (data $$a (memory 1) (i32.const 0) "x") + + (func (export "drop_passive") (data.drop $$p)) + (func (export "init_passive") (param $$len i32) + (memory.init $$mem1 $$p (i32.const 0) (i32.const 0) (local.get $$len))) + + (func (export "drop_active") (data.drop $$a)) + (func (export "init_active") (param $$len i32) + (memory.init $$mem1 $$a (i32.const 0) (i32.const 0) (local.get $$len))) +)`); + +// ./test/core/multi-memory/data_drop0.wast:18 +invoke($0, `init_passive`, [1]); + +// ./test/core/multi-memory/data_drop0.wast:19 +invoke($0, `drop_passive`, []); + +// ./test/core/multi-memory/data_drop0.wast:20 +invoke($0, `drop_passive`, []); + +// ./test/core/multi-memory/data_drop0.wast:21 +assert_return(() => invoke($0, `init_passive`, [0]), []); + +// ./test/core/multi-memory/data_drop0.wast:22 +assert_trap(() => invoke($0, `init_passive`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/data_drop0.wast:23 +invoke($0, `init_passive`, [0]); + +// ./test/core/multi-memory/data_drop0.wast:24 +invoke($0, `drop_active`, []); + +// ./test/core/multi-memory/data_drop0.wast:25 +assert_return(() => invoke($0, `init_active`, [0]), []); + +// ./test/core/multi-memory/data_drop0.wast:26 +assert_trap(() => invoke($0, `init_active`, [1]), `out of bounds memory access`); + +// ./test/core/multi-memory/data_drop0.wast:27 +invoke($0, `init_active`, [0]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/directives.txt b/js/src/jit-test/tests/wasm/spec/multi-memory/directives.txt new file mode 100644 index 0000000000..9211583549 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; --wasm-multi-memory; skip-if: !wasmMultiMemoryEnabled() \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/exports0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/exports0.wast.js new file mode 100644 index 0000000000..2d94a23440 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/exports0.wast.js @@ -0,0 +1,78 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/exports0.wast + +// ./test/core/multi-memory/exports0.wast:3 +let $0 = instantiate(`(module (memory 0) (export "a" (memory 0)))`); + +// ./test/core/multi-memory/exports0.wast:4 +let $1 = instantiate(`(module (memory 0) (export "a" (memory 0)) (export "b" (memory 0)))`); + +// ./test/core/multi-memory/exports0.wast:5 +let $2 = instantiate(`(module (memory 0) (memory 0) (export "a" (memory 0)) (export "b" (memory 1)))`); + +// ./test/core/multi-memory/exports0.wast:6 +let $3 = instantiate(`(module + (memory $$mem0 0) + (memory $$mem1 0) + (memory $$mem2 0) + (memory $$mem3 0) + (memory $$mem4 0) + (memory $$mem5 0) + (memory $$mem6 0) + + (export "a" (memory $$mem0)) + (export "b" (memory $$mem1)) + (export "ac" (memory $$mem2)) + (export "bc" (memory $$mem3)) + (export "ad" (memory $$mem4)) + (export "bd" (memory $$mem5)) + (export "be" (memory $$mem6)) + + (export "za" (memory $$mem0)) + (export "zb" (memory $$mem1)) + (export "zac" (memory $$mem2)) + (export "zbc" (memory $$mem3)) + (export "zad" (memory $$mem4)) + (export "zbd" (memory $$mem5)) + (export "zbe" (memory $$mem6)) +)`); + +// ./test/core/multi-memory/exports0.wast:32 +let $4 = instantiate(`(module + (export "a" (memory 0)) + (memory 6) + + (export "b" (memory 1)) + (memory 3) +)`); + +// ./test/core/multi-memory/exports0.wast:40 +let $5 = instantiate(`(module + (export "a" (memory 0)) + (memory 0 1) + (memory 0 1) + (memory 0 1) + (memory 0 1) + + (export "b" (memory 3)) +)`); + +// ./test/core/multi-memory/exports0.wast:49 +let $6 = instantiate(`(module (export "a" (memory $$a)) (memory $$a 0))`); + +// ./test/core/multi-memory/exports0.wast:50 +let $7 = instantiate(`(module (export "a" (memory $$a)) (memory $$a 0 1))`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/float_exprs0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/float_exprs0.wast.js new file mode 100644 index 0000000000..fe1c12a5ee --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/float_exprs0.wast.js @@ -0,0 +1,80 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/float_exprs0.wast + +// ./test/core/multi-memory/float_exprs0.wast:1 +let $0 = instantiate(`(module + (memory 0 0) + (memory $$m 1 1) + (memory 0 0) + (func (export "init") (param $$i i32) (param $$x f64) + (f64.store $$m (local.get $$i) (local.get $$x))) + + (func (export "run") (param $$n i32) (param $$z f64) + (local $$i i32) + (block $$exit + (loop $$cont + (f64.store $$m + (local.get $$i) + (f64.div (f64.load $$m (local.get $$i)) (local.get $$z)) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 8))) + (br_if $$cont (i32.lt_u (local.get $$i) (local.get $$n))) + ) + ) + ) + + (func (export "check") (param $$i i32) (result f64) (f64.load $$m (local.get $$i))) +)`); + +// ./test/core/multi-memory/float_exprs0.wast:25 +invoke($0, `init`, [0, value("f64", 15.1)]); + +// ./test/core/multi-memory/float_exprs0.wast:26 +invoke($0, `init`, [8, value("f64", 15.2)]); + +// ./test/core/multi-memory/float_exprs0.wast:27 +invoke($0, `init`, [16, value("f64", 15.3)]); + +// ./test/core/multi-memory/float_exprs0.wast:28 +invoke($0, `init`, [24, value("f64", 15.4)]); + +// ./test/core/multi-memory/float_exprs0.wast:29 +assert_return(() => invoke($0, `check`, [0]), [value("f64", 15.1)]); + +// ./test/core/multi-memory/float_exprs0.wast:30 +assert_return(() => invoke($0, `check`, [8]), [value("f64", 15.2)]); + +// ./test/core/multi-memory/float_exprs0.wast:31 +assert_return(() => invoke($0, `check`, [16]), [value("f64", 15.3)]); + +// ./test/core/multi-memory/float_exprs0.wast:32 +assert_return(() => invoke($0, `check`, [24]), [value("f64", 15.4)]); + +// ./test/core/multi-memory/float_exprs0.wast:33 +invoke($0, `run`, [32, value("f64", 3)]); + +// ./test/core/multi-memory/float_exprs0.wast:34 +assert_return(() => invoke($0, `check`, [0]), [value("f64", 5.033333333333333)]); + +// ./test/core/multi-memory/float_exprs0.wast:35 +assert_return(() => invoke($0, `check`, [8]), [value("f64", 5.066666666666666)]); + +// ./test/core/multi-memory/float_exprs0.wast:36 +assert_return(() => invoke($0, `check`, [16]), [value("f64", 5.1000000000000005)]); + +// ./test/core/multi-memory/float_exprs0.wast:37 +assert_return(() => invoke($0, `check`, [24]), [value("f64", 5.133333333333334)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/float_exprs1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/float_exprs1.wast.js new file mode 100644 index 0000000000..3f7c1052fa --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/float_exprs1.wast.js @@ -0,0 +1,128 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/float_exprs1.wast + +// ./test/core/multi-memory/float_exprs1.wast:4 +let $0 = instantiate(`(module + (memory 0 0) + (memory 0 0) + (memory 0 0) + (memory 0 0) + (memory 0 0) + (memory $$m (data + "\\c4\\c5\\57\\24\\a5\\84\\c8\\0b\\6d\\b8\\4b\\2e\\f2\\76\\17\\1c\\ca\\4a\\56\\1e\\1b\\6e\\71\\22" + "\\5d\\17\\1e\\6e\\bf\\cd\\14\\5c\\c7\\21\\55\\51\\39\\9c\\1f\\b2\\51\\f0\\a3\\93\\d7\\c1\\2c\\ae" + "\\7e\\a8\\28\\3a\\01\\21\\f4\\0a\\58\\93\\f8\\42\\77\\9f\\83\\39\\6a\\5f\\ba\\f7\\0a\\d8\\51\\6a" + "\\34\\ca\\ad\\c6\\34\\0e\\d8\\26\\dc\\4c\\33\\1c\\ed\\29\\90\\a8\\78\\0f\\d1\\ce\\76\\31\\23\\83" + "\\b8\\35\\e8\\f2\\44\\b0\\d3\\a1\\fc\\bb\\32\\e1\\b0\\ba\\69\\44\\09\\d6\\d9\\7d\\ff\\2e\\c0\\5a" + "\\36\\14\\33\\14\\3e\\a9\\fa\\87\\6d\\8b\\bc\\ce\\9d\\a7\\fd\\c4\\e9\\85\\3f\\dd\\d7\\e1\\18\\a6" + "\\50\\26\\72\\6e\\3f\\73\\0f\\f8\\12\\93\\23\\34\\61\\76\\12\\48\\c0\\9b\\05\\93\\eb\\ac\\86\\de" + "\\94\\3e\\55\\e8\\8c\\e8\\dd\\e4\\fc\\95\\47\\be\\56\\03\\21\\20\\4c\\e6\\bf\\7b\\f6\\7f\\d5\\ba" + "\\73\\1c\\c1\\14\\8f\\c4\\27\\96\\b3\\bd\\33\\ff\\78\\41\\5f\\c0\\5a\\ce\\f6\\67\\6e\\73\\9a\\17" + "\\66\\70\\03\\f8\\ce\\27\\a3\\52\\b2\\9f\\3b\\bf\\fb\\ae\\ed\\d3\\5a\\f8\\37\\57\\f0\\f5\\6e\\ef" + "\\b1\\4d\\70\\3d\\54\\a7\\01\\9a\\85\\08\\48\\91\\f5\\9d\\0c\\60\\87\\5b\\d9\\54\\1e\\51\\6d\\88" + "\\8e\\08\\8c\\a5\\71\\3a\\56\\08\\67\\46\\8f\\8f\\13\\2a\\2c\\ec\\2c\\1f\\b4\\62\\2b\\6f\\41\\0a" + "\\c4\\65\\42\\a2\\31\\6b\\2c\\7d\\3e\\bb\\75\\ac\\86\\97\\30\\d9\\48\\cd\\9a\\1f\\56\\c4\\c6\\e4" + "\\12\\c0\\9d\\fb\\ee\\02\\8c\\ce\\1c\\f2\\1e\\a1\\78\\23\\db\\c4\\1e\\49\\03\\d3\\71\\cc\\08\\50" + "\\c5\\d8\\5c\\ed\\d5\\b5\\65\\ac\\b5\\c9\\21\\d2\\c9\\29\\76\\de\\f0\\30\\1a\\5b\\3c\\f2\\3b\\db" + "\\3a\\39\\82\\3a\\16\\08\\6f\\a8\\f1\\be\\69\\69\\99\\71\\a6\\05\\d3\\14\\93\\2a\\16\\f2\\2f\\11" + "\\c7\\7e\\20\\bb\\91\\44\\ee\\f8\\e4\\01\\53\\c0\\b9\\7f\\f0\\bf\\f0\\03\\9c\\6d\\b1\\df\\a2\\44" + "\\01\\6d\\6b\\71\\2b\\5c\\b3\\21\\19\\46\\5e\\8f\\db\\91\\d3\\7c\\78\\6b\\b7\\12\\00\\8f\\eb\\bd" + "\\8a\\f5\\d4\\2e\\c4\\c1\\1e\\df\\73\\63\\59\\47\\49\\03\\0a\\b7\\cf\\24\\cf\\9c\\0e\\44\\7a\\9e" + "\\14\\fb\\42\\bf\\9d\\39\\30\\9e\\a0\\ab\\2f\\d1\\ae\\9e\\6a\\83\\43\\e3\\55\\7d\\85\\bf\\63\\8a" + "\\f8\\96\\10\\1f\\fe\\6d\\e7\\22\\1b\\e1\\69\\46\\8a\\44\\c8\\c8\\f9\\0c\\2b\\19\\07\\a5\\02\\3e" + "\\f2\\30\\10\\9a\\85\\8a\\5f\\ef\\81\\45\\a0\\77\\b1\\03\\10\\73\\4b\\ae\\98\\9d\\47\\bf\\9a\\2d" + "\\3a\\d5\\0f\\03\\66\\e3\\3d\\53\\d9\\40\\ce\\1f\\6f\\32\\2f\\21\\2b\\23\\21\\6c\\62\\d4\\a7\\3e" + "\\a8\\ce\\28\\31\\2d\\00\\3d\\67\\5e\\af\\a0\\cf\\2e\\d2\\b9\\6b\\84\\eb\\69\\08\\3c\\62\\36\\be" + "\\12\\fd\\36\\7f\\88\\3e\\ad\\bc\\0b\\c0\\41\\c4\\50\\b6\\e3\\50\\31\\e8\\ce\\e2\\96\\65\\55\\9c" + "\\16\\46\\e6\\b0\\2d\\3a\\e8\\81\\05\\b0\\bf\\34\\f7\\bc\\10\\1c\\fb\\cc\\3c\\f1\\85\\97\\42\\9f" + "\\eb\\14\\8d\\3c\\bf\\d7\\17\\88\\49\\9d\\8b\\2b\\b2\\3a\\83\\d1\\4f\\04\\9e\\a1\\0f\\ad\\08\\9d" + "\\54\\af\\d1\\82\\c3\\ec\\32\\2f\\02\\8f\\05\\21\\2d\\a2\\b7\\e4\\f4\\6f\\2e\\81\\2b\\0b\\9c\\fc" + "\\cb\\fe\\74\\02\\f9\\db\\f4\\f3\\ea\\00\\a8\\ec\\d1\\99\\74\\26\\dd\\d6\\34\\d5\\25\\b1\\46\\dd" + "\\9c\\aa\\71\\f5\\60\\b0\\88\\c8\\e0\\0b\\59\\5a\\25\\4f\\29\\66\\f9\\e3\\2e\\fe\\e9\\da\\e5\\18" + "\\4f\\27\\62\\f4\\ce\\a4\\21\\95\\74\\c7\\57\\64\\27\\9a\\4c\\fd\\54\\7d\\61\\ce\\c3\\ac\\87\\46" + "\\9c\\fa\\ff\\09\\ca\\79\\97\\67\\24\\74\\ca\\d4\\21\\83\\26\\25\\19\\12\\37\\64\\19\\e5\\65\\e0" + "\\74\\75\\8e\\dd\\c8\\ef\\74\\c7\\d8\\21\\2b\\79\\04\\51\\46\\65\\60\\03\\5d\\fa\\d8\\f4\\65\\a4" + "\\9e\\5d\\23\\da\\d7\\8a\\92\\80\\a4\\de\\78\\3c\\f1\\57\\42\\6d\\cd\\c9\\2f\\d5\\a4\\9e\\ab\\40" + "\\f4\\cb\\1b\\d7\\a3\\ca\\fc\\eb\\a7\\01\\b2\\9a\\69\\4e\\46\\9b\\18\\4e\\dd\\79\\a7\\aa\\a6\\52" + "\\39\\1e\\ef\\30\\cc\\9b\\bd\\5b\\ee\\4c\\21\\6d\\30\\00\\72\\b0\\46\\5f\\08\\cf\\c5\\b9\\e0\\3e" + "\\c2\\b3\\0c\\dc\\8e\\64\\de\\19\\42\\79\\cf\\43\\ea\\43\\5d\\8e\\88\\f7\\ab\\15\\dc\\3f\\c8\\67" + "\\20\\db\\b8\\64\\b1\\47\\1f\\de\\f2\\cb\\3f\\59\\9f\\d8\\46\\90\\dc\\ae\\2f\\22\\f9\\e2\\31\\89" + "\\d9\\9c\\1c\\4c\\d3\\a9\\4a\\57\\84\\9c\\9f\\ea\\2c\\3c\\ae\\3c\\c3\\1e\\8b\\e5\\4e\\17\\01\\25" + "\\db\\34\\46\\5f\\15\\ea\\05\\0c\\7c\\d9\\45\\8c\\19\\d0\\73\\8a\\96\\16\\dd\\44\\f9\\05\\b7\\5b" + "\\71\\b0\\e6\\21\\36\\5f\\75\\89\\91\\73\\75\\ab\\7d\\ae\\d3\\73\\ec\\37\\c6\\ea\\55\\75\\ef\\ea" + "\\ab\\8b\\7b\\11\\dc\\6d\\1a\\b2\\6a\\c4\\25\\cf\\aa\\e3\\9f\\49\\49\\89\\cb\\37\\9b\\0a\\a7\\01" + "\\60\\70\\dc\\b7\\c8\\83\\e1\\42\\f5\\be\\ad\\62\\94\\ad\\8d\\a1" + )) + (memory 0 0) + (memory 0 0) + (memory 0 0) + + (func (export "f32.kahan_sum") (param $$p i32) (param $$n i32) (result f32) + (local $$sum f32) + (local $$c f32) + (local $$t f32) + (block $$exit + (loop $$top + (local.set $$t + (f32.sub + (f32.sub + (local.tee $$sum + (f32.add + (local.get $$c) + (local.tee $$t + (f32.sub (f32.load $$m (local.get $$p)) (local.get $$t)) + ) + ) + ) + (local.get $$c) + ) + (local.get $$t) + ) + ) + (local.set $$p (i32.add (local.get $$p) (i32.const 4))) + (local.set $$c (local.get $$sum)) + (br_if $$top (local.tee $$n (i32.add (local.get $$n) (i32.const -1)))) + ) + ) + (local.get $$sum) + ) + + (func (export "f32.plain_sum") (param $$p i32) (param $$n i32) (result f32) + (local $$sum f32) + (block $$exit + (loop $$top + (local.set $$sum (f32.add (local.get $$sum) (f32.load $$m (local.get $$p)))) + (local.set $$p (i32.add (local.get $$p) (i32.const 4))) + (local.set $$n (i32.add (local.get $$n) (i32.const -1))) + (br_if $$top (local.get $$n)) + ) + ) + (local.get $$sum) + ) +)`); + +// ./test/core/multi-memory/float_exprs1.wast:103 +assert_return( + () => invoke($0, `f32.kahan_sum`, [0, 256]), + [value("f32", -21558138000000000000000000000000)], +); + +// ./test/core/multi-memory/float_exprs1.wast:104 +assert_return( + () => invoke($0, `f32.plain_sum`, [0, 256]), + [value("f32", -16487540000000000000000000000000)], +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/float_memory.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/float_memory.wast.js new file mode 100644 index 0000000000..8f01f424e8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/float_memory.wast.js @@ -0,0 +1,361 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/float_memory.wast + +// ./test/core/float_memory.wast:5 +let $0 = instantiate(`(module + (memory (data "\\00\\00\\a0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 0))) + (func (export "i32.load") (result i32) (i32.load (i32.const 0))) + (func (export "f32.store") (f32.store (i32.const 0) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store (i32.const 0) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store (i32.const 0) (i32.const 0))) +)`); + +// ./test/core/float_memory.wast:15 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:16 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:17 +invoke($0, `reset`, []); + +// ./test/core/float_memory.wast:18 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:19 +assert_return(() => invoke($0, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:20 +invoke($0, `f32.store`, []); + +// ./test/core/float_memory.wast:21 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:22 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:23 +invoke($0, `reset`, []); + +// ./test/core/float_memory.wast:24 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:25 +assert_return(() => invoke($0, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:26 +invoke($0, `i32.store`, []); + +// ./test/core/float_memory.wast:27 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:28 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:30 +let $1 = instantiate(`(module + (memory (data "\\00\\00\\00\\00\\00\\00\\f4\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 0))) + (func (export "i64.load") (result i64) (i64.load (i32.const 0))) + (func (export "f64.store") (f64.store (i32.const 0) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store (i32.const 0) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store (i32.const 0) (i64.const 0))) +)`); + +// ./test/core/float_memory.wast:40 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:41 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:42 +invoke($1, `reset`, []); + +// ./test/core/float_memory.wast:43 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:44 +assert_return(() => invoke($1, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:45 +invoke($1, `f64.store`, []); + +// ./test/core/float_memory.wast:46 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:47 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:48 +invoke($1, `reset`, []); + +// ./test/core/float_memory.wast:49 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:50 +assert_return(() => invoke($1, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:51 +invoke($1, `i64.store`, []); + +// ./test/core/float_memory.wast:52 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:53 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:57 +let $2 = instantiate(`(module + (memory (data "\\00\\00\\00\\a0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 1))) + (func (export "i32.load") (result i32) (i32.load (i32.const 1))) + (func (export "f32.store") (f32.store (i32.const 1) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store (i32.const 1) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store (i32.const 1) (i32.const 0))) +)`); + +// ./test/core/float_memory.wast:67 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:68 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:69 +invoke($2, `reset`, []); + +// ./test/core/float_memory.wast:70 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:71 +assert_return(() => invoke($2, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:72 +invoke($2, `f32.store`, []); + +// ./test/core/float_memory.wast:73 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:74 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:75 +invoke($2, `reset`, []); + +// ./test/core/float_memory.wast:76 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:77 +assert_return(() => invoke($2, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:78 +invoke($2, `i32.store`, []); + +// ./test/core/float_memory.wast:79 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:80 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:82 +let $3 = instantiate(`(module + (memory (data "\\00\\00\\00\\00\\00\\00\\00\\f4\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 1))) + (func (export "i64.load") (result i64) (i64.load (i32.const 1))) + (func (export "f64.store") (f64.store (i32.const 1) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store (i32.const 1) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store (i32.const 1) (i64.const 0))) +)`); + +// ./test/core/float_memory.wast:92 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:93 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:94 +invoke($3, `reset`, []); + +// ./test/core/float_memory.wast:95 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:96 +assert_return(() => invoke($3, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:97 +invoke($3, `f64.store`, []); + +// ./test/core/float_memory.wast:98 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:99 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:100 +invoke($3, `reset`, []); + +// ./test/core/float_memory.wast:101 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:102 +assert_return(() => invoke($3, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:103 +invoke($3, `i64.store`, []); + +// ./test/core/float_memory.wast:104 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:105 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:109 +let $4 = instantiate(`(module + (memory (data "\\01\\00\\d0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 0))) + (func (export "i32.load") (result i32) (i32.load (i32.const 0))) + (func (export "f32.store") (f32.store (i32.const 0) (f32.const nan:0x500001))) + (func (export "i32.store") (i32.store (i32.const 0) (i32.const 0x7fd00001))) + (func (export "reset") (i32.store (i32.const 0) (i32.const 0))) +)`); + +// ./test/core/float_memory.wast:119 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory.wast:120 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory.wast:121 +invoke($4, `reset`, []); + +// ./test/core/float_memory.wast:122 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:123 +assert_return(() => invoke($4, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:124 +invoke($4, `f32.store`, []); + +// ./test/core/float_memory.wast:125 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory.wast:126 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory.wast:127 +invoke($4, `reset`, []); + +// ./test/core/float_memory.wast:128 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:129 +assert_return(() => invoke($4, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:130 +invoke($4, `i32.store`, []); + +// ./test/core/float_memory.wast:131 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory.wast:132 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory.wast:134 +let $5 = instantiate(`(module + (memory (data "\\01\\00\\00\\00\\00\\00\\fc\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 0))) + (func (export "i64.load") (result i64) (i64.load (i32.const 0))) + (func (export "f64.store") (f64.store (i32.const 0) (f64.const nan:0xc000000000001))) + (func (export "i64.store") (i64.store (i32.const 0) (i64.const 0x7ffc000000000001))) + (func (export "reset") (i64.store (i32.const 0) (i64.const 0))) +)`); + +// ./test/core/float_memory.wast:144 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory.wast:145 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); + +// ./test/core/float_memory.wast:146 +invoke($5, `reset`, []); + +// ./test/core/float_memory.wast:147 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:148 +assert_return(() => invoke($5, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:149 +invoke($5, `f64.store`, []); + +// ./test/core/float_memory.wast:150 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory.wast:151 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); + +// ./test/core/float_memory.wast:152 +invoke($5, `reset`, []); + +// ./test/core/float_memory.wast:153 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:154 +assert_return(() => invoke($5, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:155 +invoke($5, `i64.store`, []); + +// ./test/core/float_memory.wast:156 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory.wast:157 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/float_memory0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/float_memory0.wast.js new file mode 100644 index 0000000000..3647fc1164 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/float_memory0.wast.js @@ -0,0 +1,137 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/float_memory0.wast + +// ./test/core/multi-memory/float_memory0.wast:5 +let $0 = instantiate(`(module + (memory 0 0) + (memory 0 0) + (memory 0 0) + (memory $$m (data "\\00\\00\\a0\\7f")) + (memory 0 0) + (memory 0 0) + + (func (export "f32.load") (result f32) (f32.load $$m (i32.const 0))) + (func (export "i32.load") (result i32) (i32.load $$m (i32.const 0))) + (func (export "f32.store") (f32.store $$m (i32.const 0) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store $$m (i32.const 0) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store $$m (i32.const 0) (i32.const 0))) +)`); + +// ./test/core/multi-memory/float_memory0.wast:20 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/multi-memory/float_memory0.wast:21 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/multi-memory/float_memory0.wast:22 +invoke($0, `reset`, []); + +// ./test/core/multi-memory/float_memory0.wast:23 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/float_memory0.wast:24 +assert_return(() => invoke($0, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/multi-memory/float_memory0.wast:25 +invoke($0, `f32.store`, []); + +// ./test/core/multi-memory/float_memory0.wast:26 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/multi-memory/float_memory0.wast:27 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/multi-memory/float_memory0.wast:28 +invoke($0, `reset`, []); + +// ./test/core/multi-memory/float_memory0.wast:29 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/float_memory0.wast:30 +assert_return(() => invoke($0, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/multi-memory/float_memory0.wast:31 +invoke($0, `i32.store`, []); + +// ./test/core/multi-memory/float_memory0.wast:32 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/multi-memory/float_memory0.wast:33 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/multi-memory/float_memory0.wast:35 +let $1 = instantiate(`(module + (memory 0 0) + (memory $$m (data "\\00\\00\\00\\00\\00\\00\\f4\\7f")) + + (func (export "f64.load") (result f64) (f64.load $$m (i32.const 0))) + (func (export "i64.load") (result i64) (i64.load $$m (i32.const 0))) + (func (export "f64.store") (f64.store $$m (i32.const 0) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store $$m (i32.const 0) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store $$m (i32.const 0) (i64.const 0))) +)`); + +// ./test/core/multi-memory/float_memory0.wast:46 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/multi-memory/float_memory0.wast:47 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/multi-memory/float_memory0.wast:48 +invoke($1, `reset`, []); + +// ./test/core/multi-memory/float_memory0.wast:49 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/multi-memory/float_memory0.wast:50 +assert_return(() => invoke($1, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/multi-memory/float_memory0.wast:51 +invoke($1, `f64.store`, []); + +// ./test/core/multi-memory/float_memory0.wast:52 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/multi-memory/float_memory0.wast:53 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/multi-memory/float_memory0.wast:54 +invoke($1, `reset`, []); + +// ./test/core/multi-memory/float_memory0.wast:55 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/multi-memory/float_memory0.wast:56 +assert_return(() => invoke($1, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/multi-memory/float_memory0.wast:57 +invoke($1, `i64.store`, []); + +// ./test/core/multi-memory/float_memory0.wast:58 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/multi-memory/float_memory0.wast:59 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/multi-memory/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/harness/harness.js b/js/src/jit-test/tests/wasm/spec/multi-memory/harness/harness.js new file mode 100644 index 0000000000..a96781e8ed --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/harness/harness.js @@ -0,0 +1,448 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/imports0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/imports0.wast.js new file mode 100644 index 0000000000..140457d1d9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/imports0.wast.js @@ -0,0 +1,73 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/imports0.wast + +// ./test/core/multi-memory/imports0.wast:1 +let $0 = instantiate(`(module + (func (export "func")) + (func (export "func-i32") (param i32)) + (func (export "func-f32") (param f32)) + (func (export "func->i32") (result i32) (i32.const 22)) + (func (export "func->f32") (result f32) (f32.const 11)) + (func (export "func-i32->i32") (param i32) (result i32) (local.get 0)) + (func (export "func-i64->i64") (param i64) (result i64) (local.get 0)) + (global (export "global-i32") i32 (i32.const 55)) + (global (export "global-f32") f32 (f32.const 44)) + (global (export "global-mut-i64") (mut i64) (i64.const 66)) + (table (export "table-10-inf") 10 funcref) + (table (export "table-10-20") 10 20 funcref) + (memory (export "memory-2-inf") 2) + (memory (export "memory-2-4") 2 4) +)`); + +// ./test/core/multi-memory/imports0.wast:18 +register($0, `test`); + +// ./test/core/multi-memory/imports0.wast:20 +assert_unlinkable( + () => instantiate(`(module (import "test" "memory-2-inf" (func)))`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports0.wast:24 +assert_unlinkable( + () => instantiate(`(module (import "test" "memory-2-4" (func)))`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports0.wast:29 +assert_unlinkable( + () => instantiate(`(module (import "test" "memory-2-inf" (global i32)))`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports0.wast:33 +assert_unlinkable( + () => instantiate(`(module (import "test" "memory-2-4" (global i32)))`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports0.wast:38 +assert_unlinkable( + () => instantiate(`(module (import "test" "memory-2-inf" (table 10 funcref)))`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports0.wast:42 +assert_unlinkable( + () => instantiate(`(module (import "test" "memory-2-4" (table 10 funcref)))`), + `incompatible import type`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/imports1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/imports1.wast.js new file mode 100644 index 0000000000..db3cc392dd --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/imports1.wast.js @@ -0,0 +1,40 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/imports1.wast + +// ./test/core/multi-memory/imports1.wast:1 +let $0 = instantiate(`(module + (import "spectest" "memory" (memory 1 2)) + (import "spectest" "memory" (memory 1 2)) + (memory $$m (import "spectest" "memory") 1 2) + (import "spectest" "memory" (memory 1 2)) + + (data (memory 2) (i32.const 10) "\\10") + + (func (export "load") (param i32) (result i32) (i32.load $$m (local.get 0))) +)`); + +// ./test/core/multi-memory/imports1.wast:12 +assert_return(() => invoke($0, `load`, [0]), [value("i32", 0)]); + +// ./test/core/multi-memory/imports1.wast:13 +assert_return(() => invoke($0, `load`, [10]), [value("i32", 16)]); + +// ./test/core/multi-memory/imports1.wast:14 +assert_return(() => invoke($0, `load`, [8]), [value("i32", 1048576)]); + +// ./test/core/multi-memory/imports1.wast:15 +assert_trap(() => invoke($0, `load`, [1000000]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/imports2.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/imports2.wast.js new file mode 100644 index 0000000000..aa2bec179a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/imports2.wast.js @@ -0,0 +1,120 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/imports2.wast + +// ./test/core/multi-memory/imports2.wast:1 +let $0 = instantiate(`(module + (memory (export "z") 0 0) + (memory (export "memory-2-inf") 2) + (memory (export "memory-2-4") 2 4) +)`); + +// ./test/core/multi-memory/imports2.wast:7 +register($0, `test`); + +// ./test/core/multi-memory/imports2.wast:9 +let $1 = instantiate(`(module + (import "test" "z" (memory 0)) + (memory $$m (import "spectest" "memory") 1 2) + (data (memory 1) (i32.const 10) "\\10") + + (func (export "load") (param i32) (result i32) (i32.load $$m (local.get 0))) +)`); + +// ./test/core/multi-memory/imports2.wast:17 +assert_return(() => invoke($1, `load`, [0]), [value("i32", 0)]); + +// ./test/core/multi-memory/imports2.wast:18 +assert_return(() => invoke($1, `load`, [10]), [value("i32", 16)]); + +// ./test/core/multi-memory/imports2.wast:19 +assert_return(() => invoke($1, `load`, [8]), [value("i32", 1048576)]); + +// ./test/core/multi-memory/imports2.wast:20 +assert_trap(() => invoke($1, `load`, [1000000]), `out of bounds memory access`); + +// ./test/core/multi-memory/imports2.wast:22 +let $2 = instantiate(`(module + (memory (import "spectest" "memory") 1 2) + (data (memory 0) (i32.const 10) "\\10") + + (func (export "load") (param i32) (result i32) (i32.load (local.get 0))) +)`); + +// ./test/core/multi-memory/imports2.wast:28 +assert_return(() => invoke($2, `load`, [0]), [value("i32", 0)]); + +// ./test/core/multi-memory/imports2.wast:29 +assert_return(() => invoke($2, `load`, [10]), [value("i32", 16)]); + +// ./test/core/multi-memory/imports2.wast:30 +assert_return(() => invoke($2, `load`, [8]), [value("i32", 1048576)]); + +// ./test/core/multi-memory/imports2.wast:31 +assert_trap(() => invoke($2, `load`, [1000000]), `out of bounds memory access`); + +// ./test/core/multi-memory/imports2.wast:33 +let $3 = instantiate(`(module + (import "test" "memory-2-inf" (memory 2)) + (import "test" "memory-2-inf" (memory 1)) + (import "test" "memory-2-inf" (memory 0)) +)`); + +// ./test/core/multi-memory/imports2.wast:39 +let $4 = instantiate(`(module + (import "spectest" "memory" (memory 1)) + (import "spectest" "memory" (memory 0)) + (import "spectest" "memory" (memory 1 2)) + (import "spectest" "memory" (memory 0 2)) + (import "spectest" "memory" (memory 1 3)) + (import "spectest" "memory" (memory 0 3)) +)`); + +// ./test/core/multi-memory/imports2.wast:48 +assert_unlinkable( + () => instantiate(`(module (import "test" "unknown" (memory 1)))`), + `unknown import`, +); + +// ./test/core/multi-memory/imports2.wast:52 +assert_unlinkable( + () => instantiate(`(module (import "spectest" "unknown" (memory 1)))`), + `unknown import`, +); + +// ./test/core/multi-memory/imports2.wast:57 +assert_unlinkable( + () => instantiate(`(module (import "test" "memory-2-inf" (memory 3)))`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports2.wast:61 +assert_unlinkable( + () => instantiate(`(module (import "test" "memory-2-inf" (memory 2 3)))`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports2.wast:65 +assert_unlinkable( + () => instantiate(`(module (import "spectest" "memory" (memory 2)))`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports2.wast:69 +assert_unlinkable( + () => instantiate(`(module (import "spectest" "memory" (memory 1 1)))`), + `incompatible import type`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/imports3.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/imports3.wast.js new file mode 100644 index 0000000000..9669f1dea0 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/imports3.wast.js @@ -0,0 +1,109 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/imports3.wast + +// ./test/core/multi-memory/imports3.wast:1 +let $0 = instantiate(`(module + (func (export "func")) + (func (export "func-i32") (param i32)) + (func (export "func-f32") (param f32)) + (func (export "func->i32") (result i32) (i32.const 22)) + (func (export "func->f32") (result f32) (f32.const 11)) + (func (export "func-i32->i32") (param i32) (result i32) (local.get 0)) + (func (export "func-i64->i64") (param i64) (result i64) (local.get 0)) + (global (export "global-i32") i32 (i32.const 55)) + (global (export "global-f32") f32 (f32.const 44)) + (global (export "global-mut-i64") (mut i64) (i64.const 66)) + (table (export "table-10-inf") 10 funcref) + (table (export "table-10-20") 10 20 funcref) + (memory (export "memory-2-inf") 2) + (memory (export "memory-2-4") 2 4) +)`); + +// ./test/core/multi-memory/imports3.wast:18 +register($0, `test`); + +// ./test/core/multi-memory/imports3.wast:19 +assert_unlinkable( + () => instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (import "test" "func-i32" (memory 1)) + )`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports3.wast:26 +assert_unlinkable( + () => instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (import "test" "global-i32" (memory 1)) + )`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports3.wast:33 +assert_unlinkable( + () => instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (import "test" "table-10-inf" (memory 1)) + )`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports3.wast:40 +assert_unlinkable( + () => instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (import "spectest" "print_i32" (memory 1)) + )`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports3.wast:47 +assert_unlinkable( + () => instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (import "spectest" "global_i32" (memory 1)) + )`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports3.wast:54 +assert_unlinkable( + () => instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (import "spectest" "table" (memory 1)) + )`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports3.wast:62 +assert_unlinkable( + () => instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (import "spectest" "memory" (memory 2)) + )`), + `incompatible import type`, +); + +// ./test/core/multi-memory/imports3.wast:69 +assert_unlinkable( + () => instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (import "spectest" "memory" (memory 1 1)) + )`), + `incompatible import type`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/imports4.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/imports4.wast.js new file mode 100644 index 0000000000..86320fe685 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/imports4.wast.js @@ -0,0 +1,93 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/imports4.wast + +// ./test/core/multi-memory/imports4.wast:1 +let $0 = instantiate(`(module + (memory (export "memory-2-inf") 2) + (memory (export "memory-2-4") 2 4) +)`); + +// ./test/core/multi-memory/imports4.wast:6 +register($0, `test`); + +// ./test/core/multi-memory/imports4.wast:8 +let $1 = instantiate(`(module + (import "test" "memory-2-4" (memory 1)) + (memory $$m (import "spectest" "memory") 0 3) ;; actual has max size 2 + (func (export "grow") (param i32) (result i32) (memory.grow $$m (local.get 0))) +)`); + +// ./test/core/multi-memory/imports4.wast:13 +assert_return(() => invoke($1, `grow`, [0]), [value("i32", 1)]); + +// ./test/core/multi-memory/imports4.wast:14 +assert_return(() => invoke($1, `grow`, [1]), [value("i32", 1)]); + +// ./test/core/multi-memory/imports4.wast:15 +assert_return(() => invoke($1, `grow`, [0]), [value("i32", 2)]); + +// ./test/core/multi-memory/imports4.wast:16 +assert_return(() => invoke($1, `grow`, [1]), [value("i32", -1)]); + +// ./test/core/multi-memory/imports4.wast:17 +assert_return(() => invoke($1, `grow`, [0]), [value("i32", 2)]); + +// ./test/core/multi-memory/imports4.wast:19 +let $2 = instantiate(`(module $$Mgm + (memory 0) + (memory 0) + (memory $$m (export "memory") 1) ;; initial size is 1 + (func (export "grow") (result i32) (memory.grow $$m (i32.const 1))) +)`); +register($2, `Mgm`); + +// ./test/core/multi-memory/imports4.wast:25 +register(`Mgm`, `grown-memory`); + +// ./test/core/multi-memory/imports4.wast:26 +assert_return(() => invoke(`Mgm`, `grow`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/imports4.wast:28 +let $3 = instantiate(`(module $$Mgim1 + ;; imported memory limits should match, because external memory size is 2 now + (import "test" "memory-2-4" (memory 1)) + (memory $$m (export "memory") (import "grown-memory" "memory") 2) + (memory 0) + (memory 0) + (func (export "grow") (result i32) (memory.grow $$m (i32.const 1))) +)`); +register($3, `Mgim1`); + +// ./test/core/multi-memory/imports4.wast:36 +register(`Mgim1`, `grown-imported-memory`); + +// ./test/core/multi-memory/imports4.wast:37 +assert_return(() => invoke(`Mgim1`, `grow`, []), [value("i32", 2)]); + +// ./test/core/multi-memory/imports4.wast:39 +let $4 = instantiate(`(module $$Mgim2 + ;; imported memory limits should match, because external memory size is 3 now + (import "test" "memory-2-4" (memory 1)) + (memory $$m (import "grown-imported-memory" "memory") 3) + (memory 0) + (memory 0) + (func (export "size") (result i32) (memory.size $$m)) +)`); +register($4, `Mgim2`); + +// ./test/core/multi-memory/imports4.wast:47 +assert_return(() => invoke(`Mgim2`, `size`, []), [value("i32", 3)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/linking0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/linking0.wast.js new file mode 100644 index 0000000000..64c4680a48 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/linking0.wast.js @@ -0,0 +1,68 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/linking0.wast + +// ./test/core/multi-memory/linking0.wast:1 +let $0 = instantiate(`(module $$Mt + (type (func (result i32))) + (type (func)) + + (table (export "tab") 10 funcref) + (elem (i32.const 2) $$g $$g $$g $$g) + (func $$g (result i32) (i32.const 4)) + (func (export "h") (result i32) (i32.const -4)) + + (func (export "call") (param i32) (result i32) + (call_indirect (type 0) (local.get 0)) + ) +)`); +register($0, `Mt`); + +// ./test/core/multi-memory/linking0.wast:14 +register(`Mt`, `Mt`); + +// ./test/core/multi-memory/linking0.wast:16 +assert_unlinkable( + () => instantiate(`(module + (table (import "Mt" "tab") 10 funcref) + (memory (import "spectest" "memory") 1) + (memory (import "Mt" "mem") 1) ;; does not exist + (func $$f (result i32) (i32.const 0)) + (elem (i32.const 7) $$f) + (elem (i32.const 9) $$f) + )`), + `unknown import`, +); + +// ./test/core/multi-memory/linking0.wast:27 +assert_trap(() => invoke(`Mt`, `call`, [7]), `uninitialized element`); + +// ./test/core/multi-memory/linking0.wast:30 +assert_trap( + () => instantiate(`(module + (table (import "Mt" "tab") 10 funcref) + (func $$f (result i32) (i32.const 0)) + (elem (i32.const 7) $$f) + (memory 0) + (memory $$m 1) + (memory 0) + (data $$m (i32.const 0x10000) "d") ;; out of bounds + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/linking0.wast:42 +assert_return(() => invoke(`Mt`, `call`, [7]), [value("i32", 0)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/linking1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/linking1.wast.js new file mode 100644 index 0000000000..aacf570e77 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/linking1.wast.js @@ -0,0 +1,104 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/linking1.wast + +// ./test/core/multi-memory/linking1.wast:1 +let $0 = instantiate(`(module $$Mm + (memory $$mem0 (export "mem0") 0 0) + (memory $$mem1 (export "mem1") 1 5) + (memory $$mem2 (export "mem2") 0 0) + + (data (memory 1) (i32.const 10) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09") + + (func (export "load") (param $$a i32) (result i32) + (i32.load8_u $$mem1 (local.get 0)) + ) +)`); +register($0, `Mm`); + +// ./test/core/multi-memory/linking1.wast:12 +register(`Mm`, `Mm`); + +// ./test/core/multi-memory/linking1.wast:14 +let $1 = instantiate(`(module $$Nm + (func $$loadM (import "Mm" "load") (param i32) (result i32)) + (memory (import "Mm" "mem0") 0) + + (memory $$m 1) + (data (memory 1) (i32.const 10) "\\f0\\f1\\f2\\f3\\f4\\f5") + + (export "Mm.load" (func $$loadM)) + (func (export "load") (param $$a i32) (result i32) + (i32.load8_u $$m (local.get 0)) + ) +)`); +register($1, `Nm`); + +// ./test/core/multi-memory/linking1.wast:27 +assert_return(() => invoke(`Mm`, `load`, [12]), [value("i32", 2)]); + +// ./test/core/multi-memory/linking1.wast:28 +assert_return(() => invoke(`Nm`, `Mm.load`, [12]), [value("i32", 2)]); + +// ./test/core/multi-memory/linking1.wast:29 +assert_return(() => invoke(`Nm`, `load`, [12]), [value("i32", 242)]); + +// ./test/core/multi-memory/linking1.wast:31 +let $2 = instantiate(`(module $$Om + (memory (import "Mm" "mem1") 1) + (data (i32.const 5) "\\a0\\a1\\a2\\a3\\a4\\a5\\a6\\a7") + + (func (export "load") (param $$a i32) (result i32) + (i32.load8_u (local.get 0)) + ) +)`); +register($2, `Om`); + +// ./test/core/multi-memory/linking1.wast:40 +assert_return(() => invoke(`Mm`, `load`, [12]), [value("i32", 167)]); + +// ./test/core/multi-memory/linking1.wast:41 +assert_return(() => invoke(`Nm`, `Mm.load`, [12]), [value("i32", 167)]); + +// ./test/core/multi-memory/linking1.wast:42 +assert_return(() => invoke(`Nm`, `load`, [12]), [value("i32", 242)]); + +// ./test/core/multi-memory/linking1.wast:43 +assert_return(() => invoke(`Om`, `load`, [12]), [value("i32", 167)]); + +// ./test/core/multi-memory/linking1.wast:45 +let $3 = instantiate(`(module + (memory (import "Mm" "mem1") 0) + (data (i32.const 0xffff) "a") +)`); + +// ./test/core/multi-memory/linking1.wast:50 +assert_trap( + () => instantiate(`(module + (memory (import "Mm" "mem0") 0) + (data (i32.const 0xffff) "a") + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/linking1.wast:58 +assert_trap( + () => instantiate(`(module + (memory (import "Mm" "mem1") 0) + (data (i32.const 0x10000) "a") + )`), + `out of bounds memory access`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/linking2.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/linking2.wast.js new file mode 100644 index 0000000000..8dacb51e9d --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/linking2.wast.js @@ -0,0 +1,67 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/linking2.wast + +// ./test/core/multi-memory/linking2.wast:1 +let $0 = instantiate(`(module $$Mm + (memory $$mem0 (export "mem0") 0 0) + (memory $$mem1 (export "mem1") 1 5) + (memory $$mem2 (export "mem2") 0 0) + + (data (memory 1) (i32.const 10) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09") + + (func (export "load") (param $$a i32) (result i32) + (i32.load8_u $$mem1 (local.get 0)) + ) +)`); +register($0, `Mm`); + +// ./test/core/multi-memory/linking2.wast:12 +register(`Mm`, `Mm`); + +// ./test/core/multi-memory/linking2.wast:14 +let $1 = instantiate(`(module $$Pm + (memory (import "Mm" "mem1") 1 8) + + (func (export "grow") (param $$a i32) (result i32) + (memory.grow (local.get 0)) + ) +)`); +register($1, `Pm`); + +// ./test/core/multi-memory/linking2.wast:22 +assert_return(() => invoke(`Pm`, `grow`, [0]), [value("i32", 1)]); + +// ./test/core/multi-memory/linking2.wast:23 +assert_return(() => invoke(`Pm`, `grow`, [2]), [value("i32", 1)]); + +// ./test/core/multi-memory/linking2.wast:24 +assert_return(() => invoke(`Pm`, `grow`, [0]), [value("i32", 3)]); + +// ./test/core/multi-memory/linking2.wast:25 +assert_return(() => invoke(`Pm`, `grow`, [1]), [value("i32", 3)]); + +// ./test/core/multi-memory/linking2.wast:26 +assert_return(() => invoke(`Pm`, `grow`, [1]), [value("i32", 4)]); + +// ./test/core/multi-memory/linking2.wast:27 +assert_return(() => invoke(`Pm`, `grow`, [0]), [value("i32", 5)]); + +// ./test/core/multi-memory/linking2.wast:28 +assert_return(() => invoke(`Pm`, `grow`, [1]), [value("i32", -1)]); + +// ./test/core/multi-memory/linking2.wast:29 +assert_return(() => invoke(`Pm`, `grow`, [0]), [value("i32", 5)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/linking3.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/linking3.wast.js new file mode 100644 index 0000000000..0f6d60bacd --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/linking3.wast.js @@ -0,0 +1,120 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/linking3.wast + +// ./test/core/multi-memory/linking3.wast:1 +let $0 = instantiate(`(module $$Mm + (memory $$mem0 (export "mem0") 0 0) + (memory $$mem1 (export "mem1") 5 5) + (memory $$mem2 (export "mem2") 0 0) + + (data (memory 1) (i32.const 10) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09") + + (func (export "load") (param $$a i32) (result i32) + (i32.load8_u $$mem1 (local.get 0)) + ) +)`); +register($0, `Mm`); + +// ./test/core/multi-memory/linking3.wast:12 +register(`Mm`, `Mm`); + +// ./test/core/multi-memory/linking3.wast:14 +assert_unlinkable( + () => instantiate(`(module + (func $$host (import "spectest" "print")) + (memory (import "Mm" "mem1") 1) + (table (import "Mm" "tab") 0 funcref) ;; does not exist + (data (i32.const 0) "abc") + )`), + `unknown import`, +); + +// ./test/core/multi-memory/linking3.wast:23 +assert_return(() => invoke(`Mm`, `load`, [0]), [value("i32", 0)]); + +// ./test/core/multi-memory/linking3.wast:27 +assert_trap( + () => instantiate(`(module + ;; Note: the memory is 5 pages large by the time we get here. + (memory (import "Mm" "mem1") 1) + (data (i32.const 0) "abc") + (data (i32.const 327670) "zzzzzzzzzzzzzzzzzz") ;; (partially) out of bounds + )`), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/linking3.wast:36 +assert_return(() => invoke(`Mm`, `load`, [0]), [value("i32", 97)]); + +// ./test/core/multi-memory/linking3.wast:37 +assert_return(() => invoke(`Mm`, `load`, [327670]), [value("i32", 0)]); + +// ./test/core/multi-memory/linking3.wast:39 +assert_trap( + () => instantiate(`(module + (memory (import "Mm" "mem1") 1) + (data (i32.const 0) "abc") + (table 0 funcref) + (func) + (elem (i32.const 0) 0) ;; out of bounds + )`), + `out of bounds table access`, +); + +// ./test/core/multi-memory/linking3.wast:49 +assert_return(() => invoke(`Mm`, `load`, [0]), [value("i32", 97)]); + +// ./test/core/multi-memory/linking3.wast:52 +let $1 = instantiate(`(module $$Ms + (type $$t (func (result i32))) + (memory (export "memory") 1) + (table (export "table") 1 funcref) + (func (export "get memory[0]") (type $$t) + (i32.load8_u (i32.const 0)) + ) + (func (export "get table[0]") (type $$t) + (call_indirect (type $$t) (i32.const 0)) + ) +)`); +register($1, `Ms`); + +// ./test/core/multi-memory/linking3.wast:63 +register(`Ms`, `Ms`); + +// ./test/core/multi-memory/linking3.wast:65 +assert_trap( + () => instantiate(`(module + (import "Ms" "memory" (memory 1)) + (import "Ms" "table" (table 1 funcref)) + (data (i32.const 0) "hello") + (elem (i32.const 0) $$f) + (func $$f (result i32) + (i32.const 0xdead) + ) + (func $$main + (unreachable) + ) + (start $$main) + )`), + `unreachable`, +); + +// ./test/core/multi-memory/linking3.wast:82 +assert_return(() => invoke(`Ms`, `get memory[0]`, []), [value("i32", 104)]); + +// ./test/core/multi-memory/linking3.wast:83 +assert_return(() => invoke(`Ms`, `get table[0]`, []), [value("i32", 57005)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/load.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/load.wast.js new file mode 100644 index 0000000000..79d90437b9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/load.wast.js @@ -0,0 +1,845 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/load.wast + +// ./test/core/load.wast:3 +let $0 = instantiate(`(module + (memory $$mem1 1) + (memory $$mem2 1) + + (func (export "load1") (param i32) (result i64) + (i64.load $$mem1 (local.get 0)) + ) + (func (export "load2") (param i32) (result i64) + (i64.load $$mem2 (local.get 0)) + ) + + (data (memory $$mem1) (i32.const 0) "\\01") + (data (memory $$mem2) (i32.const 0) "\\02") +)`); + +// ./test/core/load.wast:18 +assert_return(() => invoke($0, `load1`, [0]), [value("i64", 1n)]); + +// ./test/core/load.wast:19 +assert_return(() => invoke($0, `load2`, [0]), [value("i64", 2n)]); + +// ./test/core/load.wast:22 +let $1 = instantiate(`(module $$M + (memory (export "mem") 2) + + (func (export "read") (param i32) (result i32) + (i32.load8_u (local.get 0)) + ) +)`); +register($1, `M`); + +// ./test/core/load.wast:29 +register($1, `M`); + +// ./test/core/load.wast:31 +let $2 = instantiate(`(module + (memory $$mem1 (import "M" "mem") 2) + (memory $$mem2 3) + + (data (memory $$mem1) (i32.const 20) "\\01\\02\\03\\04\\05") + (data (memory $$mem2) (i32.const 50) "\\0A\\0B\\0C\\0D\\0E") + + (func (export "read1") (param i32) (result i32) + (i32.load8_u $$mem1 (local.get 0)) + ) + (func (export "read2") (param i32) (result i32) + (i32.load8_u $$mem2 (local.get 0)) + ) +)`); + +// ./test/core/load.wast:46 +assert_return(() => invoke(`M`, `read`, [20]), [value("i32", 1)]); + +// ./test/core/load.wast:47 +assert_return(() => invoke(`M`, `read`, [21]), [value("i32", 2)]); + +// ./test/core/load.wast:48 +assert_return(() => invoke(`M`, `read`, [22]), [value("i32", 3)]); + +// ./test/core/load.wast:49 +assert_return(() => invoke(`M`, `read`, [23]), [value("i32", 4)]); + +// ./test/core/load.wast:50 +assert_return(() => invoke(`M`, `read`, [24]), [value("i32", 5)]); + +// ./test/core/load.wast:52 +assert_return(() => invoke($2, `read1`, [20]), [value("i32", 1)]); + +// ./test/core/load.wast:53 +assert_return(() => invoke($2, `read1`, [21]), [value("i32", 2)]); + +// ./test/core/load.wast:54 +assert_return(() => invoke($2, `read1`, [22]), [value("i32", 3)]); + +// ./test/core/load.wast:55 +assert_return(() => invoke($2, `read1`, [23]), [value("i32", 4)]); + +// ./test/core/load.wast:56 +assert_return(() => invoke($2, `read1`, [24]), [value("i32", 5)]); + +// ./test/core/load.wast:58 +assert_return(() => invoke($2, `read2`, [50]), [value("i32", 10)]); + +// ./test/core/load.wast:59 +assert_return(() => invoke($2, `read2`, [51]), [value("i32", 11)]); + +// ./test/core/load.wast:60 +assert_return(() => invoke($2, `read2`, [52]), [value("i32", 12)]); + +// ./test/core/load.wast:61 +assert_return(() => invoke($2, `read2`, [53]), [value("i32", 13)]); + +// ./test/core/load.wast:62 +assert_return(() => invoke($2, `read2`, [54]), [value("i32", 14)]); + +// ./test/core/load.wast:67 +let $3 = instantiate(`(module + (memory 1) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (i32.load (i32.const 0)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (i32.load (i32.const 0)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (i32.load (i32.const 0)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (i32.load (i32.const 0)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (i32.load (i32.const 0)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (i32.load (i32.const 0)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (i32.load (i32.const 0))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i32) + (return (i32.load (i32.const 0))) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (i32.load (i32.const 0)) + (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (i32.load (i32.const 0))) (else (i32.const 0)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 0)) (else (i32.load (i32.const 0))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (i32.load (i32.const 0)) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (i32.load (i32.const 0)) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (i32.load (i32.const 0))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (call $$f (i32.load (i32.const 0)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (result i32) + (call $$f (i32.const 1) (i32.load (i32.const 0)) (i32.const 3)) + ) + (func (export "as-call-last") (result i32) + (call $$f (i32.const 1) (i32.const 2) (i32.load (i32.const 0))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-first") (result i32) + (call_indirect (type $$sig) + (i32.load (i32.const 0)) (i32.const 2) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.load (i32.const 0)) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.load (i32.const 0)) (i32.const 0) + ) + ) + (func (export "as-call_indirect-index") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.const 3) (i32.load (i32.const 0)) + ) + ) + + (func (export "as-local.set-value") (local i32) + (local.set 0 (i32.load (i32.const 0))) + ) + (func (export "as-local.tee-value") (result i32) (local i32) + (local.tee 0 (i32.load (i32.const 0))) + ) + (global $$g (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (local i32) + (global.set $$g (i32.load (i32.const 0))) + ) + + (func (export "as-load-address") (result i32) + (i32.load (i32.load (i32.const 0))) + ) + (func (export "as-loadN-address") (result i32) + (i32.load8_s (i32.load (i32.const 0))) + ) + + (func (export "as-store-address") + (i32.store (i32.load (i32.const 0)) (i32.const 7)) + ) + (func (export "as-store-value") + (i32.store (i32.const 2) (i32.load (i32.const 0))) + ) + + (func (export "as-storeN-address") + (i32.store8 (i32.load8_s (i32.const 0)) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i32.store16 (i32.const 2) (i32.load (i32.const 0))) + ) + + (func (export "as-unary-operand") (result i32) + (i32.clz (i32.load (i32.const 100))) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (i32.load (i32.const 100)) (i32.const 10)) + ) + (func (export "as-binary-right") (result i32) + (i32.sub (i32.const 10) (i32.load (i32.const 100))) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (i32.load (i32.const 100))) + ) + + (func (export "as-compare-left") (result i32) + (i32.le_s (i32.load (i32.const 100)) (i32.const 10)) + ) + (func (export "as-compare-right") (result i32) + (i32.ne (i32.const 10) (i32.load (i32.const 100))) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (i32.load (i32.const 100))) + ) +)`); + +// ./test/core/load.wast:225 +assert_return(() => invoke($3, `as-br-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:227 +assert_return(() => invoke($3, `as-br_if-cond`, []), []); + +// ./test/core/load.wast:228 +assert_return(() => invoke($3, `as-br_if-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:229 +assert_return(() => invoke($3, `as-br_if-value-cond`, []), [value("i32", 7)]); + +// ./test/core/load.wast:231 +assert_return(() => invoke($3, `as-br_table-index`, []), []); + +// ./test/core/load.wast:232 +assert_return(() => invoke($3, `as-br_table-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:233 +assert_return(() => invoke($3, `as-br_table-value-index`, []), [value("i32", 6)]); + +// ./test/core/load.wast:235 +assert_return(() => invoke($3, `as-return-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:237 +assert_return(() => invoke($3, `as-if-cond`, []), [value("i32", 1)]); + +// ./test/core/load.wast:238 +assert_return(() => invoke($3, `as-if-then`, []), [value("i32", 0)]); + +// ./test/core/load.wast:239 +assert_return(() => invoke($3, `as-if-else`, []), [value("i32", 0)]); + +// ./test/core/load.wast:241 +assert_return(() => invoke($3, `as-select-first`, [0, 1]), [value("i32", 0)]); + +// ./test/core/load.wast:242 +assert_return(() => invoke($3, `as-select-second`, [0, 0]), [value("i32", 0)]); + +// ./test/core/load.wast:243 +assert_return(() => invoke($3, `as-select-cond`, []), [value("i32", 1)]); + +// ./test/core/load.wast:245 +assert_return(() => invoke($3, `as-call-first`, []), [value("i32", -1)]); + +// ./test/core/load.wast:246 +assert_return(() => invoke($3, `as-call-mid`, []), [value("i32", -1)]); + +// ./test/core/load.wast:247 +assert_return(() => invoke($3, `as-call-last`, []), [value("i32", -1)]); + +// ./test/core/load.wast:249 +assert_return(() => invoke($3, `as-call_indirect-first`, []), [value("i32", -1)]); + +// ./test/core/load.wast:250 +assert_return(() => invoke($3, `as-call_indirect-mid`, []), [value("i32", -1)]); + +// ./test/core/load.wast:251 +assert_return(() => invoke($3, `as-call_indirect-last`, []), [value("i32", -1)]); + +// ./test/core/load.wast:252 +assert_return(() => invoke($3, `as-call_indirect-index`, []), [value("i32", -1)]); + +// ./test/core/load.wast:254 +assert_return(() => invoke($3, `as-local.set-value`, []), []); + +// ./test/core/load.wast:255 +assert_return(() => invoke($3, `as-local.tee-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:256 +assert_return(() => invoke($3, `as-global.set-value`, []), []); + +// ./test/core/load.wast:258 +assert_return(() => invoke($3, `as-load-address`, []), [value("i32", 0)]); + +// ./test/core/load.wast:259 +assert_return(() => invoke($3, `as-loadN-address`, []), [value("i32", 0)]); + +// ./test/core/load.wast:260 +assert_return(() => invoke($3, `as-store-address`, []), []); + +// ./test/core/load.wast:261 +assert_return(() => invoke($3, `as-store-value`, []), []); + +// ./test/core/load.wast:262 +assert_return(() => invoke($3, `as-storeN-address`, []), []); + +// ./test/core/load.wast:263 +assert_return(() => invoke($3, `as-storeN-value`, []), []); + +// ./test/core/load.wast:265 +assert_return(() => invoke($3, `as-unary-operand`, []), [value("i32", 32)]); + +// ./test/core/load.wast:267 +assert_return(() => invoke($3, `as-binary-left`, []), [value("i32", 10)]); + +// ./test/core/load.wast:268 +assert_return(() => invoke($3, `as-binary-right`, []), [value("i32", 10)]); + +// ./test/core/load.wast:270 +assert_return(() => invoke($3, `as-test-operand`, []), [value("i32", 1)]); + +// ./test/core/load.wast:272 +assert_return(() => invoke($3, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/load.wast:273 +assert_return(() => invoke($3, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/load.wast:275 +assert_return(() => invoke($3, `as-memory.grow-size`, []), [value("i32", 1)]); + +// ./test/core/load.wast:277 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:284 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load32_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:291 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load32_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:298 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:305 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load64_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:312 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load64_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:320 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i64) (i64.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:327 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i64) (i64.load64_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:334 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i64) (i64.load64_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:342 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result f32) (f32.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:349 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result f32) (f32.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:357 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result f64) (f64.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:364 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result f64) (f64.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:375 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load_i32 (i32.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:379 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load8_s_i32 (i32.load8_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:383 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load8_u_i32 (i32.load8_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:387 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load16_s_i32 (i32.load16_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:391 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load16_u_i32 (i32.load16_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:395 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load_i64 (i64.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:399 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load8_s_i64 (i64.load8_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:403 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load8_u_i64 (i64.load8_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:407 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load16_s_i64 (i64.load16_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:411 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load16_u_i64 (i64.load16_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:415 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load32_s_i64 (i64.load32_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:419 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load32_u_i64 (i64.load32_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:423 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load_f32 (f32.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:427 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load_f64 (f64.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:435 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:436 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load8_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:437 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load8_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:438 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load16_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:439 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load16_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:440 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:441 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load8_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:442 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load8_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:443 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load16_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:444 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load16_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:445 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load32_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:446 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load32_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:447 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result f32) (f32.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:448 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result f64) (f64.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:451 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty + (i32.load) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:460 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-block + (i32.const 0) + (block (i32.load) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:470 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-loop + (i32.const 0) + (loop (i32.load) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:480 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (i32.load) (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:490 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.load))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:500 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-br + (i32.const 0) + (block (br 0 (i32.load)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:510 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-br_if + (i32.const 0) + (block (br_if 0 (i32.load) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:520 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-br_table + (i32.const 0) + (block (br_table 0 (i32.load)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:530 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-return + (return (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:539 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-select + (select (i32.load) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:548 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-call + (call 1 (i32.load)) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:558 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-address-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.load) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:575 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-local.set + (local i32) + (local.set 0 (i32.load)) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:585 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-local.tee + (local i32) + (local.tee 0 (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:595 +assert_invalid( + () => instantiate(`(module + (memory 0) + (global $$x (mut i32) (i32.const 0)) + (func $$type-address-empty-in-global.set + (global.set $$x (i32.load)) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:605 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-memory.grow + (memory.grow (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:614 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-load + (i32.load (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:623 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-store + (i32.store (i32.load) (i32.const 1)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/load0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/load0.wast.js new file mode 100644 index 0000000000..67638b1111 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/load0.wast.js @@ -0,0 +1,38 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/load0.wast + +// ./test/core/multi-memory/load0.wast:3 +let $0 = instantiate(`(module + (memory $$mem1 1) + (memory $$mem2 1) + + (func (export "load1") (param i32) (result i64) + (i64.load $$mem1 (local.get 0)) + ) + (func (export "load2") (param i32) (result i64) + (i64.load $$mem2 (local.get 0)) + ) + + (data (memory $$mem1) (i32.const 0) "\\01") + (data (memory $$mem2) (i32.const 0) "\\02") +)`); + +// ./test/core/multi-memory/load0.wast:18 +assert_return(() => invoke($0, `load1`, [0]), [value("i64", 1n)]); + +// ./test/core/multi-memory/load0.wast:19 +assert_return(() => invoke($0, `load2`, [0]), [value("i64", 2n)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/load1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/load1.wast.js new file mode 100644 index 0000000000..6ba5204bc7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/load1.wast.js @@ -0,0 +1,90 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/load1.wast + +// ./test/core/multi-memory/load1.wast:1 +let $0 = instantiate(`(module $$M + (memory (export "mem") 2) + + (func (export "read") (param i32) (result i32) + (i32.load8_u (local.get 0)) + ) +)`); +register($0, `M`); + +// ./test/core/multi-memory/load1.wast:8 +register($0, `M`); + +// ./test/core/multi-memory/load1.wast:10 +let $1 = instantiate(`(module + (memory $$mem1 (import "M" "mem") 2) + (memory $$mem2 3) + + (data (memory $$mem1) (i32.const 20) "\\01\\02\\03\\04\\05") + (data (memory $$mem2) (i32.const 50) "\\0A\\0B\\0C\\0D\\0E") + + (func (export "read1") (param i32) (result i32) + (i32.load8_u $$mem1 (local.get 0)) + ) + (func (export "read2") (param i32) (result i32) + (i32.load8_u $$mem2 (local.get 0)) + ) +)`); + +// ./test/core/multi-memory/load1.wast:25 +assert_return(() => invoke(`M`, `read`, [20]), [value("i32", 1)]); + +// ./test/core/multi-memory/load1.wast:26 +assert_return(() => invoke(`M`, `read`, [21]), [value("i32", 2)]); + +// ./test/core/multi-memory/load1.wast:27 +assert_return(() => invoke(`M`, `read`, [22]), [value("i32", 3)]); + +// ./test/core/multi-memory/load1.wast:28 +assert_return(() => invoke(`M`, `read`, [23]), [value("i32", 4)]); + +// ./test/core/multi-memory/load1.wast:29 +assert_return(() => invoke(`M`, `read`, [24]), [value("i32", 5)]); + +// ./test/core/multi-memory/load1.wast:31 +assert_return(() => invoke($1, `read1`, [20]), [value("i32", 1)]); + +// ./test/core/multi-memory/load1.wast:32 +assert_return(() => invoke($1, `read1`, [21]), [value("i32", 2)]); + +// ./test/core/multi-memory/load1.wast:33 +assert_return(() => invoke($1, `read1`, [22]), [value("i32", 3)]); + +// ./test/core/multi-memory/load1.wast:34 +assert_return(() => invoke($1, `read1`, [23]), [value("i32", 4)]); + +// ./test/core/multi-memory/load1.wast:35 +assert_return(() => invoke($1, `read1`, [24]), [value("i32", 5)]); + +// ./test/core/multi-memory/load1.wast:37 +assert_return(() => invoke($1, `read2`, [50]), [value("i32", 10)]); + +// ./test/core/multi-memory/load1.wast:38 +assert_return(() => invoke($1, `read2`, [51]), [value("i32", 11)]); + +// ./test/core/multi-memory/load1.wast:39 +assert_return(() => invoke($1, `read2`, [52]), [value("i32", 12)]); + +// ./test/core/multi-memory/load1.wast:40 +assert_return(() => invoke($1, `read2`, [53]), [value("i32", 13)]); + +// ./test/core/multi-memory/load1.wast:41 +assert_return(() => invoke($1, `read2`, [54]), [value("i32", 14)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/load2.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/load2.wast.js new file mode 100644 index 0000000000..de549b845f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/load2.wast.js @@ -0,0 +1,289 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/load2.wast + +// ./test/core/multi-memory/load2.wast:1 +let $0 = instantiate(`(module + (memory 0) + (memory 0) + (memory 0) + (memory $$m 1) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (i32.load $$m (i32.const 0)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (i32.load $$m (i32.const 0)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (i32.load $$m (i32.const 0)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (i32.load $$m (i32.const 0)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (i32.load $$m (i32.const 0)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (i32.load $$m (i32.const 0)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (i32.load $$m (i32.const 0))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i32) + (return (i32.load $$m (i32.const 0))) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (i32.load $$m (i32.const 0)) + (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (i32.load $$m (i32.const 0))) (else (i32.const 0)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 0)) (else (i32.load $$m (i32.const 0))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (i32.load $$m (i32.const 0)) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (i32.load $$m (i32.const 0)) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (i32.load $$m (i32.const 0))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (call $$f (i32.load $$m (i32.const 0)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (result i32) + (call $$f (i32.const 1) (i32.load $$m (i32.const 0)) (i32.const 3)) + ) + (func (export "as-call-last") (result i32) + (call $$f (i32.const 1) (i32.const 2) (i32.load $$m (i32.const 0))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-first") (result i32) + (call_indirect (type $$sig) + (i32.load $$m (i32.const 0)) (i32.const 2) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.load $$m (i32.const 0)) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.load $$m (i32.const 0)) (i32.const 0) + ) + ) + (func (export "as-call_indirect-index") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.const 3) (i32.load $$m (i32.const 0)) + ) + ) + + (func (export "as-local.set-value") (local i32) + (local.set 0 (i32.load $$m (i32.const 0))) + ) + (func (export "as-local.tee-value") (result i32) (local i32) + (local.tee 0 (i32.load $$m (i32.const 0))) + ) + (global $$g (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (local i32) + (global.set $$g (i32.load $$m (i32.const 0))) + ) + + (func (export "as-load-address") (result i32) + (i32.load $$m (i32.load $$m (i32.const 0))) + ) + (func (export "as-loadN-address") (result i32) + (i32.load8_s $$m (i32.load $$m (i32.const 0))) + ) + + (func (export "as-store-address") + (i32.store $$m (i32.load $$m (i32.const 0)) (i32.const 7)) + ) + (func (export "as-store-value") + (i32.store $$m (i32.const 2) (i32.load $$m (i32.const 0))) + ) + + (func (export "as-storeN-address") + (i32.store8 $$m (i32.load8_s $$m (i32.const 0)) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i32.store16 $$m (i32.const 2) (i32.load $$m (i32.const 0))) + ) + + (func (export "as-unary-operand") (result i32) + (i32.clz (i32.load $$m (i32.const 100))) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (i32.load $$m (i32.const 100)) (i32.const 10)) + ) + (func (export "as-binary-right") (result i32) + (i32.sub (i32.const 10) (i32.load $$m (i32.const 100))) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (i32.load $$m (i32.const 100))) + ) + + (func (export "as-compare-left") (result i32) + (i32.le_s (i32.load $$m (i32.const 100)) (i32.const 10)) + ) + (func (export "as-compare-right") (result i32) + (i32.ne (i32.const 10) (i32.load $$m (i32.const 100))) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow $$m (i32.load $$m (i32.const 100))) + ) +)`); + +// ./test/core/multi-memory/load2.wast:162 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:164 +assert_return(() => invoke($0, `as-br_if-cond`, []), []); + +// ./test/core/multi-memory/load2.wast:165 +assert_return(() => invoke($0, `as-br_if-value`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:166 +assert_return(() => invoke($0, `as-br_if-value-cond`, []), [value("i32", 7)]); + +// ./test/core/multi-memory/load2.wast:168 +assert_return(() => invoke($0, `as-br_table-index`, []), []); + +// ./test/core/multi-memory/load2.wast:169 +assert_return(() => invoke($0, `as-br_table-value`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:170 +assert_return(() => invoke($0, `as-br_table-value-index`, []), [value("i32", 6)]); + +// ./test/core/multi-memory/load2.wast:172 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:174 +assert_return(() => invoke($0, `as-if-cond`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/load2.wast:175 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:176 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:178 +assert_return(() => invoke($0, `as-select-first`, [0, 1]), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:179 +assert_return(() => invoke($0, `as-select-second`, [0, 0]), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:180 +assert_return(() => invoke($0, `as-select-cond`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/load2.wast:182 +assert_return(() => invoke($0, `as-call-first`, []), [value("i32", -1)]); + +// ./test/core/multi-memory/load2.wast:183 +assert_return(() => invoke($0, `as-call-mid`, []), [value("i32", -1)]); + +// ./test/core/multi-memory/load2.wast:184 +assert_return(() => invoke($0, `as-call-last`, []), [value("i32", -1)]); + +// ./test/core/multi-memory/load2.wast:186 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", -1)]); + +// ./test/core/multi-memory/load2.wast:187 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", -1)]); + +// ./test/core/multi-memory/load2.wast:188 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", -1)]); + +// ./test/core/multi-memory/load2.wast:189 +assert_return(() => invoke($0, `as-call_indirect-index`, []), [value("i32", -1)]); + +// ./test/core/multi-memory/load2.wast:191 +assert_return(() => invoke($0, `as-local.set-value`, []), []); + +// ./test/core/multi-memory/load2.wast:192 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:193 +assert_return(() => invoke($0, `as-global.set-value`, []), []); + +// ./test/core/multi-memory/load2.wast:195 +assert_return(() => invoke($0, `as-load-address`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:196 +assert_return(() => invoke($0, `as-loadN-address`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/load2.wast:197 +assert_return(() => invoke($0, `as-store-address`, []), []); + +// ./test/core/multi-memory/load2.wast:198 +assert_return(() => invoke($0, `as-store-value`, []), []); + +// ./test/core/multi-memory/load2.wast:199 +assert_return(() => invoke($0, `as-storeN-address`, []), []); + +// ./test/core/multi-memory/load2.wast:200 +assert_return(() => invoke($0, `as-storeN-value`, []), []); + +// ./test/core/multi-memory/load2.wast:202 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 32)]); + +// ./test/core/multi-memory/load2.wast:204 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 10)]); + +// ./test/core/multi-memory/load2.wast:205 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i32", 10)]); + +// ./test/core/multi-memory/load2.wast:207 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/load2.wast:209 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/load2.wast:210 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/load2.wast:212 +assert_return(() => invoke($0, `as-memory.grow-size`, []), [value("i32", 1)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory-multi.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory-multi.wast.js new file mode 100644 index 0000000000..8d9503ee59 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory-multi.wast.js @@ -0,0 +1,62 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory-multi.wast + +// ./test/core/memory-multi.wast:5 +let $0 = instantiate(`(module + (memory $$mem1 1) + (memory $$mem2 1) + + (func (export "init1") (result i32) + (memory.init $$mem1 $$d (i32.const 1) (i32.const 0) (i32.const 4)) + (i32.load $$mem1 (i32.const 1)) + ) + + (func (export "init2") (result i32) + (memory.init $$mem2 $$d (i32.const 1) (i32.const 4) (i32.const 4)) + (i32.load $$mem2 (i32.const 1)) + ) + + (data $$d "\\01\\00\\00\\00" "\\02\\00\\00\\00") +)`); + +// ./test/core/memory-multi.wast:22 +assert_return(() => invoke($0, `init1`, []), [value("i32", 1)]); + +// ./test/core/memory-multi.wast:23 +assert_return(() => invoke($0, `init2`, []), [value("i32", 2)]); + +// ./test/core/memory-multi.wast:26 +let $1 = instantiate(`(module + (memory $$mem1 1) + (memory $$mem2 1) + + (func (export "fill1") (result i32) + (memory.fill $$mem1 (i32.const 1) (i32.const 0x01) (i32.const 4)) + (i32.load $$mem1 (i32.const 1)) + ) + + (func (export "fill2") (result i32) + (memory.fill $$mem2 (i32.const 1) (i32.const 0x02) (i32.const 2)) + (i32.load $$mem2 (i32.const 1)) + ) +)`); + +// ./test/core/memory-multi.wast:41 +assert_return(() => invoke($1, `fill1`, []), [value("i32", 16843009)]); + +// ./test/core/memory-multi.wast:42 +assert_return(() => invoke($1, `fill2`, []), [value("i32", 514)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory.wast.js new file mode 100644 index 0000000000..170b4f860f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory.wast.js @@ -0,0 +1,390 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory.wast + +// ./test/core/memory.wast:3 +let $0 = instantiate(`(module (memory 0))`); + +// ./test/core/memory.wast:4 +let $1 = instantiate(`(module (memory 1))`); + +// ./test/core/memory.wast:5 +let $2 = instantiate(`(module (memory 0 0))`); + +// ./test/core/memory.wast:6 +let $3 = instantiate(`(module (memory 0 1))`); + +// ./test/core/memory.wast:7 +let $4 = instantiate(`(module (memory 1 256))`); + +// ./test/core/memory.wast:8 +let $5 = instantiate(`(module (memory 0 65536))`); + +// ./test/core/memory.wast:10 +let $6 = instantiate(`(module (memory (data)) (func (export "memsize") (result i32) (memory.size)))`); + +// ./test/core/memory.wast:11 +assert_return(() => invoke($6, `memsize`, []), [value("i32", 0)]); + +// ./test/core/memory.wast:12 +let $7 = instantiate(`(module (memory (data "")) (func (export "memsize") (result i32) (memory.size)))`); + +// ./test/core/memory.wast:13 +assert_return(() => invoke($7, `memsize`, []), [value("i32", 0)]); + +// ./test/core/memory.wast:14 +let $8 = instantiate(`(module (memory (data "x")) (func (export "memsize") (result i32) (memory.size)))`); + +// ./test/core/memory.wast:15 +assert_return(() => invoke($8, `memsize`, []), [value("i32", 1)]); + +// ./test/core/memory.wast:17 +assert_invalid(() => instantiate(`(module (data (i32.const 0)))`), `unknown memory`); + +// ./test/core/memory.wast:18 +assert_invalid(() => instantiate(`(module (data (i32.const 0) ""))`), `unknown memory`); + +// ./test/core/memory.wast:19 +assert_invalid(() => instantiate(`(module (data (i32.const 0) "x"))`), `unknown memory`); + +// ./test/core/memory.wast:21 +assert_invalid( + () => instantiate(`(module (func (drop (f32.load (i32.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:25 +assert_invalid( + () => instantiate(`(module (func (f32.store (i32.const 0) (f32.const 0))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:29 +assert_invalid( + () => instantiate(`(module (func (drop (i32.load8_s (i32.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:33 +assert_invalid( + () => instantiate(`(module (func (i32.store8 (i32.const 0) (i32.const 0))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:37 +assert_invalid( + () => instantiate(`(module (func (drop (memory.size))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:41 +assert_invalid( + () => instantiate(`(module (func (drop (memory.grow (i32.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:47 +assert_invalid( + () => instantiate(`(module (memory 1 0))`), + `size minimum must not be greater than maximum`, +); + +// ./test/core/memory.wast:51 +assert_invalid( + () => instantiate(`(module (memory 65537))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:55 +assert_invalid( + () => instantiate(`(module (memory 2147483648))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:59 +assert_invalid( + () => instantiate(`(module (memory 4294967295))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:63 +assert_invalid( + () => instantiate(`(module (memory 0 65537))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:67 +assert_invalid( + () => instantiate(`(module (memory 0 2147483648))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:71 +assert_invalid( + () => instantiate(`(module (memory 0 4294967295))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:76 +assert_malformed( + () => instantiate(`(memory 0x1_0000_0000) `), + `i32 constant out of range`, +); + +// ./test/core/memory.wast:80 +assert_malformed( + () => instantiate(`(memory 0x1_0000_0000 0x1_0000_0000) `), + `i32 constant out of range`, +); + +// ./test/core/memory.wast:84 +assert_malformed( + () => instantiate(`(memory 0 0x1_0000_0000) `), + `i32 constant out of range`, +); + +// ./test/core/memory.wast:89 +let $9 = instantiate(`(module + (memory 1) + (data (i32.const 0) "ABC\\a7D") (data (i32.const 20) "WASM") + + ;; Data section + (func (export "data") (result i32) + (i32.and + (i32.and + (i32.and + (i32.eq (i32.load8_u (i32.const 0)) (i32.const 65)) + (i32.eq (i32.load8_u (i32.const 3)) (i32.const 167)) + ) + (i32.and + (i32.eq (i32.load8_u (i32.const 6)) (i32.const 0)) + (i32.eq (i32.load8_u (i32.const 19)) (i32.const 0)) + ) + ) + (i32.and + (i32.and + (i32.eq (i32.load8_u (i32.const 20)) (i32.const 87)) + (i32.eq (i32.load8_u (i32.const 23)) (i32.const 77)) + ) + (i32.and + (i32.eq (i32.load8_u (i32.const 24)) (i32.const 0)) + (i32.eq (i32.load8_u (i32.const 1023)) (i32.const 0)) + ) + ) + ) + ) + + ;; Memory cast + (func (export "cast") (result f64) + (i64.store (i32.const 8) (i64.const -12345)) + (if + (f64.eq + (f64.load (i32.const 8)) + (f64.reinterpret_i64 (i64.const -12345)) + ) + (then (return (f64.const 0))) + ) + (i64.store align=1 (i32.const 9) (i64.const 0)) + (i32.store16 align=1 (i32.const 15) (i32.const 16453)) + (f64.load align=1 (i32.const 9)) + ) + + ;; Sign and zero extending memory loads + (func (export "i32_load8_s") (param $$i i32) (result i32) + (i32.store8 (i32.const 8) (local.get $$i)) + (i32.load8_s (i32.const 8)) + ) + (func (export "i32_load8_u") (param $$i i32) (result i32) + (i32.store8 (i32.const 8) (local.get $$i)) + (i32.load8_u (i32.const 8)) + ) + (func (export "i32_load16_s") (param $$i i32) (result i32) + (i32.store16 (i32.const 8) (local.get $$i)) + (i32.load16_s (i32.const 8)) + ) + (func (export "i32_load16_u") (param $$i i32) (result i32) + (i32.store16 (i32.const 8) (local.get $$i)) + (i32.load16_u (i32.const 8)) + ) + (func (export "i64_load8_s") (param $$i i64) (result i64) + (i64.store8 (i32.const 8) (local.get $$i)) + (i64.load8_s (i32.const 8)) + ) + (func (export "i64_load8_u") (param $$i i64) (result i64) + (i64.store8 (i32.const 8) (local.get $$i)) + (i64.load8_u (i32.const 8)) + ) + (func (export "i64_load16_s") (param $$i i64) (result i64) + (i64.store16 (i32.const 8) (local.get $$i)) + (i64.load16_s (i32.const 8)) + ) + (func (export "i64_load16_u") (param $$i i64) (result i64) + (i64.store16 (i32.const 8) (local.get $$i)) + (i64.load16_u (i32.const 8)) + ) + (func (export "i64_load32_s") (param $$i i64) (result i64) + (i64.store32 (i32.const 8) (local.get $$i)) + (i64.load32_s (i32.const 8)) + ) + (func (export "i64_load32_u") (param $$i i64) (result i64) + (i64.store32 (i32.const 8) (local.get $$i)) + (i64.load32_u (i32.const 8)) + ) +)`); + +// ./test/core/memory.wast:177 +assert_return(() => invoke($9, `data`, []), [value("i32", 1)]); + +// ./test/core/memory.wast:178 +assert_return(() => invoke($9, `cast`, []), [value("f64", 42)]); + +// ./test/core/memory.wast:180 +assert_return(() => invoke($9, `i32_load8_s`, [-1]), [value("i32", -1)]); + +// ./test/core/memory.wast:181 +assert_return(() => invoke($9, `i32_load8_u`, [-1]), [value("i32", 255)]); + +// ./test/core/memory.wast:182 +assert_return(() => invoke($9, `i32_load16_s`, [-1]), [value("i32", -1)]); + +// ./test/core/memory.wast:183 +assert_return(() => invoke($9, `i32_load16_u`, [-1]), [value("i32", 65535)]); + +// ./test/core/memory.wast:185 +assert_return(() => invoke($9, `i32_load8_s`, [100]), [value("i32", 100)]); + +// ./test/core/memory.wast:186 +assert_return(() => invoke($9, `i32_load8_u`, [200]), [value("i32", 200)]); + +// ./test/core/memory.wast:187 +assert_return(() => invoke($9, `i32_load16_s`, [20000]), [value("i32", 20000)]); + +// ./test/core/memory.wast:188 +assert_return(() => invoke($9, `i32_load16_u`, [40000]), [value("i32", 40000)]); + +// ./test/core/memory.wast:190 +assert_return(() => invoke($9, `i32_load8_s`, [-19110589]), [value("i32", 67)]); + +// ./test/core/memory.wast:191 +assert_return(() => invoke($9, `i32_load8_s`, [878104047]), [value("i32", -17)]); + +// ./test/core/memory.wast:192 +assert_return(() => invoke($9, `i32_load8_u`, [-19110589]), [value("i32", 67)]); + +// ./test/core/memory.wast:193 +assert_return(() => invoke($9, `i32_load8_u`, [878104047]), [value("i32", 239)]); + +// ./test/core/memory.wast:194 +assert_return(() => invoke($9, `i32_load16_s`, [-19110589]), [value("i32", 25923)]); + +// ./test/core/memory.wast:195 +assert_return(() => invoke($9, `i32_load16_s`, [878104047]), [value("i32", -12817)]); + +// ./test/core/memory.wast:196 +assert_return(() => invoke($9, `i32_load16_u`, [-19110589]), [value("i32", 25923)]); + +// ./test/core/memory.wast:197 +assert_return(() => invoke($9, `i32_load16_u`, [878104047]), [value("i32", 52719)]); + +// ./test/core/memory.wast:199 +assert_return(() => invoke($9, `i64_load8_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory.wast:200 +assert_return(() => invoke($9, `i64_load8_u`, [-1n]), [value("i64", 255n)]); + +// ./test/core/memory.wast:201 +assert_return(() => invoke($9, `i64_load16_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory.wast:202 +assert_return(() => invoke($9, `i64_load16_u`, [-1n]), [value("i64", 65535n)]); + +// ./test/core/memory.wast:203 +assert_return(() => invoke($9, `i64_load32_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory.wast:204 +assert_return(() => invoke($9, `i64_load32_u`, [-1n]), [value("i64", 4294967295n)]); + +// ./test/core/memory.wast:206 +assert_return(() => invoke($9, `i64_load8_s`, [100n]), [value("i64", 100n)]); + +// ./test/core/memory.wast:207 +assert_return(() => invoke($9, `i64_load8_u`, [200n]), [value("i64", 200n)]); + +// ./test/core/memory.wast:208 +assert_return(() => invoke($9, `i64_load16_s`, [20000n]), [value("i64", 20000n)]); + +// ./test/core/memory.wast:209 +assert_return(() => invoke($9, `i64_load16_u`, [40000n]), [value("i64", 40000n)]); + +// ./test/core/memory.wast:210 +assert_return(() => invoke($9, `i64_load32_s`, [20000n]), [value("i64", 20000n)]); + +// ./test/core/memory.wast:211 +assert_return(() => invoke($9, `i64_load32_u`, [40000n]), [value("i64", 40000n)]); + +// ./test/core/memory.wast:213 +assert_return(() => invoke($9, `i64_load8_s`, [-81985529755441853n]), [value("i64", 67n)]); + +// ./test/core/memory.wast:214 +assert_return(() => invoke($9, `i64_load8_s`, [3771275841602506223n]), [value("i64", -17n)]); + +// ./test/core/memory.wast:215 +assert_return(() => invoke($9, `i64_load8_u`, [-81985529755441853n]), [value("i64", 67n)]); + +// ./test/core/memory.wast:216 +assert_return(() => invoke($9, `i64_load8_u`, [3771275841602506223n]), [value("i64", 239n)]); + +// ./test/core/memory.wast:217 +assert_return(() => invoke($9, `i64_load16_s`, [-81985529755441853n]), [value("i64", 25923n)]); + +// ./test/core/memory.wast:218 +assert_return(() => invoke($9, `i64_load16_s`, [3771275841602506223n]), [value("i64", -12817n)]); + +// ./test/core/memory.wast:219 +assert_return(() => invoke($9, `i64_load16_u`, [-81985529755441853n]), [value("i64", 25923n)]); + +// ./test/core/memory.wast:220 +assert_return(() => invoke($9, `i64_load16_u`, [3771275841602506223n]), [value("i64", 52719n)]); + +// ./test/core/memory.wast:221 +assert_return(() => invoke($9, `i64_load32_s`, [-81985529755441853n]), [value("i64", 1446274371n)]); + +// ./test/core/memory.wast:222 +assert_return(() => invoke($9, `i64_load32_s`, [3771275841602506223n]), [value("i64", -1732588049n)]); + +// ./test/core/memory.wast:223 +assert_return(() => invoke($9, `i64_load32_u`, [-81985529755441853n]), [value("i64", 1446274371n)]); + +// ./test/core/memory.wast:224 +assert_return(() => invoke($9, `i64_load32_u`, [3771275841602506223n]), [value("i64", 2562379247n)]); + +// ./test/core/memory.wast:228 +assert_malformed( + () => instantiate(`(memory $$foo 1) (memory $$foo 1) `), + `duplicate memory`, +); + +// ./test/core/memory.wast:232 +assert_malformed( + () => instantiate(`(import "" "" (memory $$foo 1)) (memory $$foo 1) `), + `duplicate memory`, +); + +// ./test/core/memory.wast:236 +assert_malformed( + () => instantiate(`(import "" "" (memory $$foo 1)) (import "" "" (memory $$foo 1)) `), + `duplicate memory`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_copy0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_copy0.wast.js new file mode 100644 index 0000000000..abd99c0597 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_copy0.wast.js @@ -0,0 +1,117 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_copy0.wast + +// ./test/core/multi-memory/memory_copy0.wast:2 +let $0 = instantiate(`(module + (memory $$mem0 (data "\\ff\\11\\44\\ee")) + (memory $$mem1 (data "\\ee\\22\\55\\ff")) + (memory $$mem2 (data "\\dd\\33\\66\\00")) + (memory $$mem3 (data "\\aa\\bb\\cc\\dd")) + + (func (export "copy") (param i32 i32 i32) + (memory.copy $$mem3 $$mem3 + (local.get 0) + (local.get 1) + (local.get 2))) + + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u $$mem3 (local.get 0))) +)`); + +// ./test/core/multi-memory/memory_copy0.wast:19 +invoke($0, `copy`, [10, 0, 4]); + +// ./test/core/multi-memory/memory_copy0.wast:21 +assert_return(() => invoke($0, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_copy0.wast:22 +assert_return(() => invoke($0, `load8_u`, [10]), [value("i32", 170)]); + +// ./test/core/multi-memory/memory_copy0.wast:23 +assert_return(() => invoke($0, `load8_u`, [11]), [value("i32", 187)]); + +// ./test/core/multi-memory/memory_copy0.wast:24 +assert_return(() => invoke($0, `load8_u`, [12]), [value("i32", 204)]); + +// ./test/core/multi-memory/memory_copy0.wast:25 +assert_return(() => invoke($0, `load8_u`, [13]), [value("i32", 221)]); + +// ./test/core/multi-memory/memory_copy0.wast:26 +assert_return(() => invoke($0, `load8_u`, [14]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_copy0.wast:29 +invoke($0, `copy`, [8, 10, 4]); + +// ./test/core/multi-memory/memory_copy0.wast:30 +assert_return(() => invoke($0, `load8_u`, [8]), [value("i32", 170)]); + +// ./test/core/multi-memory/memory_copy0.wast:31 +assert_return(() => invoke($0, `load8_u`, [9]), [value("i32", 187)]); + +// ./test/core/multi-memory/memory_copy0.wast:32 +assert_return(() => invoke($0, `load8_u`, [10]), [value("i32", 204)]); + +// ./test/core/multi-memory/memory_copy0.wast:33 +assert_return(() => invoke($0, `load8_u`, [11]), [value("i32", 221)]); + +// ./test/core/multi-memory/memory_copy0.wast:34 +assert_return(() => invoke($0, `load8_u`, [12]), [value("i32", 204)]); + +// ./test/core/multi-memory/memory_copy0.wast:35 +assert_return(() => invoke($0, `load8_u`, [13]), [value("i32", 221)]); + +// ./test/core/multi-memory/memory_copy0.wast:38 +invoke($0, `copy`, [10, 7, 6]); + +// ./test/core/multi-memory/memory_copy0.wast:39 +assert_return(() => invoke($0, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_copy0.wast:40 +assert_return(() => invoke($0, `load8_u`, [11]), [value("i32", 170)]); + +// ./test/core/multi-memory/memory_copy0.wast:41 +assert_return(() => invoke($0, `load8_u`, [12]), [value("i32", 187)]); + +// ./test/core/multi-memory/memory_copy0.wast:42 +assert_return(() => invoke($0, `load8_u`, [13]), [value("i32", 204)]); + +// ./test/core/multi-memory/memory_copy0.wast:43 +assert_return(() => invoke($0, `load8_u`, [14]), [value("i32", 221)]); + +// ./test/core/multi-memory/memory_copy0.wast:44 +assert_return(() => invoke($0, `load8_u`, [15]), [value("i32", 204)]); + +// ./test/core/multi-memory/memory_copy0.wast:45 +assert_return(() => invoke($0, `load8_u`, [16]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_copy0.wast:48 +invoke($0, `copy`, [65280, 0, 256]); + +// ./test/core/multi-memory/memory_copy0.wast:49 +invoke($0, `copy`, [65024, 65280, 256]); + +// ./test/core/multi-memory/memory_copy0.wast:52 +invoke($0, `copy`, [65536, 0, 0]); + +// ./test/core/multi-memory/memory_copy0.wast:53 +invoke($0, `copy`, [0, 65536, 0]); + +// ./test/core/multi-memory/memory_copy0.wast:56 +assert_trap(() => invoke($0, `copy`, [65537, 0, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_copy0.wast:58 +assert_trap(() => invoke($0, `copy`, [0, 65537, 0]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_fill0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_fill0.wast.js new file mode 100644 index 0000000000..2bc3eef0c8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_fill0.wast.js @@ -0,0 +1,77 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_fill0.wast + +// ./test/core/multi-memory/memory_fill0.wast:2 +let $0 = instantiate(`(module + (memory $$mem0 0) + (memory $$mem1 0) + (memory $$mem2 1) + + (func (export "fill") (param i32 i32 i32) + (memory.fill $$mem2 + (local.get 0) + (local.get 1) + (local.get 2))) + + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u $$mem2 (local.get 0))) +)`); + +// ./test/core/multi-memory/memory_fill0.wast:18 +invoke($0, `fill`, [1, 255, 3]); + +// ./test/core/multi-memory/memory_fill0.wast:19 +assert_return(() => invoke($0, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_fill0.wast:20 +assert_return(() => invoke($0, `load8_u`, [1]), [value("i32", 255)]); + +// ./test/core/multi-memory/memory_fill0.wast:21 +assert_return(() => invoke($0, `load8_u`, [2]), [value("i32", 255)]); + +// ./test/core/multi-memory/memory_fill0.wast:22 +assert_return(() => invoke($0, `load8_u`, [3]), [value("i32", 255)]); + +// ./test/core/multi-memory/memory_fill0.wast:23 +assert_return(() => invoke($0, `load8_u`, [4]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_fill0.wast:26 +invoke($0, `fill`, [0, 48042, 2]); + +// ./test/core/multi-memory/memory_fill0.wast:27 +assert_return(() => invoke($0, `load8_u`, [0]), [value("i32", 170)]); + +// ./test/core/multi-memory/memory_fill0.wast:28 +assert_return(() => invoke($0, `load8_u`, [1]), [value("i32", 170)]); + +// ./test/core/multi-memory/memory_fill0.wast:31 +invoke($0, `fill`, [0, 0, 65536]); + +// ./test/core/multi-memory/memory_fill0.wast:34 +assert_trap(() => invoke($0, `fill`, [65280, 1, 257]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_fill0.wast:36 +assert_return(() => invoke($0, `load8_u`, [65280]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_fill0.wast:37 +assert_return(() => invoke($0, `load8_u`, [65535]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_fill0.wast:40 +invoke($0, `fill`, [65536, 0, 0]); + +// ./test/core/multi-memory/memory_fill0.wast:43 +assert_trap(() => invoke($0, `fill`, [65537, 0, 0]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_grow.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_grow.wast.js new file mode 100644 index 0000000000..6cef74d6ba --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_grow.wast.js @@ -0,0 +1,773 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_grow.wast + +// ./test/core/memory_grow.wast:1 +let $0 = instantiate(`(module + (memory 0) + (func (export "grow") (param i32) (result i32) (memory.grow (local.get 0))) +)`); + +// ./test/core/memory_grow.wast:6 +assert_return(() => invoke($0, `grow`, [0]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:7 +assert_return(() => invoke($0, `grow`, [1]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:8 +assert_return(() => invoke($0, `grow`, [0]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:9 +assert_return(() => invoke($0, `grow`, [2]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:10 +assert_return(() => invoke($0, `grow`, [800]), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:11 +assert_return(() => invoke($0, `grow`, [65536]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:12 +assert_return(() => invoke($0, `grow`, [64736]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:13 +assert_return(() => invoke($0, `grow`, [1]), [value("i32", 803)]); + +// ./test/core/memory_grow.wast:15 +let $1 = instantiate(`(module + (memory 0 10) + (func (export "grow") (param i32) (result i32) (memory.grow (local.get 0))) +)`); + +// ./test/core/memory_grow.wast:20 +assert_return(() => invoke($1, `grow`, [0]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:21 +assert_return(() => invoke($1, `grow`, [1]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:22 +assert_return(() => invoke($1, `grow`, [1]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:23 +assert_return(() => invoke($1, `grow`, [2]), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:24 +assert_return(() => invoke($1, `grow`, [6]), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:25 +assert_return(() => invoke($1, `grow`, [0]), [value("i32", 10)]); + +// ./test/core/memory_grow.wast:26 +assert_return(() => invoke($1, `grow`, [1]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:27 +assert_return(() => invoke($1, `grow`, [65536]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:32 +let $2 = instantiate(`(module + (memory 1) + (func (export "grow") (param i32) (result i32) + (memory.grow (local.get 0)) + ) + (func (export "check-memory-zero") (param i32 i32) (result i32) + (local i32) + (local.set 2 (i32.const 1)) + (block + (loop + (local.set 2 (i32.load8_u (local.get 0))) + (br_if 1 (i32.ne (local.get 2) (i32.const 0))) + (br_if 1 (i32.ge_u (local.get 0) (local.get 1))) + (local.set 0 (i32.add (local.get 0) (i32.const 1))) + (br_if 0 (i32.le_u (local.get 0) (local.get 1))) + ) + ) + (local.get 2) + ) +)`); + +// ./test/core/memory_grow.wast:53 +assert_return(() => invoke($2, `check-memory-zero`, [0, 65535]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:54 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:55 +assert_return(() => invoke($2, `check-memory-zero`, [65536, 131071]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:56 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:57 +assert_return(() => invoke($2, `check-memory-zero`, [131072, 196607]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:58 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:59 +assert_return(() => invoke($2, `check-memory-zero`, [196608, 262143]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:60 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:61 +assert_return(() => invoke($2, `check-memory-zero`, [262144, 327679]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:62 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:63 +assert_return(() => invoke($2, `check-memory-zero`, [327680, 393215]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:68 +let $3 = instantiate(`(module + (memory 0) + + (func (export "load_at_zero") (result i32) (i32.load (i32.const 0))) + (func (export "store_at_zero") (i32.store (i32.const 0) (i32.const 2))) + + (func (export "load_at_page_size") (result i32) + (i32.load (i32.const 0x10000)) + ) + (func (export "store_at_page_size") + (i32.store (i32.const 0x10000) (i32.const 3)) + ) + + (func (export "grow") (param i32) (result i32) (memory.grow (local.get 0))) + (func (export "size") (result i32) (memory.size)) +)`); + +// ./test/core/memory_grow.wast:85 +assert_return(() => invoke($3, `size`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:86 +assert_trap(() => invoke($3, `store_at_zero`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:87 +assert_trap(() => invoke($3, `load_at_zero`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:88 +assert_trap(() => invoke($3, `store_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:89 +assert_trap(() => invoke($3, `load_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:90 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:91 +assert_return(() => invoke($3, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:92 +assert_return(() => invoke($3, `load_at_zero`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:93 +assert_return(() => invoke($3, `store_at_zero`, []), []); + +// ./test/core/memory_grow.wast:94 +assert_return(() => invoke($3, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:95 +assert_trap(() => invoke($3, `store_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:96 +assert_trap(() => invoke($3, `load_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:97 +assert_return(() => invoke($3, `grow`, [4]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:98 +assert_return(() => invoke($3, `size`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:99 +assert_return(() => invoke($3, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:100 +assert_return(() => invoke($3, `store_at_zero`, []), []); + +// ./test/core/memory_grow.wast:101 +assert_return(() => invoke($3, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:102 +assert_return(() => invoke($3, `load_at_page_size`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:103 +assert_return(() => invoke($3, `store_at_page_size`, []), []); + +// ./test/core/memory_grow.wast:104 +assert_return(() => invoke($3, `load_at_page_size`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:109 +let $4 = instantiate(`(module + (memory (export "mem1") 2 5) + (memory (export "mem2") 0) +)`); + +// ./test/core/memory_grow.wast:113 +register($4, `M`); + +// ./test/core/memory_grow.wast:115 +let $5 = instantiate(`(module + (memory $$mem1 (import "M" "mem1") 1 6) + (memory $$mem2 (import "M" "mem2") 0) + (memory $$mem3 3) + (memory $$mem4 4 5) + + (func (export "size1") (result i32) (memory.size $$mem1)) + (func (export "size2") (result i32) (memory.size $$mem2)) + (func (export "size3") (result i32) (memory.size $$mem3)) + (func (export "size4") (result i32) (memory.size $$mem4)) + + (func (export "grow1") (param i32) (result i32) + (memory.grow $$mem1 (local.get 0)) + ) + (func (export "grow2") (param i32) (result i32) + (memory.grow $$mem2 (local.get 0)) + ) + (func (export "grow3") (param i32) (result i32) + (memory.grow $$mem3 (local.get 0)) + ) + (func (export "grow4") (param i32) (result i32) + (memory.grow $$mem4 (local.get 0)) + ) +)`); + +// ./test/core/memory_grow.wast:140 +assert_return(() => invoke($5, `size1`, []), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:141 +assert_return(() => invoke($5, `size2`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:142 +assert_return(() => invoke($5, `size3`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:143 +assert_return(() => invoke($5, `size4`, []), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:145 +assert_return(() => invoke($5, `grow1`, [1]), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:146 +assert_return(() => invoke($5, `size1`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:147 +assert_return(() => invoke($5, `size2`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:148 +assert_return(() => invoke($5, `size3`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:149 +assert_return(() => invoke($5, `size4`, []), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:151 +assert_return(() => invoke($5, `grow1`, [2]), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:152 +assert_return(() => invoke($5, `size1`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:153 +assert_return(() => invoke($5, `size2`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:154 +assert_return(() => invoke($5, `size3`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:155 +assert_return(() => invoke($5, `size4`, []), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:157 +assert_return(() => invoke($5, `grow1`, [1]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:158 +assert_return(() => invoke($5, `size1`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:159 +assert_return(() => invoke($5, `size2`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:160 +assert_return(() => invoke($5, `size3`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:161 +assert_return(() => invoke($5, `size4`, []), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:163 +assert_return(() => invoke($5, `grow2`, [10]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:164 +assert_return(() => invoke($5, `size1`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:165 +assert_return(() => invoke($5, `size2`, []), [value("i32", 10)]); + +// ./test/core/memory_grow.wast:166 +assert_return(() => invoke($5, `size3`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:167 +assert_return(() => invoke($5, `size4`, []), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:169 +assert_return(() => invoke($5, `grow3`, [268435456]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:170 +assert_return(() => invoke($5, `size1`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:171 +assert_return(() => invoke($5, `size2`, []), [value("i32", 10)]); + +// ./test/core/memory_grow.wast:172 +assert_return(() => invoke($5, `size3`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:173 +assert_return(() => invoke($5, `size4`, []), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:175 +assert_return(() => invoke($5, `grow3`, [3]), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:176 +assert_return(() => invoke($5, `size1`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:177 +assert_return(() => invoke($5, `size2`, []), [value("i32", 10)]); + +// ./test/core/memory_grow.wast:178 +assert_return(() => invoke($5, `size3`, []), [value("i32", 6)]); + +// ./test/core/memory_grow.wast:179 +assert_return(() => invoke($5, `size4`, []), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:181 +assert_return(() => invoke($5, `grow4`, [1]), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:182 +assert_return(() => invoke($5, `grow4`, [1]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:183 +assert_return(() => invoke($5, `size1`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:184 +assert_return(() => invoke($5, `size2`, []), [value("i32", 10)]); + +// ./test/core/memory_grow.wast:185 +assert_return(() => invoke($5, `size3`, []), [value("i32", 6)]); + +// ./test/core/memory_grow.wast:186 +assert_return(() => invoke($5, `size4`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:191 +let $6 = instantiate(`(module + (memory 1) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (memory.grow (i32.const 0)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (memory.grow (i32.const 0)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (memory.grow (i32.const 0)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (memory.grow (i32.const 0)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (memory.grow (i32.const 0)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (memory.grow (i32.const 0)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (memory.grow (i32.const 0))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i32) + (return (memory.grow (i32.const 0))) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (memory.grow (i32.const 0)) + (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (memory.grow (i32.const 0))) (else (i32.const 0)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 0)) (else (memory.grow (i32.const 0))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (memory.grow (i32.const 0)) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (memory.grow (i32.const 0)) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (memory.grow (i32.const 0))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (call $$f (memory.grow (i32.const 0)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (result i32) + (call $$f (i32.const 1) (memory.grow (i32.const 0)) (i32.const 3)) + ) + (func (export "as-call-last") (result i32) + (call $$f (i32.const 1) (i32.const 2) (memory.grow (i32.const 0))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-first") (result i32) + (call_indirect (type $$sig) + (memory.grow (i32.const 0)) (i32.const 2) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (memory.grow (i32.const 0)) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (memory.grow (i32.const 0)) (i32.const 0) + ) + ) + (func (export "as-call_indirect-index") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.const 3) (memory.grow (i32.const 0)) + ) + ) + + (func (export "as-local.set-value") (local i32) + (local.set 0 (memory.grow (i32.const 0))) + ) + (func (export "as-local.tee-value") (result i32) (local i32) + (local.tee 0 (memory.grow (i32.const 0))) + ) + (global $$g (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (local i32) + (global.set $$g (memory.grow (i32.const 0))) + ) + + (func (export "as-load-address") (result i32) + (i32.load (memory.grow (i32.const 0))) + ) + (func (export "as-loadN-address") (result i32) + (i32.load8_s (memory.grow (i32.const 0))) + ) + + (func (export "as-store-address") + (i32.store (memory.grow (i32.const 0)) (i32.const 7)) + ) + (func (export "as-store-value") + (i32.store (i32.const 2) (memory.grow (i32.const 0))) + ) + + (func (export "as-storeN-address") + (i32.store8 (memory.grow (i32.const 0)) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i32.store16 (i32.const 2) (memory.grow (i32.const 0))) + ) + + (func (export "as-unary-operand") (result i32) + (i32.clz (memory.grow (i32.const 0))) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (memory.grow (i32.const 0)) (i32.const 10)) + ) + (func (export "as-binary-right") (result i32) + (i32.sub (i32.const 10) (memory.grow (i32.const 0))) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (memory.grow (i32.const 0))) + ) + + (func (export "as-compare-left") (result i32) + (i32.le_s (memory.grow (i32.const 0)) (i32.const 10)) + ) + (func (export "as-compare-right") (result i32) + (i32.ne (i32.const 10) (memory.grow (i32.const 0))) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (memory.grow (i32.const 0))) + ) +)`); + +// ./test/core/memory_grow.wast:349 +assert_return(() => invoke($6, `as-br-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:351 +assert_return(() => invoke($6, `as-br_if-cond`, []), []); + +// ./test/core/memory_grow.wast:352 +assert_return(() => invoke($6, `as-br_if-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:353 +assert_return(() => invoke($6, `as-br_if-value-cond`, []), [value("i32", 6)]); + +// ./test/core/memory_grow.wast:355 +assert_return(() => invoke($6, `as-br_table-index`, []), []); + +// ./test/core/memory_grow.wast:356 +assert_return(() => invoke($6, `as-br_table-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:357 +assert_return(() => invoke($6, `as-br_table-value-index`, []), [value("i32", 6)]); + +// ./test/core/memory_grow.wast:359 +assert_return(() => invoke($6, `as-return-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:361 +assert_return(() => invoke($6, `as-if-cond`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:362 +assert_return(() => invoke($6, `as-if-then`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:363 +assert_return(() => invoke($6, `as-if-else`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:365 +assert_return(() => invoke($6, `as-select-first`, [0, 1]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:366 +assert_return(() => invoke($6, `as-select-second`, [0, 0]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:367 +assert_return(() => invoke($6, `as-select-cond`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:369 +assert_return(() => invoke($6, `as-call-first`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:370 +assert_return(() => invoke($6, `as-call-mid`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:371 +assert_return(() => invoke($6, `as-call-last`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:373 +assert_return(() => invoke($6, `as-call_indirect-first`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:374 +assert_return(() => invoke($6, `as-call_indirect-mid`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:375 +assert_return(() => invoke($6, `as-call_indirect-last`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:376 +assert_trap(() => invoke($6, `as-call_indirect-index`, []), `undefined element`); + +// ./test/core/memory_grow.wast:378 +assert_return(() => invoke($6, `as-local.set-value`, []), []); + +// ./test/core/memory_grow.wast:379 +assert_return(() => invoke($6, `as-local.tee-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:380 +assert_return(() => invoke($6, `as-global.set-value`, []), []); + +// ./test/core/memory_grow.wast:382 +assert_return(() => invoke($6, `as-load-address`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:383 +assert_return(() => invoke($6, `as-loadN-address`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:384 +assert_return(() => invoke($6, `as-store-address`, []), []); + +// ./test/core/memory_grow.wast:385 +assert_return(() => invoke($6, `as-store-value`, []), []); + +// ./test/core/memory_grow.wast:386 +assert_return(() => invoke($6, `as-storeN-address`, []), []); + +// ./test/core/memory_grow.wast:387 +assert_return(() => invoke($6, `as-storeN-value`, []), []); + +// ./test/core/memory_grow.wast:389 +assert_return(() => invoke($6, `as-unary-operand`, []), [value("i32", 31)]); + +// ./test/core/memory_grow.wast:391 +assert_return(() => invoke($6, `as-binary-left`, []), [value("i32", 11)]); + +// ./test/core/memory_grow.wast:392 +assert_return(() => invoke($6, `as-binary-right`, []), [value("i32", 9)]); + +// ./test/core/memory_grow.wast:394 +assert_return(() => invoke($6, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:396 +assert_return(() => invoke($6, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:397 +assert_return(() => invoke($6, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:399 +assert_return(() => invoke($6, `as-memory.grow-size`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:404 +let $7 = instantiate(`(module + (memory $$mem1 1) + (memory $$mem2 2) + + (func (export "grow1") (param i32) (result i32) + (memory.grow $$mem1 (local.get 0)) + ) + (func (export "grow2") (param i32) (result i32) + (memory.grow $$mem2 (local.get 0)) + ) + + (func (export "size1") (result i32) (memory.size $$mem1)) + (func (export "size2") (result i32) (memory.size $$mem2)) +)`); + +// ./test/core/memory_grow.wast:419 +assert_return(() => invoke($7, `size1`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:420 +assert_return(() => invoke($7, `size2`, []), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:421 +assert_return(() => invoke($7, `grow1`, [3]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:422 +assert_return(() => invoke($7, `grow1`, [4]), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:423 +assert_return(() => invoke($7, `grow1`, [1]), [value("i32", 8)]); + +// ./test/core/memory_grow.wast:424 +assert_return(() => invoke($7, `grow2`, [1]), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:425 +assert_return(() => invoke($7, `grow2`, [1]), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:430 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-i32-vs-f32 (result i32) + (memory.grow (f32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:439 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-size-empty-vs-i32 (result i32) + (memory.grow) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:448 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-size-empty-vs-i32-in-block (result i32) + (i32.const 0) + (block (result i32) (memory.grow)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:458 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-size-empty-vs-i32-in-loop (result i32) + (i32.const 0) + (loop (result i32) (memory.grow)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:468 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-size-empty-vs-i32-in-then (result i32) + (i32.const 0) (i32.const 0) + (if (result i32) (then (memory.grow))) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:479 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-empty + (memory.grow (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:488 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-size-f32-vs-i32 (result i32) + (memory.grow (f32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:498 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-empty + (memory.grow (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:507 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-f32 (result f32) + (memory.grow (i32.const 0)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_init0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_init0.wast.js new file mode 100644 index 0000000000..17eb4cc186 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_init0.wast.js @@ -0,0 +1,70 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_init0.wast + +// ./test/core/multi-memory/memory_init0.wast:2 +let $0 = instantiate(`(module + (memory $$mem0 0) + (memory $$mem1 0) + (memory $$mem2 1) + (memory $$mem3 0) + (data $$mem2 "\\aa\\bb\\cc\\dd") + + (func (export "init") (param i32 i32 i32) + (memory.init $$mem2 0 + (local.get 0) + (local.get 1) + (local.get 2))) + + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u $$mem2 (local.get 0))) +)`); + +// ./test/core/multi-memory/memory_init0.wast:19 +invoke($0, `init`, [0, 1, 2]); + +// ./test/core/multi-memory/memory_init0.wast:20 +assert_return(() => invoke($0, `load8_u`, [0]), [value("i32", 187)]); + +// ./test/core/multi-memory/memory_init0.wast:21 +assert_return(() => invoke($0, `load8_u`, [1]), [value("i32", 204)]); + +// ./test/core/multi-memory/memory_init0.wast:22 +assert_return(() => invoke($0, `load8_u`, [2]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_init0.wast:25 +invoke($0, `init`, [65532, 0, 4]); + +// ./test/core/multi-memory/memory_init0.wast:28 +assert_trap(() => invoke($0, `init`, [65534, 0, 3]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_init0.wast:30 +assert_return(() => invoke($0, `load8_u`, [65534]), [value("i32", 204)]); + +// ./test/core/multi-memory/memory_init0.wast:31 +assert_return(() => invoke($0, `load8_u`, [65535]), [value("i32", 221)]); + +// ./test/core/multi-memory/memory_init0.wast:34 +invoke($0, `init`, [65536, 0, 0]); + +// ./test/core/multi-memory/memory_init0.wast:35 +invoke($0, `init`, [0, 4, 0]); + +// ./test/core/multi-memory/memory_init0.wast:38 +assert_trap(() => invoke($0, `init`, [65537, 0, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_init0.wast:40 +assert_trap(() => invoke($0, `init`, [0, 5, 0]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size.wast.js new file mode 100644 index 0000000000..60d2bd604f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size.wast.js @@ -0,0 +1,208 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_size.wast + +// ./test/core/memory_size.wast:1 +let $0 = instantiate(`(module + (memory 0) + (func (export "size") (result i32) (memory.size)) + (func (export "grow") (param $$sz i32) (drop (memory.grow (local.get $$sz)))) +)`); + +// ./test/core/memory_size.wast:7 +assert_return(() => invoke($0, `size`, []), [value("i32", 0)]); + +// ./test/core/memory_size.wast:8 +assert_return(() => invoke($0, `grow`, [1]), []); + +// ./test/core/memory_size.wast:9 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:10 +assert_return(() => invoke($0, `grow`, [4]), []); + +// ./test/core/memory_size.wast:11 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/memory_size.wast:12 +assert_return(() => invoke($0, `grow`, [0]), []); + +// ./test/core/memory_size.wast:13 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/memory_size.wast:15 +let $1 = instantiate(`(module + (memory 1) + (func (export "size") (result i32) (memory.size)) + (func (export "grow") (param $$sz i32) (drop (memory.grow (local.get $$sz)))) +)`); + +// ./test/core/memory_size.wast:21 +assert_return(() => invoke($1, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:22 +assert_return(() => invoke($1, `grow`, [1]), []); + +// ./test/core/memory_size.wast:23 +assert_return(() => invoke($1, `size`, []), [value("i32", 2)]); + +// ./test/core/memory_size.wast:24 +assert_return(() => invoke($1, `grow`, [4]), []); + +// ./test/core/memory_size.wast:25 +assert_return(() => invoke($1, `size`, []), [value("i32", 6)]); + +// ./test/core/memory_size.wast:26 +assert_return(() => invoke($1, `grow`, [0]), []); + +// ./test/core/memory_size.wast:27 +assert_return(() => invoke($1, `size`, []), [value("i32", 6)]); + +// ./test/core/memory_size.wast:29 +let $2 = instantiate(`(module + (memory 0 2) + (func (export "size") (result i32) (memory.size)) + (func (export "grow") (param $$sz i32) (drop (memory.grow (local.get $$sz)))) +)`); + +// ./test/core/memory_size.wast:35 +assert_return(() => invoke($2, `size`, []), [value("i32", 0)]); + +// ./test/core/memory_size.wast:36 +assert_return(() => invoke($2, `grow`, [3]), []); + +// ./test/core/memory_size.wast:37 +assert_return(() => invoke($2, `size`, []), [value("i32", 0)]); + +// ./test/core/memory_size.wast:38 +assert_return(() => invoke($2, `grow`, [1]), []); + +// ./test/core/memory_size.wast:39 +assert_return(() => invoke($2, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:40 +assert_return(() => invoke($2, `grow`, [0]), []); + +// ./test/core/memory_size.wast:41 +assert_return(() => invoke($2, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:42 +assert_return(() => invoke($2, `grow`, [4]), []); + +// ./test/core/memory_size.wast:43 +assert_return(() => invoke($2, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:44 +assert_return(() => invoke($2, `grow`, [1]), []); + +// ./test/core/memory_size.wast:45 +assert_return(() => invoke($2, `size`, []), [value("i32", 2)]); + +// ./test/core/memory_size.wast:47 +let $3 = instantiate(`(module + (memory 3 8) + (func (export "size") (result i32) (memory.size)) + (func (export "grow") (param $$sz i32) (drop (memory.grow (local.get $$sz)))) +)`); + +// ./test/core/memory_size.wast:53 +assert_return(() => invoke($3, `size`, []), [value("i32", 3)]); + +// ./test/core/memory_size.wast:54 +assert_return(() => invoke($3, `grow`, [1]), []); + +// ./test/core/memory_size.wast:55 +assert_return(() => invoke($3, `size`, []), [value("i32", 4)]); + +// ./test/core/memory_size.wast:56 +assert_return(() => invoke($3, `grow`, [3]), []); + +// ./test/core/memory_size.wast:57 +assert_return(() => invoke($3, `size`, []), [value("i32", 7)]); + +// ./test/core/memory_size.wast:58 +assert_return(() => invoke($3, `grow`, [0]), []); + +// ./test/core/memory_size.wast:59 +assert_return(() => invoke($3, `size`, []), [value("i32", 7)]); + +// ./test/core/memory_size.wast:60 +assert_return(() => invoke($3, `grow`, [2]), []); + +// ./test/core/memory_size.wast:61 +assert_return(() => invoke($3, `size`, []), [value("i32", 7)]); + +// ./test/core/memory_size.wast:62 +assert_return(() => invoke($3, `grow`, [1]), []); + +// ./test/core/memory_size.wast:63 +assert_return(() => invoke($3, `size`, []), [value("i32", 8)]); + +// ./test/core/memory_size.wast:68 +let $4 = instantiate(`(module + (memory (export "mem1") 2 4) + (memory (export "mem2") 0) +)`); + +// ./test/core/memory_size.wast:72 +register($4, `M`); + +// ./test/core/memory_size.wast:74 +let $5 = instantiate(`(module + (memory $$mem1 (import "M" "mem1") 1 5) + (memory $$mem2 (import "M" "mem2") 0) + (memory $$mem3 3) + (memory $$mem4 4 5) + + (func (export "size1") (result i32) (memory.size $$mem1)) + (func (export "size2") (result i32) (memory.size $$mem2)) + (func (export "size3") (result i32) (memory.size $$mem3)) + (func (export "size4") (result i32) (memory.size $$mem4)) +)`); + +// ./test/core/memory_size.wast:86 +assert_return(() => invoke($5, `size1`, []), [value("i32", 2)]); + +// ./test/core/memory_size.wast:87 +assert_return(() => invoke($5, `size2`, []), [value("i32", 0)]); + +// ./test/core/memory_size.wast:88 +assert_return(() => invoke($5, `size3`, []), [value("i32", 3)]); + +// ./test/core/memory_size.wast:89 +assert_return(() => invoke($5, `size4`, []), [value("i32", 4)]); + +// ./test/core/memory_size.wast:94 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-empty + (memory.size) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_size.wast:103 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-f32 (result f32) + (memory.size) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size0.wast.js new file mode 100644 index 0000000000..78995555a1 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size0.wast.js @@ -0,0 +1,49 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_size0.wast + +// ./test/core/multi-memory/memory_size0.wast:1 +let $0 = instantiate(`(module + (memory 0) + (memory 0) + (memory 0) + (memory 0) + (memory $$m 0) + + (func (export "size") (result i32) (memory.size $$m)) + (func (export "grow") (param $$sz i32) (drop (memory.grow $$m (local.get $$sz)))) +)`); + +// ./test/core/multi-memory/memory_size0.wast:12 +assert_return(() => invoke($0, `size`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size0.wast:13 +assert_return(() => invoke($0, `grow`, [1]), []); + +// ./test/core/multi-memory/memory_size0.wast:14 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/memory_size0.wast:15 +assert_return(() => invoke($0, `grow`, [4]), []); + +// ./test/core/multi-memory/memory_size0.wast:16 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/multi-memory/memory_size0.wast:17 +assert_return(() => invoke($0, `grow`, [0]), []); + +// ./test/core/multi-memory/memory_size0.wast:18 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size1.wast.js new file mode 100644 index 0000000000..fa14876f09 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size1.wast.js @@ -0,0 +1,73 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_size1.wast + +// ./test/core/multi-memory/memory_size1.wast:1 +let $0 = instantiate(`(module + (memory 0) + (memory 0) + (memory $$n 0) + (memory 0) + (memory $$m 0) + + (func (export "size") (result i32) (memory.size $$m)) + (func (export "grow") (param $$sz i32) (drop (memory.grow $$m (local.get $$sz)))) + + (func (export "sizen") (result i32) (memory.size $$n)) + (func (export "grown") (param $$sz i32) (drop (memory.grow $$n (local.get $$sz)))) +)`); + +// ./test/core/multi-memory/memory_size1.wast:15 +assert_return(() => invoke($0, `size`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size1.wast:16 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size1.wast:17 +assert_return(() => invoke($0, `grow`, [1]), []); + +// ./test/core/multi-memory/memory_size1.wast:18 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/memory_size1.wast:19 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size1.wast:20 +assert_return(() => invoke($0, `grow`, [4]), []); + +// ./test/core/multi-memory/memory_size1.wast:21 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/multi-memory/memory_size1.wast:22 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size1.wast:23 +assert_return(() => invoke($0, `grow`, [0]), []); + +// ./test/core/multi-memory/memory_size1.wast:24 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/multi-memory/memory_size1.wast:25 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size1.wast:27 +assert_return(() => invoke($0, `grown`, [1]), []); + +// ./test/core/multi-memory/memory_size1.wast:28 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/multi-memory/memory_size1.wast:29 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 1)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size2.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size2.wast.js new file mode 100644 index 0000000000..8feeadb2ee --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size2.wast.js @@ -0,0 +1,90 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_size2.wast + +// ./test/core/multi-memory/memory_size2.wast:1 +let $0 = instantiate(`(module + (memory 0 0) + (memory 0 0) + (memory $$n 0 0) + (memory $$m 0 2) + + (func (export "size") (result i32) (memory.size $$m)) + (func (export "grow") (param $$sz i32) (drop (memory.grow $$m (local.get $$sz)))) + + (func (export "sizen") (result i32) (memory.size $$n)) + (func (export "grown") (param $$sz i32) (drop (memory.grow $$n (local.get $$sz)))) +)`); + +// ./test/core/multi-memory/memory_size2.wast:14 +assert_return(() => invoke($0, `size`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:15 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:16 +assert_return(() => invoke($0, `grow`, [3]), []); + +// ./test/core/multi-memory/memory_size2.wast:17 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:18 +assert_return(() => invoke($0, `size`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:19 +assert_return(() => invoke($0, `grow`, [1]), []); + +// ./test/core/multi-memory/memory_size2.wast:20 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:21 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/memory_size2.wast:22 +assert_return(() => invoke($0, `grow`, [0]), []); + +// ./test/core/multi-memory/memory_size2.wast:23 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:24 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/memory_size2.wast:25 +assert_return(() => invoke($0, `grow`, [4]), []); + +// ./test/core/multi-memory/memory_size2.wast:26 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:27 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/multi-memory/memory_size2.wast:28 +assert_return(() => invoke($0, `grow`, [1]), []); + +// ./test/core/multi-memory/memory_size2.wast:29 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:30 +assert_return(() => invoke($0, `size`, []), [value("i32", 2)]); + +// ./test/core/multi-memory/memory_size2.wast:32 +assert_return(() => invoke($0, `grown`, [1]), []); + +// ./test/core/multi-memory/memory_size2.wast:33 +assert_return(() => invoke($0, `sizen`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_size2.wast:34 +assert_return(() => invoke($0, `size`, []), [value("i32", 2)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size3.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size3.wast.js new file mode 100644 index 0000000000..f30a09f73a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_size3.wast.js @@ -0,0 +1,43 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_size3.wast + +// ./test/core/multi-memory/memory_size3.wast:3 +assert_invalid( + () => instantiate(`(module + (memory 0) + (memory $$m 1) + (memory 0) + (func $$type-result-i32-vs-empty + (memory.size $$m) + ) + )`), + `type mismatch`, +); + +// ./test/core/multi-memory/memory_size3.wast:14 +assert_invalid( + () => instantiate(`(module + (memory 0) + (memory 0) + (memory 0) + (memory $$m 1) + (func $$type-result-i32-vs-f32 (result f32) + (memory.size $$m) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_trap0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_trap0.wast.js new file mode 100644 index 0000000000..1739a5bcb6 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_trap0.wast.js @@ -0,0 +1,78 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_trap0.wast + +// ./test/core/multi-memory/memory_trap0.wast:1 +let $0 = instantiate(`(module + (memory 0) + (memory 0) + (memory $$m 1) + + (func $$addr_limit (result i32) + (i32.mul (memory.size $$m) (i32.const 0x10000)) + ) + + (func (export "store") (param $$i i32) (param $$v i32) + (i32.store $$m (i32.add (call $$addr_limit) (local.get $$i)) (local.get $$v)) + ) + + (func (export "load") (param $$i i32) (result i32) + (i32.load $$m (i32.add (call $$addr_limit) (local.get $$i))) + ) + + (func (export "memory.grow") (param i32) (result i32) + (memory.grow $$m (local.get 0)) + ) +)`); + +// ./test/core/multi-memory/memory_trap0.wast:23 +assert_return(() => invoke($0, `store`, [-4, 42]), []); + +// ./test/core/multi-memory/memory_trap0.wast:24 +assert_return(() => invoke($0, `load`, [-4]), [value("i32", 42)]); + +// ./test/core/multi-memory/memory_trap0.wast:25 +assert_trap(() => invoke($0, `store`, [-3, 305419896]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:26 +assert_trap(() => invoke($0, `load`, [-3]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:27 +assert_trap(() => invoke($0, `store`, [-2, 13]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:28 +assert_trap(() => invoke($0, `load`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:29 +assert_trap(() => invoke($0, `store`, [-1, 13]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:30 +assert_trap(() => invoke($0, `load`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:31 +assert_trap(() => invoke($0, `store`, [0, 13]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:32 +assert_trap(() => invoke($0, `load`, [0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:33 +assert_trap(() => invoke($0, `store`, [-2147483648, 13]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:34 +assert_trap(() => invoke($0, `load`, [-2147483648]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap0.wast:35 +assert_return(() => invoke($0, `memory.grow`, [65537]), [value("i32", -1)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/memory_trap1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_trap1.wast.js new file mode 100644 index 0000000000..ef68a1c0ec --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/memory_trap1.wast.js @@ -0,0 +1,602 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/memory_trap1.wast + +// ./test/core/multi-memory/memory_trap1.wast:1 +let $0 = instantiate(`(module + (memory 0) + (memory 0) + (memory $$m 1) + (data (memory 2) (i32.const 0) "abcdefgh") + (data (memory 2) (i32.const 0xfff8) "abcdefgh") + + (func (export "i32.load") (param $$a i32) (result i32) + (i32.load $$m (local.get $$a)) + ) + (func (export "i64.load") (param $$a i32) (result i64) + (i64.load $$m (local.get $$a)) + ) + (func (export "f32.load") (param $$a i32) (result f32) + (f32.load $$m (local.get $$a)) + ) + (func (export "f64.load") (param $$a i32) (result f64) + (f64.load $$m (local.get $$a)) + ) + (func (export "i32.load8_s") (param $$a i32) (result i32) + (i32.load8_s $$m (local.get $$a)) + ) + (func (export "i32.load8_u") (param $$a i32) (result i32) + (i32.load8_u $$m (local.get $$a)) + ) + (func (export "i32.load16_s") (param $$a i32) (result i32) + (i32.load16_s $$m (local.get $$a)) + ) + (func (export "i32.load16_u") (param $$a i32) (result i32) + (i32.load16_u $$m (local.get $$a)) + ) + (func (export "i64.load8_s") (param $$a i32) (result i64) + (i64.load8_s $$m (local.get $$a)) + ) + (func (export "i64.load8_u") (param $$a i32) (result i64) + (i64.load8_u $$m (local.get $$a)) + ) + (func (export "i64.load16_s") (param $$a i32) (result i64) + (i64.load16_s $$m (local.get $$a)) + ) + (func (export "i64.load16_u") (param $$a i32) (result i64) + (i64.load16_u $$m (local.get $$a)) + ) + (func (export "i64.load32_s") (param $$a i32) (result i64) + (i64.load32_s $$m (local.get $$a)) + ) + (func (export "i64.load32_u") (param $$a i32) (result i64) + (i64.load32_u $$m (local.get $$a)) + ) + (func (export "i32.store") (param $$a i32) (param $$v i32) + (i32.store $$m (local.get $$a) (local.get $$v)) + ) + (func (export "i64.store") (param $$a i32) (param $$v i64) + (i64.store $$m (local.get $$a) (local.get $$v)) + ) + (func (export "f32.store") (param $$a i32) (param $$v f32) + (f32.store $$m (local.get $$a) (local.get $$v)) + ) + (func (export "f64.store") (param $$a i32) (param $$v f64) + (f64.store $$m (local.get $$a) (local.get $$v)) + ) + (func (export "i32.store8") (param $$a i32) (param $$v i32) + (i32.store8 $$m (local.get $$a) (local.get $$v)) + ) + (func (export "i32.store16") (param $$a i32) (param $$v i32) + (i32.store16 $$m (local.get $$a) (local.get $$v)) + ) + (func (export "i64.store8") (param $$a i32) (param $$v i64) + (i64.store8 $$m (local.get $$a) (local.get $$v)) + ) + (func (export "i64.store16") (param $$a i32) (param $$v i64) + (i64.store16 $$m (local.get $$a) (local.get $$v)) + ) + (func (export "i64.store32") (param $$a i32) (param $$v i64) + (i64.store32 $$m (local.get $$a) (local.get $$v)) + ) +)`); + +// ./test/core/multi-memory/memory_trap1.wast:79 +assert_trap(() => invoke($0, `i32.store`, [65536, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:80 +assert_trap(() => invoke($0, `i32.store`, [65535, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:81 +assert_trap(() => invoke($0, `i32.store`, [65534, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:82 +assert_trap(() => invoke($0, `i32.store`, [65533, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:83 +assert_trap(() => invoke($0, `i32.store`, [-1, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:84 +assert_trap(() => invoke($0, `i32.store`, [-2, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:85 +assert_trap(() => invoke($0, `i32.store`, [-3, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:86 +assert_trap(() => invoke($0, `i32.store`, [-4, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:87 +assert_trap(() => invoke($0, `i64.store`, [65536, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:88 +assert_trap(() => invoke($0, `i64.store`, [65535, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:89 +assert_trap(() => invoke($0, `i64.store`, [65534, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:90 +assert_trap(() => invoke($0, `i64.store`, [65533, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:91 +assert_trap(() => invoke($0, `i64.store`, [65532, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:92 +assert_trap(() => invoke($0, `i64.store`, [65531, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:93 +assert_trap(() => invoke($0, `i64.store`, [65530, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:94 +assert_trap(() => invoke($0, `i64.store`, [65529, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:95 +assert_trap(() => invoke($0, `i64.store`, [-1, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:96 +assert_trap(() => invoke($0, `i64.store`, [-2, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:97 +assert_trap(() => invoke($0, `i64.store`, [-3, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:98 +assert_trap(() => invoke($0, `i64.store`, [-4, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:99 +assert_trap(() => invoke($0, `i64.store`, [-5, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:100 +assert_trap(() => invoke($0, `i64.store`, [-6, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:101 +assert_trap(() => invoke($0, `i64.store`, [-7, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:102 +assert_trap(() => invoke($0, `i64.store`, [-8, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:103 +assert_trap(() => invoke($0, `f32.store`, [65536, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:104 +assert_trap(() => invoke($0, `f32.store`, [65535, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:105 +assert_trap(() => invoke($0, `f32.store`, [65534, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:106 +assert_trap(() => invoke($0, `f32.store`, [65533, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:107 +assert_trap(() => invoke($0, `f32.store`, [-1, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:108 +assert_trap(() => invoke($0, `f32.store`, [-2, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:109 +assert_trap(() => invoke($0, `f32.store`, [-3, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:110 +assert_trap(() => invoke($0, `f32.store`, [-4, value("f32", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:111 +assert_trap(() => invoke($0, `f64.store`, [65536, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:112 +assert_trap(() => invoke($0, `f64.store`, [65535, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:113 +assert_trap(() => invoke($0, `f64.store`, [65534, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:114 +assert_trap(() => invoke($0, `f64.store`, [65533, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:115 +assert_trap(() => invoke($0, `f64.store`, [65532, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:116 +assert_trap(() => invoke($0, `f64.store`, [65531, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:117 +assert_trap(() => invoke($0, `f64.store`, [65530, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:118 +assert_trap(() => invoke($0, `f64.store`, [65529, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:119 +assert_trap(() => invoke($0, `f64.store`, [-1, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:120 +assert_trap(() => invoke($0, `f64.store`, [-2, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:121 +assert_trap(() => invoke($0, `f64.store`, [-3, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:122 +assert_trap(() => invoke($0, `f64.store`, [-4, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:123 +assert_trap(() => invoke($0, `f64.store`, [-5, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:124 +assert_trap(() => invoke($0, `f64.store`, [-6, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:125 +assert_trap(() => invoke($0, `f64.store`, [-7, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:126 +assert_trap(() => invoke($0, `f64.store`, [-8, value("f64", 0)]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:127 +assert_trap(() => invoke($0, `i32.store8`, [65536, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:128 +assert_trap(() => invoke($0, `i32.store8`, [-1, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:129 +assert_trap(() => invoke($0, `i32.store16`, [65536, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:130 +assert_trap(() => invoke($0, `i32.store16`, [65535, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:131 +assert_trap(() => invoke($0, `i32.store16`, [-1, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:132 +assert_trap(() => invoke($0, `i32.store16`, [-2, 0]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:133 +assert_trap(() => invoke($0, `i64.store8`, [65536, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:134 +assert_trap(() => invoke($0, `i64.store8`, [-1, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:135 +assert_trap(() => invoke($0, `i64.store16`, [65536, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:136 +assert_trap(() => invoke($0, `i64.store16`, [65535, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:137 +assert_trap(() => invoke($0, `i64.store16`, [-1, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:138 +assert_trap(() => invoke($0, `i64.store16`, [-2, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:139 +assert_trap(() => invoke($0, `i64.store32`, [65536, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:140 +assert_trap(() => invoke($0, `i64.store32`, [65535, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:141 +assert_trap(() => invoke($0, `i64.store32`, [65534, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:142 +assert_trap(() => invoke($0, `i64.store32`, [65533, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:143 +assert_trap(() => invoke($0, `i64.store32`, [-1, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:144 +assert_trap(() => invoke($0, `i64.store32`, [-2, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:145 +assert_trap(() => invoke($0, `i64.store32`, [-3, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:146 +assert_trap(() => invoke($0, `i64.store32`, [-4, 0n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:147 +assert_trap(() => invoke($0, `i32.load`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:148 +assert_trap(() => invoke($0, `i32.load`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:149 +assert_trap(() => invoke($0, `i32.load`, [65534]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:150 +assert_trap(() => invoke($0, `i32.load`, [65533]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:151 +assert_trap(() => invoke($0, `i32.load`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:152 +assert_trap(() => invoke($0, `i32.load`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:153 +assert_trap(() => invoke($0, `i32.load`, [-3]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:154 +assert_trap(() => invoke($0, `i32.load`, [-4]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:155 +assert_trap(() => invoke($0, `i64.load`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:156 +assert_trap(() => invoke($0, `i64.load`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:157 +assert_trap(() => invoke($0, `i64.load`, [65534]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:158 +assert_trap(() => invoke($0, `i64.load`, [65533]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:159 +assert_trap(() => invoke($0, `i64.load`, [65532]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:160 +assert_trap(() => invoke($0, `i64.load`, [65531]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:161 +assert_trap(() => invoke($0, `i64.load`, [65530]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:162 +assert_trap(() => invoke($0, `i64.load`, [65529]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:163 +assert_trap(() => invoke($0, `i64.load`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:164 +assert_trap(() => invoke($0, `i64.load`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:165 +assert_trap(() => invoke($0, `i64.load`, [-3]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:166 +assert_trap(() => invoke($0, `i64.load`, [-4]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:167 +assert_trap(() => invoke($0, `i64.load`, [-5]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:168 +assert_trap(() => invoke($0, `i64.load`, [-6]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:169 +assert_trap(() => invoke($0, `i64.load`, [-7]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:170 +assert_trap(() => invoke($0, `i64.load`, [-8]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:171 +assert_trap(() => invoke($0, `f32.load`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:172 +assert_trap(() => invoke($0, `f32.load`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:173 +assert_trap(() => invoke($0, `f32.load`, [65534]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:174 +assert_trap(() => invoke($0, `f32.load`, [65533]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:175 +assert_trap(() => invoke($0, `f32.load`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:176 +assert_trap(() => invoke($0, `f32.load`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:177 +assert_trap(() => invoke($0, `f32.load`, [-3]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:178 +assert_trap(() => invoke($0, `f32.load`, [-4]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:179 +assert_trap(() => invoke($0, `f64.load`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:180 +assert_trap(() => invoke($0, `f64.load`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:181 +assert_trap(() => invoke($0, `f64.load`, [65534]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:182 +assert_trap(() => invoke($0, `f64.load`, [65533]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:183 +assert_trap(() => invoke($0, `f64.load`, [65532]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:184 +assert_trap(() => invoke($0, `f64.load`, [65531]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:185 +assert_trap(() => invoke($0, `f64.load`, [65530]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:186 +assert_trap(() => invoke($0, `f64.load`, [65529]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:187 +assert_trap(() => invoke($0, `f64.load`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:188 +assert_trap(() => invoke($0, `f64.load`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:189 +assert_trap(() => invoke($0, `f64.load`, [-3]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:190 +assert_trap(() => invoke($0, `f64.load`, [-4]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:191 +assert_trap(() => invoke($0, `f64.load`, [-5]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:192 +assert_trap(() => invoke($0, `f64.load`, [-6]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:193 +assert_trap(() => invoke($0, `f64.load`, [-7]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:194 +assert_trap(() => invoke($0, `f64.load`, [-8]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:195 +assert_trap(() => invoke($0, `i32.load8_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:196 +assert_trap(() => invoke($0, `i32.load8_s`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:197 +assert_trap(() => invoke($0, `i32.load8_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:198 +assert_trap(() => invoke($0, `i32.load8_u`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:199 +assert_trap(() => invoke($0, `i32.load16_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:200 +assert_trap(() => invoke($0, `i32.load16_s`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:201 +assert_trap(() => invoke($0, `i32.load16_s`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:202 +assert_trap(() => invoke($0, `i32.load16_s`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:203 +assert_trap(() => invoke($0, `i32.load16_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:204 +assert_trap(() => invoke($0, `i32.load16_u`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:205 +assert_trap(() => invoke($0, `i32.load16_u`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:206 +assert_trap(() => invoke($0, `i32.load16_u`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:207 +assert_trap(() => invoke($0, `i64.load8_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:208 +assert_trap(() => invoke($0, `i64.load8_s`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:209 +assert_trap(() => invoke($0, `i64.load8_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:210 +assert_trap(() => invoke($0, `i64.load8_u`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:211 +assert_trap(() => invoke($0, `i64.load16_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:212 +assert_trap(() => invoke($0, `i64.load16_s`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:213 +assert_trap(() => invoke($0, `i64.load16_s`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:214 +assert_trap(() => invoke($0, `i64.load16_s`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:215 +assert_trap(() => invoke($0, `i64.load16_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:216 +assert_trap(() => invoke($0, `i64.load16_u`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:217 +assert_trap(() => invoke($0, `i64.load16_u`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:218 +assert_trap(() => invoke($0, `i64.load16_u`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:219 +assert_trap(() => invoke($0, `i64.load32_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:220 +assert_trap(() => invoke($0, `i64.load32_s`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:221 +assert_trap(() => invoke($0, `i64.load32_s`, [65534]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:222 +assert_trap(() => invoke($0, `i64.load32_s`, [65533]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:223 +assert_trap(() => invoke($0, `i64.load32_s`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:224 +assert_trap(() => invoke($0, `i64.load32_s`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:225 +assert_trap(() => invoke($0, `i64.load32_s`, [-3]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:226 +assert_trap(() => invoke($0, `i64.load32_s`, [-4]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:227 +assert_trap(() => invoke($0, `i64.load32_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:228 +assert_trap(() => invoke($0, `i64.load32_u`, [65535]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:229 +assert_trap(() => invoke($0, `i64.load32_u`, [65534]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:230 +assert_trap(() => invoke($0, `i64.load32_u`, [65533]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:231 +assert_trap(() => invoke($0, `i64.load32_u`, [-1]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:232 +assert_trap(() => invoke($0, `i64.load32_u`, [-2]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:233 +assert_trap(() => invoke($0, `i64.load32_u`, [-3]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:234 +assert_trap(() => invoke($0, `i64.load32_u`, [-4]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:237 +assert_return(() => invoke($0, `i64.load`, [65528]), [value("i64", 7523094288207667809n)]); + +// ./test/core/multi-memory/memory_trap1.wast:238 +assert_return(() => invoke($0, `i64.load`, [0]), [value("i64", 7523094288207667809n)]); + +// ./test/core/multi-memory/memory_trap1.wast:242 +assert_return(() => invoke($0, `i64.store`, [65528, 0n]), []); + +// ./test/core/multi-memory/memory_trap1.wast:243 +assert_trap(() => invoke($0, `i32.store`, [65533, 305419896]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:244 +assert_return(() => invoke($0, `i32.load`, [65532]), [value("i32", 0)]); + +// ./test/core/multi-memory/memory_trap1.wast:245 +assert_trap(() => invoke($0, `i64.store`, [65529, 1311768467294899695n]), `out of bounds memory access`); + +// ./test/core/multi-memory/memory_trap1.wast:246 +assert_return(() => invoke($0, `i64.load`, [65528]), [value("i64", 0n)]); + +// ./test/core/multi-memory/memory_trap1.wast:247 +assert_trap( + () => invoke($0, `f32.store`, [65533, value("f32", 305419900)]), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/memory_trap1.wast:248 +assert_return(() => invoke($0, `f32.load`, [65532]), [value("f32", 0)]); + +// ./test/core/multi-memory/memory_trap1.wast:249 +assert_trap( + () => invoke($0, `f64.store`, [65529, value("f64", 1311768467294899700)]), + `out of bounds memory access`, +); + +// ./test/core/multi-memory/memory_trap1.wast:250 +assert_return(() => invoke($0, `f64.load`, [65528]), [value("f64", 0)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/simd_load.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/simd_load.wast.js new file mode 100644 index 0000000000..e609e1fe58 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/simd_load.wast.js @@ -0,0 +1,295 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load.wast + +// ./test/core/simd/simd_load.wast:3 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "v128.load") (result v128) + (v128.load (i32.const 0)) + ) +)`); + +// ./test/core/simd/simd_load.wast:11 +assert_return( + () => invoke($0, `v128.load`, []), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_load.wast:12 +assert_return( + () => invoke($0, `v128.load`, []), + [i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e])], +); + +// ./test/core/simd/simd_load.wast:13 +assert_return(() => invoke($0, `v128.load`, []), [i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c])]); + +// ./test/core/simd/simd_load.wast:18 +let $1 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "as-i8x16_extract_lane_s-value/0") (result i32) + (i8x16.extract_lane_s 0 (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:24 +assert_return(() => invoke($1, `as-i8x16_extract_lane_s-value/0`, []), [value("i32", 0)]); + +// ./test/core/simd/simd_load.wast:26 +let $2 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "as-i8x16.eq-operand") (result v128) + (i8x16.eq (v128.load offset=0 (i32.const 0)) (v128.load offset=16 (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:32 +assert_return(() => invoke($2, `as-i8x16.eq-operand`, []), [i32x4([0xffffffff, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load.wast:34 +let $3 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "as-v128.not-operand") (result v128) + (v128.not (v128.load (i32.const 0))) + ) + (func (export "as-i8x16.all_true-operand") (result i32) + (i8x16.all_true (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:43 +assert_return( + () => invoke($3, `as-v128.not-operand`, []), + [i32x4([0xfcfdfeff, 0xf8f9fafb, 0xf4f5f6f7, 0xf0f1f2f3])], +); + +// ./test/core/simd/simd_load.wast:44 +assert_return(() => invoke($3, `as-i8x16.all_true-operand`, []), [value("i32", 0)]); + +// ./test/core/simd/simd_load.wast:46 +let $4 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA") + (data (offset (i32.const 16)) "\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB") + (data (offset (i32.const 32)) "\\F0\\F0\\F0\\F0\\FF\\FF\\FF\\FF\\00\\00\\00\\00\\FF\\00\\FF\\00") + (func (export "as-v128.bitselect-operand") (result v128) + (v128.bitselect (v128.load (i32.const 0)) (v128.load (i32.const 16)) (v128.load (i32.const 32))) + ) +)`); + +// ./test/core/simd/simd_load.wast:54 +assert_return( + () => invoke($4, `as-v128.bitselect-operand`, []), + [i32x4([0xabababab, 0xaaaaaaaa, 0xbbbbbbbb, 0xbbaabbaa])], +); + +// ./test/core/simd/simd_load.wast:56 +let $5 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA") + (func (export "as-i8x16.shl-operand") (result v128) + (i8x16.shl (v128.load (i32.const 0)) (i32.const 1)) + ) +)`); + +// ./test/core/simd/simd_load.wast:62 +assert_return( + () => invoke($5, `as-i8x16.shl-operand`, []), + [i32x4([0x54545454, 0x54545454, 0x54545454, 0x54545454])], +); + +// ./test/core/simd/simd_load.wast:64 +let $6 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00") + (data (offset (i32.const 16)) "\\03\\00\\00\\00\\03\\00\\00\\00\\03\\00\\00\\00\\03\\00\\00\\00") + (func (export "as-add/sub-operand") (result v128) + ;; 2 2 2 2 + 3 3 3 3 = 5 5 5 5 + ;; 5 5 5 5 - 3 3 3 3 = 2 2 2 2 + (i8x16.sub + (i8x16.add (v128.load (i32.const 0)) (v128.load (i32.const 16))) + (v128.load (i32.const 16)) + ) + ) +)`); + +// ./test/core/simd/simd_load.wast:76 +assert_return(() => invoke($6, `as-add/sub-operand`, []), [i32x4([0x2, 0x2, 0x2, 0x2])]); + +// ./test/core/simd/simd_load.wast:78 +let $7 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\00\\00\\00\\43\\00\\00\\80\\3f\\66\\66\\e6\\3f\\00\\00\\80\\bf") ;; 128 1.0 1.8 -1 + (data (offset (i32.const 16)) "\\00\\00\\00\\40\\00\\00\\00\\40\\00\\00\\00\\40\\00\\00\\00\\40") ;; 2.0 2.0 2.0 2.0 + (func (export "as-f32x4.mul-operand") (result v128) + (f32x4.mul (v128.load (i32.const 0)) (v128.load (i32.const 16))) + ) +)`); + +// ./test/core/simd/simd_load.wast:85 +assert_return( + () => invoke($7, `as-f32x4.mul-operand`, []), + [ + new F32x4Pattern( + value("f32", 256), + value("f32", 2), + value("f32", 3.6), + value("f32", -2), + ), + ], +); + +// ./test/core/simd/simd_load.wast:87 +let $8 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff") ;; 1111 ... + (func (export "as-f32x4.abs-operand") (result v128) + (f32x4.abs (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:93 +assert_return( + () => invoke($8, `as-f32x4.abs-operand`, []), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_load.wast:95 +let $9 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA") + (data (offset (i32.const 16)) "\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00") + (func (export "as-f32x4.min-operand") (result v128) + (f32x4.min (v128.load (i32.const 0)) (v128.load offset=16 (i32.const 1))) + ) +)`); + +// ./test/core/simd/simd_load.wast:102 +assert_return( + () => invoke($9, `as-f32x4.min-operand`, []), + [i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa])], +); + +// ./test/core/simd/simd_load.wast:104 +let $10 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\00\\00\\00\\43\\00\\00\\80\\3f\\66\\66\\e6\\3f\\00\\00\\80\\bf") ;; 128 1.0 1.8 -1 + (func (export "as-i32x4.trunc_sat_f32x4_s-operand") (result v128) + (i32x4.trunc_sat_f32x4_s (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:110 +assert_return( + () => invoke($10, `as-i32x4.trunc_sat_f32x4_s-operand`, []), + [i32x4([0x80, 0x1, 0x1, 0xffffffff])], +); + +// ./test/core/simd/simd_load.wast:112 +let $11 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00") + (func (export "as-f32x4.convert_i32x4_u-operand") (result v128) + (f32x4.convert_i32x4_u (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:118 +assert_return( + () => invoke($11, `as-f32x4.convert_i32x4_u-operand`, []), + [ + new F32x4Pattern( + value("f32", 2), + value("f32", 2), + value("f32", 2), + value("f32", 2), + ), + ], +); + +// ./test/core/simd/simd_load.wast:120 +let $12 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\64\\65\\66\\67\\68\\69\\6a\\6b\\6c\\6d\\6e\\6f\\70\\71\\72\\73") ;; 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 + (data (offset (i32.const 16)) "\\0f\\0e\\0d\\0c\\0b\\0a\\09\\08\\07\\06\\05\\04\\03\\02\\01\\00") ;; 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 + (func (export "as-i8x16.swizzle-operand") (result v128) + (i8x16.swizzle (v128.load (i32.const 0)) (v128.load offset=15 (i32.const 1))) + ) +)`); + +// ./test/core/simd/simd_load.wast:127 +assert_return( + () => invoke($12, `as-i8x16.swizzle-operand`, []), + [ + i8x16([0x73, 0x72, 0x71, 0x70, 0x6f, 0x6e, 0x6d, 0x6c, 0x6b, 0x6a, 0x69, 0x68, 0x67, 0x66, 0x65, 0x64]), + ], +); + +// ./test/core/simd/simd_load.wast:129 +let $13 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "as-br-value") (result v128) + (block (result v128) (br 0 (v128.load (i32.const 0)))) + ) +)`); + +// ./test/core/simd/simd_load.wast:135 +assert_return(() => invoke($13, `as-br-value`, []), [i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c])]); + +// ./test/core/simd/simd_load.wast:140 +assert_malformed( + () => instantiate(`(memory 1) (func (local v128) (drop (v128.load8 (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load.wast:147 +assert_malformed( + () => instantiate(`(memory 1) (func (local v128) (drop (v128.load16 (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load.wast:154 +assert_malformed( + () => instantiate(`(memory 1) (func (local v128) (drop (v128.load32 (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load.wast:165 +assert_invalid( + () => instantiate(`(module (memory 1) (func (local v128) (drop (v128.load (f32.const 0)))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load.wast:169 +assert_invalid( + () => instantiate(`(module (memory 1) (func (local v128) (block (br_if 0 (v128.load (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load.wast:173 +assert_invalid( + () => instantiate(`(module (memory 1) (func (local v128) (v128.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load.wast:181 +assert_invalid( + () => instantiate(`(module (memory 1) (func (drop (v128.load (local.get 2)))))`), + `unknown local 2`, +); + +// ./test/core/simd/simd_load.wast:185 +assert_invalid( + () => instantiate(`(module (memory 1) (func (drop (v128.load))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/simd_memory-multi.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/simd_memory-multi.wast.js new file mode 100644 index 0000000000..7214d0785e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/simd_memory-multi.wast.js @@ -0,0 +1,58 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_memory-multi.wast + +// ./test/core/simd/simd_memory-multi.wast:5 +let $0 = instantiate(`(module + (memory 1) + (memory $$m 1) + + (func + (local $$v v128) + + (drop (v128.load8_lane 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane 1 offset=0 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane 1 offset=0 align=1 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane 1 align=1 1 (i32.const 0) (local.get $$v))) + + (drop (v128.load8_lane $$m 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane $$m offset=0 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane $$m offset=0 align=1 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane $$m align=1 1 (i32.const 0) (local.get $$v))) + + (drop (v128.load8_lane 1 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane 1 offset=0 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane 1 offset=0 align=1 1 (i32.const 0) (local.get $$v))) + (drop (v128.load8_lane 1 align=1 1 (i32.const 0) (local.get $$v))) + + (v128.store8_lane 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane offset=0 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane offset=0 align=1 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane align=1 1 (i32.const 0) (local.get $$v)) + + (v128.store8_lane $$m 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane $$m offset=0 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane $$m offset=0 align=1 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane $$m align=1 1 (i32.const 0) (local.get $$v)) + + (v128.store8_lane 1 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane 1 offset=0 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane 1 offset=0 align=1 1 (i32.const 0) (local.get $$v)) + (v128.store8_lane 1 align=1 1 (i32.const 0) (local.get $$v)) + ) +)`); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/simd_store.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/simd_store.wast.js new file mode 100644 index 0000000000..aaecc09ddd --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/simd_store.wast.js @@ -0,0 +1,238 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_store.wast + +// ./test/core/simd/simd_store.wast:3 +let $0 = instantiate(`(module + (memory 1) + (func (export "v128.store_i8x16") (result v128) + (v128.store (i32.const 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i16x8") (result v128) + (v128.store (i32.const 0) (v128.const i16x8 0 1 2 3 4 5 6 7)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i16x8_2") (result v128) + (v128.store (i32.const 0) (v128.const i16x8 012_345 012_345 012_345 012_345 012_345 012_345 012_345 012_345)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i16x8_3") (result v128) + (v128.store (i32.const 0) (v128.const i16x8 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i32x4") (result v128) + (v128.store (i32.const 0) (v128.const i32x4 0 1 2 3)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i32x4_2") (result v128) + (v128.store (i32.const 0) (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i32x4_3") (result v128) + (v128.store (i32.const 0) (v128.const i32x4 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678)) + (v128.load (i32.const 0)) + ) + + (func (export "v128.store_f32x4") (result v128) + (v128.store (i32.const 0) (v128.const f32x4 0 1 2 3)) + (v128.load (i32.const 0)) + ) +)`); + +// ./test/core/simd/simd_store.wast:40 +assert_return( + () => invoke($0, `v128.store_i8x16`, []), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_store.wast:41 +assert_return(() => invoke($0, `v128.store_i16x8`, []), [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])]); + +// ./test/core/simd/simd_store.wast:42 +assert_return( + () => invoke($0, `v128.store_i16x8_2`, []), + [i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039])], +); + +// ./test/core/simd/simd_store.wast:43 +assert_return( + () => invoke($0, `v128.store_i16x8_3`, []), + [i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234])], +); + +// ./test/core/simd/simd_store.wast:44 +assert_return(() => invoke($0, `v128.store_i32x4`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_store.wast:45 +assert_return( + () => invoke($0, `v128.store_i32x4_2`, []), + [i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15])], +); + +// ./test/core/simd/simd_store.wast:46 +assert_return( + () => invoke($0, `v128.store_i32x4_3`, []), + [i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678])], +); + +// ./test/core/simd/simd_store.wast:47 +assert_return( + () => invoke($0, `v128.store_f32x4`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_store.wast:52 +let $1 = instantiate(`(module + (memory 1) + (func (export "as-block-value") + (block (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))) + ) + (func (export "as-loop-value") + (loop (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))) + ) + (func (export "as-br-value") + (block (br 0 (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)))) + ) + (func (export "as-br_if-value") + (block + (br_if 0 (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)) (i32.const 1)) + ) + ) + (func (export "as-br_if-value-cond") + (block + (br_if 0 (i32.const 6) (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))) + ) + ) + (func (export "as-br_table-value") + (block + (br_table 0 (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)) (i32.const 1)) + ) + ) + (func (export "as-return-value") + (return (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))) + ) + (func (export "as-if-then") + (if (i32.const 1) (then (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)))) + ) + (func (export "as-if-else") + (if (i32.const 0) (then) (else (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)))) + ) +)`); + +// ./test/core/simd/simd_store.wast:89 +assert_return(() => invoke($1, `as-block-value`, []), []); + +// ./test/core/simd/simd_store.wast:90 +assert_return(() => invoke($1, `as-loop-value`, []), []); + +// ./test/core/simd/simd_store.wast:91 +assert_return(() => invoke($1, `as-br-value`, []), []); + +// ./test/core/simd/simd_store.wast:92 +assert_return(() => invoke($1, `as-br_if-value`, []), []); + +// ./test/core/simd/simd_store.wast:93 +assert_return(() => invoke($1, `as-br_if-value-cond`, []), []); + +// ./test/core/simd/simd_store.wast:94 +assert_return(() => invoke($1, `as-br_table-value`, []), []); + +// ./test/core/simd/simd_store.wast:95 +assert_return(() => invoke($1, `as-return-value`, []), []); + +// ./test/core/simd/simd_store.wast:96 +assert_return(() => invoke($1, `as-if-then`, []), []); + +// ./test/core/simd/simd_store.wast:97 +assert_return(() => invoke($1, `as-if-else`, []), []); + +// ./test/core/simd/simd_store.wast:102 +assert_malformed( + () => instantiate(`(memory 1) (func (v128.store8 (i32.const 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_store.wast:109 +assert_malformed( + () => instantiate(`(memory 1) (func (v128.store16 (i32.const 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_store.wast:116 +assert_malformed( + () => instantiate(`(memory 1) (func (v128.store32 (i32.const 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_store.wast:127 +assert_invalid( + () => instantiate(`(module (memory 1) (func (v128.store (f32.const 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:131 +assert_invalid( + () => instantiate(`(module (memory 1) (func (local v128) (block (br_if 0 (v128.store)))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:135 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result v128) (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:143 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.store-1st-arg-empty + (v128.store (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:151 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.store-2nd-arg-empty + (v128.store (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:159 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.store-arg-empty + (v128.store) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/start0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/start0.wast.js new file mode 100644 index 0000000000..90cd5d63ac --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/start0.wast.js @@ -0,0 +1,73 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/start0.wast + +// ./test/core/multi-memory/start0.wast:1 +let $0 = instantiate(`(module + (memory 0) + (memory $$m (data "A")) + (memory $$n 1) + + (func $$inc + (i32.store8 $$m + (i32.const 0) + (i32.add + (i32.load8_u $$m (i32.const 0)) + (i32.const 1) + ) + ) + ) + (func $$get (result i32) + (return (i32.load8_u $$m (i32.const 0))) + ) + (func $$getn (result i32) + (return (i32.load8_u $$n (i32.const 0))) + ) + (func $$main + (call $$inc) + (call $$inc) + (call $$inc) + ) + + (start $$main) + (export "inc" (func $$inc)) + (export "get" (func $$get)) + (export "getn" (func $$getn)) +)`); + +// ./test/core/multi-memory/start0.wast:32 +assert_return(() => invoke($0, `get`, []), [value("i32", 68)]); + +// ./test/core/multi-memory/start0.wast:33 +assert_return(() => invoke($0, `getn`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/start0.wast:35 +invoke($0, `inc`, []); + +// ./test/core/multi-memory/start0.wast:36 +assert_return(() => invoke($0, `get`, []), [value("i32", 69)]); + +// ./test/core/multi-memory/start0.wast:37 +assert_return(() => invoke($0, `getn`, []), [value("i32", 0)]); + +// ./test/core/multi-memory/start0.wast:39 +invoke($0, `inc`, []); + +// ./test/core/multi-memory/start0.wast:40 +assert_return(() => invoke($0, `get`, []), [value("i32", 70)]); + +// ./test/core/multi-memory/start0.wast:41 +assert_return(() => invoke($0, `getn`, []), [value("i32", 0)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/store.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/store.wast.js new file mode 100644 index 0000000000..8c9a75f0c2 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/store.wast.js @@ -0,0 +1,803 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/store.wast + +// ./test/core/store.wast:3 +let $0 = instantiate(`(module + (memory $$mem1 1) + (memory $$mem2 1) + + (func (export "load1") (param i32) (result i64) + (i64.load $$mem1 (local.get 0)) + ) + (func (export "load2") (param i32) (result i64) + (i64.load $$mem2 (local.get 0)) + ) + + (func (export "store1") (param i32 i64) + (i64.store $$mem1 (local.get 0) (local.get 1)) + ) + (func (export "store2") (param i32 i64) + (i64.store $$mem2 (local.get 0) (local.get 1)) + ) +)`); + +// ./test/core/store.wast:22 +invoke($0, `store1`, [0, 1n]); + +// ./test/core/store.wast:23 +invoke($0, `store2`, [0, 2n]); + +// ./test/core/store.wast:24 +assert_return(() => invoke($0, `load1`, [0]), [value("i64", 1n)]); + +// ./test/core/store.wast:25 +assert_return(() => invoke($0, `load2`, [0]), [value("i64", 2n)]); + +// ./test/core/store.wast:28 +let $1 = instantiate(`(module $$M1 + (memory (export "mem") 1) + + (func (export "load") (param i32) (result i64) + (i64.load (local.get 0)) + ) + (func (export "store") (param i32 i64) + (i64.store (local.get 0) (local.get 1)) + ) +)`); +register($1, `M1`); + +// ./test/core/store.wast:38 +register($1, `M1`); + +// ./test/core/store.wast:40 +let $2 = instantiate(`(module $$M2 + (memory (export "mem") 1) + + (func (export "load") (param i32) (result i64) + (i64.load (local.get 0)) + ) + (func (export "store") (param i32 i64) + (i64.store (local.get 0) (local.get 1)) + ) +)`); +register($2, `M2`); + +// ./test/core/store.wast:50 +register($2, `M2`); + +// ./test/core/store.wast:52 +invoke(`M1`, `store`, [0, 1n]); + +// ./test/core/store.wast:53 +invoke(`M2`, `store`, [0, 2n]); + +// ./test/core/store.wast:54 +assert_return(() => invoke(`M1`, `load`, [0]), [value("i64", 1n)]); + +// ./test/core/store.wast:55 +assert_return(() => invoke(`M2`, `load`, [0]), [value("i64", 2n)]); + +// ./test/core/store.wast:57 +let $3 = instantiate(`(module + (memory $$mem1 (import "M1" "mem") 1) + (memory $$mem2 (import "M2" "mem") 1) + + (func (export "load1") (param i32) (result i64) + (i64.load $$mem1 (local.get 0)) + ) + (func (export "load2") (param i32) (result i64) + (i64.load $$mem2 (local.get 0)) + ) + + (func (export "store1") (param i32 i64) + (i64.store $$mem1 (local.get 0) (local.get 1)) + ) + (func (export "store2") (param i32 i64) + (i64.store $$mem2 (local.get 0) (local.get 1)) + ) +)`); + +// ./test/core/store.wast:76 +invoke($3, `store1`, [0, 1n]); + +// ./test/core/store.wast:77 +invoke($3, `store2`, [0, 2n]); + +// ./test/core/store.wast:78 +assert_return(() => invoke($3, `load1`, [0]), [value("i64", 1n)]); + +// ./test/core/store.wast:79 +assert_return(() => invoke($3, `load2`, [0]), [value("i64", 2n)]); + +// ./test/core/store.wast:82 +let $4 = instantiate(`(module + (memory (export "mem") 2) +)`); + +// ./test/core/store.wast:85 +register($4, `M`); + +// ./test/core/store.wast:87 +let $5 = instantiate(`(module + (memory $$mem1 (import "M" "mem") 2) + (memory $$mem2 3) + + (data (memory $$mem1) (i32.const 20) "\\01\\02\\03\\04\\05") + (data (memory $$mem2) (i32.const 50) "\\0A\\0B\\0C\\0D\\0E") + + (func (export "read1") (param i32) (result i32) + (i32.load8_u $$mem1 (local.get 0)) + ) + (func (export "read2") (param i32) (result i32) + (i32.load8_u $$mem2 (local.get 0)) + ) + + (func (export "copy-1-to-2") + (local $$i i32) + (local.set $$i (i32.const 20)) + (loop $$cont + (br_if 1 (i32.eq (local.get $$i) (i32.const 23))) + (i32.store8 $$mem2 (local.get $$i) (i32.load8_u $$mem1 (local.get $$i))) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (br $$cont) + ) + ) + + (func (export "copy-2-to-1") + (local $$i i32) + (local.set $$i (i32.const 50)) + (loop $$cont + (br_if 1 (i32.eq (local.get $$i) (i32.const 54))) + (i32.store8 $$mem1 (local.get $$i) (i32.load8_u $$mem2 (local.get $$i))) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (br $$cont) + ) + ) +)`); + +// ./test/core/store.wast:124 +assert_return(() => invoke($5, `read2`, [20]), [value("i32", 0)]); + +// ./test/core/store.wast:125 +assert_return(() => invoke($5, `read2`, [21]), [value("i32", 0)]); + +// ./test/core/store.wast:126 +assert_return(() => invoke($5, `read2`, [22]), [value("i32", 0)]); + +// ./test/core/store.wast:127 +assert_return(() => invoke($5, `read2`, [23]), [value("i32", 0)]); + +// ./test/core/store.wast:128 +assert_return(() => invoke($5, `read2`, [24]), [value("i32", 0)]); + +// ./test/core/store.wast:129 +invoke($5, `copy-1-to-2`, []); + +// ./test/core/store.wast:130 +assert_return(() => invoke($5, `read2`, [20]), [value("i32", 1)]); + +// ./test/core/store.wast:131 +assert_return(() => invoke($5, `read2`, [21]), [value("i32", 2)]); + +// ./test/core/store.wast:132 +assert_return(() => invoke($5, `read2`, [22]), [value("i32", 3)]); + +// ./test/core/store.wast:133 +assert_return(() => invoke($5, `read2`, [23]), [value("i32", 0)]); + +// ./test/core/store.wast:134 +assert_return(() => invoke($5, `read2`, [24]), [value("i32", 0)]); + +// ./test/core/store.wast:136 +assert_return(() => invoke($5, `read1`, [50]), [value("i32", 0)]); + +// ./test/core/store.wast:137 +assert_return(() => invoke($5, `read1`, [51]), [value("i32", 0)]); + +// ./test/core/store.wast:138 +assert_return(() => invoke($5, `read1`, [52]), [value("i32", 0)]); + +// ./test/core/store.wast:139 +assert_return(() => invoke($5, `read1`, [53]), [value("i32", 0)]); + +// ./test/core/store.wast:140 +assert_return(() => invoke($5, `read1`, [54]), [value("i32", 0)]); + +// ./test/core/store.wast:141 +invoke($5, `copy-2-to-1`, []); + +// ./test/core/store.wast:142 +assert_return(() => invoke($5, `read1`, [50]), [value("i32", 10)]); + +// ./test/core/store.wast:143 +assert_return(() => invoke($5, `read1`, [51]), [value("i32", 11)]); + +// ./test/core/store.wast:144 +assert_return(() => invoke($5, `read1`, [52]), [value("i32", 12)]); + +// ./test/core/store.wast:145 +assert_return(() => invoke($5, `read1`, [53]), [value("i32", 13)]); + +// ./test/core/store.wast:146 +assert_return(() => invoke($5, `read1`, [54]), [value("i32", 0)]); + +// ./test/core/store.wast:151 +let $6 = instantiate(`(module + (memory 1) + + (func (export "as-block-value") + (block (i32.store (i32.const 0) (i32.const 1))) + ) + (func (export "as-loop-value") + (loop (i32.store (i32.const 0) (i32.const 1))) + ) + + (func (export "as-br-value") + (block (br 0 (i32.store (i32.const 0) (i32.const 1)))) + ) + (func (export "as-br_if-value") + (block + (br_if 0 (i32.store (i32.const 0) (i32.const 1)) (i32.const 1)) + ) + ) + (func (export "as-br_if-value-cond") + (block + (br_if 0 (i32.const 6) (i32.store (i32.const 0) (i32.const 1))) + ) + ) + (func (export "as-br_table-value") + (block + (br_table 0 (i32.store (i32.const 0) (i32.const 1)) (i32.const 1)) + ) + ) + + (func (export "as-return-value") + (return (i32.store (i32.const 0) (i32.const 1))) + ) + + (func (export "as-if-then") + (if (i32.const 1) (then (i32.store (i32.const 0) (i32.const 1)))) + ) + (func (export "as-if-else") + (if (i32.const 0) (then) (else (i32.store (i32.const 0) (i32.const 1)))) + ) +)`); + +// ./test/core/store.wast:192 +assert_return(() => invoke($6, `as-block-value`, []), []); + +// ./test/core/store.wast:193 +assert_return(() => invoke($6, `as-loop-value`, []), []); + +// ./test/core/store.wast:195 +assert_return(() => invoke($6, `as-br-value`, []), []); + +// ./test/core/store.wast:196 +assert_return(() => invoke($6, `as-br_if-value`, []), []); + +// ./test/core/store.wast:197 +assert_return(() => invoke($6, `as-br_if-value-cond`, []), []); + +// ./test/core/store.wast:198 +assert_return(() => invoke($6, `as-br_table-value`, []), []); + +// ./test/core/store.wast:200 +assert_return(() => invoke($6, `as-return-value`, []), []); + +// ./test/core/store.wast:202 +assert_return(() => invoke($6, `as-if-then`, []), []); + +// ./test/core/store.wast:203 +assert_return(() => invoke($6, `as-if-else`, []), []); + +// ./test/core/store.wast:205 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (i32.store32 (local.get 0) (i32.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:212 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (i32.store64 (local.get 0) (i64.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:220 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (i64.store64 (local.get 0) (i64.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:228 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (f32.store32 (local.get 0) (f32.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:235 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (f32.store64 (local.get 0) (f64.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:243 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (f64.store32 (local.get 0) (f32.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:250 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (f64.store64 (local.get 0) (f64.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:259 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i32) (result i32) (i32.store (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:263 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i64) (result i64) (i64.store (i32.const 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:267 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param f32) (result f32) (f32.store (i32.const 0) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:271 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param f64) (result f64) (f64.store (i32.const 0) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:275 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i32) (result i32) (i32.store8 (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:279 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i32) (result i32) (i32.store16 (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:283 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i64) (result i64) (i64.store8 (i32.const 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:287 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i64) (result i64) (i64.store16 (i32.const 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:291 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i64) (result i64) (i64.store32 (i32.const 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:297 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty + (i32.store) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:306 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty + (i32.const 0) (i32.store) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:315 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-block + (i32.const 0) (i32.const 0) + (block (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:325 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-block + (i32.const 0) + (block (i32.const 0) (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:335 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-loop + (i32.const 0) (i32.const 0) + (loop (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:345 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-loop + (i32.const 0) + (loop (i32.const 0) (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:355 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:365 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-then + (i32.const 0) + (if (then (i32.const 0) (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:375 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:385 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-else + (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.const 0) (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:395 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-br + (i32.const 0) (i32.const 0) + (block (br 0 (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:405 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-br + (i32.const 0) + (block (br 0 (i32.const 0) (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:415 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-br_if + (i32.const 0) (i32.const 0) + (block (br_if 0 (i32.store) (i32.const 1)) ) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:425 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-br_if + (i32.const 0) + (block (br_if 0 (i32.const 0) (i32.store) (i32.const 1)) ) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:435 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-br_table + (i32.const 0) (i32.const 0) + (block (br_table 0 (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:445 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-br_table + (i32.const 0) + (block (br_table 0 (i32.const 0) (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:455 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-return + (return (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:464 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-return + (return (i32.const 0) (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:473 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-select + (select (i32.store) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:482 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-select + (select (i32.const 0) (i32.store) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:491 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-call + (call 1 (i32.store)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:501 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-call + (call 1 (i32.const 0) (i32.store)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:511 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-address-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.store) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:527 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-value-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.const 0) (i32.store) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:547 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store (f32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:548 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store8 (f32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:549 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store16 (f32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:550 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store (f32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:551 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store8 (f32.const 0) (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:552 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store16 (f32.const 0) (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:553 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store32 (f32.const 0) (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:554 +assert_invalid( + () => instantiate(`(module (memory 1) (func (f32.store (f32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:555 +assert_invalid( + () => instantiate(`(module (memory 1) (func (f64.store (f32.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:557 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:558 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store8 (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:559 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store16 (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:560 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:561 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store8 (i32.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:562 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store16 (i32.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:563 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store32 (i32.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:564 +assert_invalid( + () => instantiate(`(module (memory 1) (func (f32.store (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:565 +assert_invalid( + () => instantiate(`(module (memory 1) (func (f64.store (i32.const 0) (i64.const 0))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/store0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/store0.wast.js new file mode 100644 index 0000000000..9850d62a5a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/store0.wast.js @@ -0,0 +1,48 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/store0.wast + +// ./test/core/multi-memory/store0.wast:3 +let $0 = instantiate(`(module + (memory $$mem1 1) + (memory $$mem2 1) + + (func (export "load1") (param i32) (result i64) + (i64.load $$mem1 (local.get 0)) + ) + (func (export "load2") (param i32) (result i64) + (i64.load $$mem2 (local.get 0)) + ) + + (func (export "store1") (param i32 i64) + (i64.store $$mem1 (local.get 0) (local.get 1)) + ) + (func (export "store2") (param i32 i64) + (i64.store $$mem2 (local.get 0) (local.get 1)) + ) +)`); + +// ./test/core/multi-memory/store0.wast:22 +invoke($0, `store1`, [0, 1n]); + +// ./test/core/multi-memory/store0.wast:23 +invoke($0, `store2`, [0, 2n]); + +// ./test/core/multi-memory/store0.wast:24 +assert_return(() => invoke($0, `load1`, [0]), [value("i64", 1n)]); + +// ./test/core/multi-memory/store0.wast:25 +assert_return(() => invoke($0, `load2`, [0]), [value("i64", 2n)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/store1.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/store1.wast.js new file mode 100644 index 0000000000..e79c256871 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/store1.wast.js @@ -0,0 +1,92 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/store1.wast + +// ./test/core/multi-memory/store1.wast:1 +let $0 = instantiate(`(module $$M1 + (memory (export "mem") 1) + + (func (export "load") (param i32) (result i64) + (i64.load (local.get 0)) + ) + (func (export "store") (param i32 i64) + (i64.store (local.get 0) (local.get 1)) + ) +)`); +register($0, `M1`); + +// ./test/core/multi-memory/store1.wast:11 +register($0, `M1`); + +// ./test/core/multi-memory/store1.wast:13 +let $1 = instantiate(`(module $$M2 + (memory (export "mem") 1) + + (func (export "load") (param i32) (result i64) + (i64.load (local.get 0)) + ) + (func (export "store") (param i32 i64) + (i64.store (local.get 0) (local.get 1)) + ) +)`); +register($1, `M2`); + +// ./test/core/multi-memory/store1.wast:23 +register($1, `M2`); + +// ./test/core/multi-memory/store1.wast:25 +invoke(`M1`, `store`, [0, 1n]); + +// ./test/core/multi-memory/store1.wast:26 +invoke(`M2`, `store`, [0, 2n]); + +// ./test/core/multi-memory/store1.wast:27 +assert_return(() => invoke(`M1`, `load`, [0]), [value("i64", 1n)]); + +// ./test/core/multi-memory/store1.wast:28 +assert_return(() => invoke(`M2`, `load`, [0]), [value("i64", 2n)]); + +// ./test/core/multi-memory/store1.wast:30 +let $2 = instantiate(`(module + (memory $$mem1 (import "M1" "mem") 1) + (memory $$mem2 (import "M2" "mem") 1) + + (func (export "load1") (param i32) (result i64) + (i64.load $$mem1 (local.get 0)) + ) + (func (export "load2") (param i32) (result i64) + (i64.load $$mem2 (local.get 0)) + ) + + (func (export "store1") (param i32 i64) + (i64.store $$mem1 (local.get 0) (local.get 1)) + ) + (func (export "store2") (param i32 i64) + (i64.store $$mem2 (local.get 0) (local.get 1)) + ) +)`); + +// ./test/core/multi-memory/store1.wast:49 +invoke($2, `store1`, [0, 1n]); + +// ./test/core/multi-memory/store1.wast:50 +invoke($2, `store2`, [0, 2n]); + +// ./test/core/multi-memory/store1.wast:51 +assert_return(() => invoke($2, `load1`, [0]), [value("i64", 1n)]); + +// ./test/core/multi-memory/store1.wast:52 +assert_return(() => invoke($2, `load2`, [0]), [value("i64", 2n)]); diff --git a/js/src/jit-test/tests/wasm/spec/multi-memory/traps0.wast.js b/js/src/jit-test/tests/wasm/spec/multi-memory/traps0.wast.js new file mode 100644 index 0000000000..ff6a6baa7a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/multi-memory/traps0.wast.js @@ -0,0 +1,80 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/multi-memory/traps0.wast + +// ./test/core/multi-memory/traps0.wast:1 +let $0 = instantiate(`(module + (memory $$mem0 1) + (memory $$mem1 1) + (memory $$mem2 1) + + (func (export "no_dce.i32.load") (param $$i i32) (drop (i32.load $$mem1 (local.get $$i)))) + (func (export "no_dce.i32.load16_s") (param $$i i32) (drop (i32.load16_s $$mem1 (local.get $$i)))) + (func (export "no_dce.i32.load16_u") (param $$i i32) (drop (i32.load16_u $$mem1 (local.get $$i)))) + (func (export "no_dce.i32.load8_s") (param $$i i32) (drop (i32.load8_s $$mem1 (local.get $$i)))) + (func (export "no_dce.i32.load8_u") (param $$i i32) (drop (i32.load8_u $$mem1 (local.get $$i)))) + (func (export "no_dce.i64.load") (param $$i i32) (drop (i64.load $$mem1 (local.get $$i)))) + (func (export "no_dce.i64.load32_s") (param $$i i32) (drop (i64.load32_s $$mem1 (local.get $$i)))) + (func (export "no_dce.i64.load32_u") (param $$i i32) (drop (i64.load32_u $$mem2 (local.get $$i)))) + (func (export "no_dce.i64.load16_s") (param $$i i32) (drop (i64.load16_s $$mem2 (local.get $$i)))) + (func (export "no_dce.i64.load16_u") (param $$i i32) (drop (i64.load16_u $$mem2 (local.get $$i)))) + (func (export "no_dce.i64.load8_s") (param $$i i32) (drop (i64.load8_s $$mem2 (local.get $$i)))) + (func (export "no_dce.i64.load8_u") (param $$i i32) (drop (i64.load8_u $$mem2 (local.get $$i)))) + (func (export "no_dce.f32.load") (param $$i i32) (drop (f32.load $$mem2 (local.get $$i)))) + (func (export "no_dce.f64.load") (param $$i i32) (drop (f64.load $$mem2 (local.get $$i)))) +)`); + +// ./test/core/multi-memory/traps0.wast:22 +assert_trap(() => invoke($0, `no_dce.i32.load`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:23 +assert_trap(() => invoke($0, `no_dce.i32.load16_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:24 +assert_trap(() => invoke($0, `no_dce.i32.load16_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:25 +assert_trap(() => invoke($0, `no_dce.i32.load8_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:26 +assert_trap(() => invoke($0, `no_dce.i32.load8_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:27 +assert_trap(() => invoke($0, `no_dce.i64.load`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:28 +assert_trap(() => invoke($0, `no_dce.i64.load32_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:29 +assert_trap(() => invoke($0, `no_dce.i64.load32_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:30 +assert_trap(() => invoke($0, `no_dce.i64.load16_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:31 +assert_trap(() => invoke($0, `no_dce.i64.load16_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:32 +assert_trap(() => invoke($0, `no_dce.i64.load8_s`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:33 +assert_trap(() => invoke($0, `no_dce.i64.load8_u`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:34 +assert_trap(() => invoke($0, `no_dce.f32.load`, [65536]), `out of bounds memory access`); + +// ./test/core/multi-memory/traps0.wast:35 +assert_trap(() => invoke($0, `no_dce.f64.load`, [65536]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/directives.txt b/js/src/jit-test/tests/wasm/spec/relaxed-simd/directives.txt new file mode 100644 index 0000000000..625758af79 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; --wasm-relaxed-simd; skip-if: !wasmRelaxedSimdEnabled() \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/relaxed-simd/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/harness/harness.js b/js/src/jit-test/tests/wasm/spec/relaxed-simd/harness/harness.js new file mode 100644 index 0000000000..a96781e8ed --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/harness/harness.js @@ -0,0 +1,448 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/i16x8_relaxed_q15mulr_s.wast.js b/js/src/jit-test/tests/wasm/spec/relaxed-simd/i16x8_relaxed_q15mulr_s.wast.js new file mode 100644 index 0000000000..401f55986e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/i16x8_relaxed_q15mulr_s.wast.js @@ -0,0 +1,49 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/relaxed-simd/i16x8_relaxed_q15mulr_s.wast + +// ./test/core/relaxed-simd/i16x8_relaxed_q15mulr_s.wast:4 +let $0 = instantiate(`(module + (func (export "i16x8.relaxed_q15mulr_s") (param v128 v128) (result v128) (i16x8.relaxed_q15mulr_s (local.get 0) (local.get 1))) + + (func (export "i16x8.relaxed_q15mulr_s_cmp") (param v128 v128) (result v128) + (i16x8.eq + (i16x8.relaxed_q15mulr_s (local.get 0) (local.get 1)) + (i16x8.relaxed_q15mulr_s (local.get 0) (local.get 1)))) +)`); + +// ./test/core/relaxed-simd/i16x8_relaxed_q15mulr_s.wast:14 +assert_return( + () => invoke($0, `i16x8.relaxed_q15mulr_s`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x8000, 0x8000, 0x7fff, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + either( + i16x8([0x8000, 0x7fff, 0x7ffe, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x7fff, 0x7fff, 0x7ffe, 0x0, 0x0, 0x0, 0x0, 0x0]), + ), + ], +); + +// ./test/core/relaxed-simd/i16x8_relaxed_q15mulr_s.wast:23 +assert_return( + () => invoke($0, `i16x8.relaxed_q15mulr_s_cmp`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x8000, 0x8000, 0x7fff, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/i32x4_relaxed_trunc.wast.js b/js/src/jit-test/tests/wasm/spec/relaxed-simd/i32x4_relaxed_trunc.wast.js new file mode 100644 index 0000000000..542955765e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/i32x4_relaxed_trunc.wast.js @@ -0,0 +1,338 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:4 +let $0 = instantiate(`(module + (func (export "i32x4.relaxed_trunc_f32x4_s") (param v128) (result v128) (i32x4.relaxed_trunc_f32x4_s (local.get 0))) + (func (export "i32x4.relaxed_trunc_f32x4_u") (param v128) (result v128) (i32x4.relaxed_trunc_f32x4_u (local.get 0))) + (func (export "i32x4.relaxed_trunc_f64x2_s_zero") (param v128) (result v128) (i32x4.relaxed_trunc_f64x2_s_zero (local.get 0))) + (func (export "i32x4.relaxed_trunc_f64x2_u_zero") (param v128) (result v128) (i32x4.relaxed_trunc_f64x2_u_zero (local.get 0))) + + (func (export "i32x4.relaxed_trunc_f32x4_s_cmp") (param v128) (result v128) + (i32x4.eq + (i32x4.relaxed_trunc_f32x4_s (local.get 0)) + (i32x4.relaxed_trunc_f32x4_s (local.get 0)))) + (func (export "i32x4.relaxed_trunc_f32x4_u_cmp") (param v128) (result v128) + (i32x4.eq + (i32x4.relaxed_trunc_f32x4_u (local.get 0)) + (i32x4.relaxed_trunc_f32x4_u (local.get 0)))) + (func (export "i32x4.relaxed_trunc_f64x2_s_zero_cmp") (param v128) (result v128) + (i32x4.eq + (i32x4.relaxed_trunc_f64x2_s_zero (local.get 0)) + (i32x4.relaxed_trunc_f64x2_s_zero (local.get 0)))) + (func (export "i32x4.relaxed_trunc_f64x2_u_zero_cmp") (param v128) (result v128) + (i32x4.eq + (i32x4.relaxed_trunc_f64x2_u_zero (local.get 0)) + (i32x4.relaxed_trunc_f64x2_u_zero (local.get 0)))) +)`); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:36 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f32x4_s`, [ + f32x4([-2147483600, -2147484000, 2, 2147484000]), + ]), + [ + either( + i32x4([0x80000000, 0x80000000, 0x2, 0x7fffffff]), + i32x4([0x80000000, 0x80000000, 0x2, 0x80000000]), + ), + ], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:43 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f32x4_s`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0xff, + ]), + ]), + [ + either( + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ), + ], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:49 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f32x4_u`, [ + f32x4([0, -1, 4294967000, 4294967300]), + ]), + [ + either( + i32x4([0x0, 0x0, 0xffffff00, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0xffffff00, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0xffffff00, 0x0]), + ), + ], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:56 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f32x4_u`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0xff, + ]), + ]), + [ + either( + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ), + ], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:62 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f64x2_s_zero`, [ + f64x2([-2147483904, 2147483904]), + ]), + [ + either( + i32x4([0x80000000, 0x7fffffff, 0x0, 0x0]), + i32x4([0x80000000, 0x80000000, 0x0, 0x0]), + ), + ], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:68 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f64x2_s_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + either(i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x80000000, 0x80000000, 0x0, 0x0])), + ], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:73 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f64x2_u_zero`, [f64x2([-1, 4294967296])]), + [ + either( + i32x4([0x0, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xfffffffe, 0x0, 0x0, 0x0]), + ), + ], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:79 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f64x2_u_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + either(i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])), + ], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:86 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f32x4_s_cmp`, [ + f32x4([-2147483600, -2147484000, 2147483600, 2147484000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:92 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f32x4_s_cmp`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:97 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f32x4_u_cmp`, [ + f32x4([0, -1, 4294967000, 4294967300]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:103 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f32x4_u_cmp`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:108 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f64x2_s_zero_cmp`, [ + f64x2([-2147483904, 2147483904]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:113 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f64x2_s_zero_cmp`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:117 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f64x2_u_zero_cmp`, [f64x2([-1, 4294967296])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/i32x4_relaxed_trunc.wast:122 +assert_return( + () => invoke($0, `i32x4.relaxed_trunc_f64x2_u_zero_cmp`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/i8x16_relaxed_swizzle.wast.js b/js/src/jit-test/tests/wasm/spec/relaxed-simd/i8x16_relaxed_swizzle.wast.js new file mode 100644 index 0000000000..09ed934c02 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/i8x16_relaxed_swizzle.wast.js @@ -0,0 +1,90 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/relaxed-simd/i8x16_relaxed_swizzle.wast + +// ./test/core/relaxed-simd/i8x16_relaxed_swizzle.wast:4 +let $0 = instantiate(`(module + (func (export "i8x16.relaxed_swizzle") (param v128 v128) (result v128) (i8x16.relaxed_swizzle (local.get 0) (local.get 1))) + + (func (export "i8x16.relaxed_swizzle_cmp") (param v128 v128) (result v128) + (i8x16.eq + (i8x16.relaxed_swizzle (local.get 0) (local.get 1)) + (i8x16.relaxed_swizzle (local.get 0) (local.get 1)))) +)`); + +// ./test/core/relaxed-simd/i8x16_relaxed_swizzle.wast:13 +assert_return( + () => invoke($0, `i8x16.relaxed_swizzle`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [ + either( + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ), + ], +); + +// ./test/core/relaxed-simd/i8x16_relaxed_swizzle.wast:20 +assert_return( + () => invoke($0, `i8x16.relaxed_swizzle`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + ]), + [ + either( + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ), + ], +); + +// ./test/core/relaxed-simd/i8x16_relaxed_swizzle.wast:27 +assert_return( + () => invoke($0, `i8x16.relaxed_swizzle`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + either( + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ), + ], +); + +// ./test/core/relaxed-simd/i8x16_relaxed_swizzle.wast:36 +assert_return( + () => invoke($0, `i8x16.relaxed_swizzle_cmp`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/relaxed-simd/i8x16_relaxed_swizzle.wast:42 +assert_return( + () => invoke($0, `i8x16.relaxed_swizzle_cmp`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_dot_product.wast.js b/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_dot_product.wast.js new file mode 100644 index 0000000000..b3b8776e01 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_dot_product.wast.js @@ -0,0 +1,139 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/relaxed-simd/relaxed_dot_product.wast + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:4 +let $0 = instantiate(`(module + (func (export "i16x8.relaxed_dot_i8x16_i7x16_s") (param v128 v128) (result v128) (i16x8.relaxed_dot_i8x16_i7x16_s (local.get 0) (local.get 1))) + (func (export "i32x4.relaxed_dot_i8x16_i7x16_add_s") (param v128 v128 v128) (result v128) (i32x4.relaxed_dot_i8x16_i7x16_add_s (local.get 0) (local.get 1) (local.get 2))) + + (func (export "i16x8.relaxed_dot_i8x16_i7x16_s_cmp") (param v128 v128) (result v128) + (i16x8.eq + (i16x8.relaxed_dot_i8x16_i7x16_s (local.get 0) (local.get 1)) + (i16x8.relaxed_dot_i8x16_i7x16_s (local.get 0) (local.get 1)))) + (func (export "i32x4.relaxed_dot_i8x16_i7x16_add_s_cmp") (param v128 v128 v128) (result v128) + (i16x8.eq + (i32x4.relaxed_dot_i8x16_i7x16_add_s (local.get 0) (local.get 1) (local.get 2)) + (i32x4.relaxed_dot_i8x16_i7x16_add_s (local.get 0) (local.get 1) (local.get 2)))) +)`); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:19 +assert_return( + () => invoke($0, `i16x8.relaxed_dot_i8x16_i7x16_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0x1, 0xd, 0x29, 0x55, 0x91, 0xdd, 0x139, 0x1a5])], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:25 +assert_return( + () => invoke($0, `i16x8.relaxed_dot_i8x16_i7x16_s`, [ + i8x16([0x80, 0x80, 0x7f, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x8100, 0x7e02, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:33 +assert_return( + () => invoke($0, `i16x8.relaxed_dot_i8x16_i7x16_s`, [ + i8x16([0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x81, 0x81, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + either( + i16x8([0x8000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x7f00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x8100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:42 +assert_return( + () => invoke($0, `i32x4.relaxed_dot_i8x16_i7x16_add_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x0, 0x1, 0x2, 0x3]), + ]), + [i32x4([0xe, 0x7f, 0x170, 0x2e1])], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:50 +assert_return( + () => invoke($0, `i32x4.relaxed_dot_i8x16_i7x16_add_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x2, 0x3, 0x4]), + ]), + [i32x4([0xffff0201, 0xfc06, 0x3, 0x4])], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:63 +assert_return( + () => invoke($0, `i32x4.relaxed_dot_i8x16_i7x16_add_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x2, 0x3, 0x4]), + ]), + [ + either( + i32x4([0xfffefe01, 0x2, 0x3, 0x4]), + i32x4([0xffff0001, 0x2, 0x3, 0x4]), + i32x4([0xfe01, 0x2, 0x3, 0x4]), + i32x4([0x10201, 0x2, 0x3, 0x4]), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:76 +assert_return( + () => invoke($0, `i16x8.relaxed_dot_i8x16_i7x16_s_cmp`, [ + i8x16([0x80, 0x80, 0x7f, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:82 +assert_return( + () => invoke($0, `i32x4.relaxed_dot_i8x16_i7x16_add_s_cmp`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x2, 0x3, 0x4]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:92 +assert_return( + () => invoke($0, `i16x8.relaxed_dot_i8x16_i7x16_s_cmp`, [ + i8x16([0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x81, 0x81, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/relaxed-simd/relaxed_dot_product.wast:103 +assert_return( + () => invoke($0, `i32x4.relaxed_dot_i8x16_i7x16_add_s_cmp`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x2, 0x3, 0x4]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_laneselect.wast.js b/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_laneselect.wast.js new file mode 100644 index 0000000000..e86d85e08b --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_laneselect.wast.js @@ -0,0 +1,179 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/relaxed-simd/relaxed_laneselect.wast + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:4 +let $0 = instantiate(`(module + (func (export "i8x16.relaxed_laneselect") (param v128 v128 v128) (result v128) (i8x16.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2))) + (func (export "i16x8.relaxed_laneselect") (param v128 v128 v128) (result v128) (i16x8.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2))) + (func (export "i32x4.relaxed_laneselect") (param v128 v128 v128) (result v128) (i32x4.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2))) + (func (export "i64x2.relaxed_laneselect") (param v128 v128 v128) (result v128) (i64x2.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2))) + + (func (export "i8x16.relaxed_laneselect_cmp") (param v128 v128 v128) (result v128) + (i8x16.eq + (i8x16.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2)) + (i8x16.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2)))) + (func (export "i16x8.relaxed_laneselect_cmp") (param v128 v128 v128) (result v128) + (i16x8.eq + (i16x8.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2)) + (i16x8.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2)))) + (func (export "i32x4.relaxed_laneselect_cmp") (param v128 v128 v128) (result v128) + (i32x4.eq + (i32x4.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2)) + (i32x4.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2)))) + (func (export "i64x2.relaxed_laneselect_cmp") (param v128 v128 v128) (result v128) + (i64x2.eq + (i64x2.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2)) + (i64x2.relaxed_laneselect (local.get 0) (local.get 1) (local.get 2)))) +)`); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:28 +assert_return( + () => invoke($0, `i8x16.relaxed_laneselect`, [ + i8x16([0x0, 0x1, 0x12, 0x12, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x10, 0x11, 0x34, 0x34, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + i8x16([0xff, 0x0, 0xf0, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + either( + i8x16([0x0, 0x11, 0x14, 0x32, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + i8x16([0x0, 0x11, 0x12, 0x34, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:35 +assert_return( + () => invoke($0, `i16x8.relaxed_laneselect`, [ + i16x8([0x0, 0x1, 0x1234, 0x1234, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x8, 0x9, 0x5678, 0x5678, 0xc, 0xd, 0xe, 0xf]), + i16x8([0xffff, 0x0, 0xff00, 0xff, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + either( + i16x8([0x0, 0x9, 0x1278, 0x5634, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x0, 0x9, 0x1234, 0x5678, 0xc, 0xd, 0xe, 0xf]), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:43 +assert_return( + () => invoke($0, `i16x8.relaxed_laneselect`, [ + i16x8([0x0, 0x1, 0x1234, 0x1234, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x8, 0x9, 0x5678, 0x5678, 0xc, 0xd, 0xe, 0xf]), + i16x8([0xffff, 0x0, 0xff00, 0x80, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + either( + i16x8([0x0, 0x9, 0x1278, 0x5678, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x0, 0x9, 0x1234, 0x5678, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x0, 0x9, 0x1278, 0x5634, 0xc, 0xd, 0xe, 0xf]), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:52 +assert_return( + () => invoke($0, `i32x4.relaxed_laneselect`, [ + i32x4([0x0, 0x1, 0x12341234, 0x12341234]), + i32x4([0x4, 0x5, 0x56785678, 0x56785678]), + i32x4([0xffffffff, 0x0, 0xffff0000, 0xffff]), + ]), + [ + either( + i32x4([0x0, 0x5, 0x12345678, 0x56781234]), + i32x4([0x0, 0x5, 0x12341234, 0x56785678]), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:59 +assert_return( + () => invoke($0, `i64x2.relaxed_laneselect`, [ + i64x2([0x0n, 0x1n]), + i64x2([0x2n, 0x3n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [either(i64x2([0x0n, 0x3n]), i64x2([0x0n, 0x3n]))], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:66 +assert_return( + () => invoke($0, `i64x2.relaxed_laneselect`, [ + i64x2([0x1234123412341234n, 0x1234123412341234n]), + i64x2([0x5678567856785678n, 0x5678567856785678n]), + i64x2([0xffffffff00000000n, 0xffffffffn]), + ]), + [ + either( + i64x2([0x1234123456785678n, 0x5678567812341234n]), + i64x2([0x1234123412341234n, 0x5678567856785678n]), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:75 +assert_return( + () => invoke($0, `i8x16.relaxed_laneselect_cmp`, [ + i8x16([0x0, 0x1, 0x12, 0x12, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x10, 0x11, 0x34, 0x34, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + i8x16([0xff, 0x0, 0xf0, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:81 +assert_return( + () => invoke($0, `i16x8.relaxed_laneselect_cmp`, [ + i16x8([0x0, 0x1, 0x1234, 0x1234, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x8, 0x9, 0x5678, 0x5678, 0xc, 0xd, 0xe, 0xf]), + i16x8([0xffff, 0x0, 0xff00, 0xff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:87 +assert_return( + () => invoke($0, `i32x4.relaxed_laneselect_cmp`, [ + i32x4([0x0, 0x1, 0x12341234, 0x12341234]), + i32x4([0x4, 0x5, 0x56785678, 0x56785678]), + i32x4([0xffffffff, 0x0, 0xffff0000, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:93 +assert_return( + () => invoke($0, `i64x2.relaxed_laneselect_cmp`, [ + i64x2([0x0n, 0x1n]), + i64x2([0x2n, 0x3n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_laneselect.wast:99 +assert_return( + () => invoke($0, `i64x2.relaxed_laneselect_cmp`, [ + i64x2([0x1234123412341234n, 0x1234123412341234n]), + i64x2([0x5678567856785678n, 0x5678567856785678n]), + i64x2([0xffffffff00000000n, 0xffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_madd_nmadd.wast.js b/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_madd_nmadd.wast.js new file mode 100644 index 0000000000..6b3c8f912c --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_madd_nmadd.wast.js @@ -0,0 +1,325 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:4 +let $0 = instantiate(`(module + (func (export "f32x4.relaxed_madd") (param v128 v128 v128) (result v128) (f32x4.relaxed_madd (local.get 0) (local.get 1) (local.get 2))) + (func (export "f32x4.relaxed_nmadd") (param v128 v128 v128) (result v128) (f32x4.relaxed_nmadd (local.get 0) (local.get 1) (local.get 2))) + (func (export "f64x2.relaxed_nmadd") (param v128 v128 v128) (result v128) (f64x2.relaxed_nmadd (local.get 0) (local.get 1) (local.get 2))) + (func (export "f64x2.relaxed_madd") (param v128 v128 v128) (result v128) (f64x2.relaxed_madd (local.get 0) (local.get 1) (local.get 2))) + + (func (export "f32x4.relaxed_madd_cmp") (param v128 v128 v128) (result v128) + (f32x4.eq + (f32x4.relaxed_madd (local.get 0) (local.get 1) (local.get 2)) + (f32x4.relaxed_madd (local.get 0) (local.get 1) (local.get 2)))) + (func (export "f32x4.relaxed_nmadd_cmp") (param v128 v128 v128) (result v128) + (f32x4.eq + (f32x4.relaxed_nmadd (local.get 0) (local.get 1) (local.get 2)) + (f32x4.relaxed_nmadd (local.get 0) (local.get 1) (local.get 2)))) + (func (export "f64x2.relaxed_nmadd_cmp") (param v128 v128 v128) (result v128) + (f64x2.eq + (f64x2.relaxed_nmadd (local.get 0) (local.get 1) (local.get 2)) + (f64x2.relaxed_nmadd (local.get 0) (local.get 1) (local.get 2)))) + (func (export "f64x2.relaxed_madd_cmp") (param v128 v128 v128) (result v128) + (f64x2.eq + (f64x2.relaxed_madd (local.get 0) (local.get 1) (local.get 2)) + (f64x2.relaxed_madd (local.get 0) (local.get 1) (local.get 2)))) +)`); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:34 +assert_return( + () => invoke($0, `f32x4.relaxed_madd`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([2, 2, 2, 2]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + either( + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:50 +assert_return( + () => invoke($0, `f32x4.relaxed_madd`, [ + f32x4([1.0000002, 1.0000002, 1.0000002, 1.0000002]), + f32x4([1.0000305, 1.0000305, 1.0000305, 1.0000305]), + f32x4([-1.0000308, -1.0000308, -1.0000308, -1.0000308]), + ]), + [ + either( + new F32x4Pattern( + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + ), + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:57 +assert_return( + () => invoke($0, `f32x4.relaxed_nmadd`, [ + f32x4([-1.0000002, -1.0000002, -1.0000002, -1.0000002]), + f32x4([1.0000305, 1.0000305, 1.0000305, 1.0000305]), + f32x4([-1.0000308, -1.0000308, -1.0000308, -1.0000308]), + ]), + [ + either( + new F32x4Pattern( + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + ), + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:64 +assert_return( + () => invoke($0, `f32x4.relaxed_nmadd`, [ + f32x4([1.0000002, 1.0000002, 1.0000002, 1.0000002]), + f32x4([-1.0000305, -1.0000305, -1.0000305, -1.0000305]), + f32x4([-1.0000308, -1.0000308, -1.0000308, -1.0000308]), + ]), + [ + either( + new F32x4Pattern( + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + value("f32", 0.000000000007275958), + ), + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:77 +assert_return( + () => invoke($0, `f64x2.relaxed_madd`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2, 2]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + either( + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + new F64x2Pattern(value("f64", Infinity), value("f64", Infinity)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:93 +assert_return( + () => invoke($0, `f64x2.relaxed_madd`, [ + f64x2([1.0000000009313226, 1.0000000009313226]), + f64x2([1.0000001192092896, 1.0000001192092896]), + f64x2([-1.0000001201406121, -1.0000001201406121]), + ]), + [ + either( + new F64x2Pattern( + value("f64", 0.00000000000000011102230246251565), + value("f64", 0.00000000000000011102230246251565), + ), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:100 +assert_return( + () => invoke($0, `f64x2.relaxed_nmadd`, [ + f64x2([-1.0000000009313226, -1.0000000009313226]), + f64x2([1.0000001192092896, 1.0000001192092896]), + f64x2([-1.0000001201406121, -1.0000001201406121]), + ]), + [ + either( + new F64x2Pattern( + value("f64", 0.00000000000000011102230246251565), + value("f64", 0.00000000000000011102230246251565), + ), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:107 +assert_return( + () => invoke($0, `f64x2.relaxed_nmadd`, [ + f64x2([1.0000000009313226, 1.0000000009313226]), + f64x2([-1.0000001192092896, -1.0000001192092896]), + f64x2([-1.0000001201406121, -1.0000001201406121]), + ]), + [ + either( + new F64x2Pattern( + value("f64", 0.00000000000000011102230246251565), + value("f64", 0.00000000000000011102230246251565), + ), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:121 +assert_return( + () => invoke($0, `f32x4.relaxed_madd_cmp`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([2, 2, 2, 2]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:136 +assert_return( + () => invoke($0, `f32x4.relaxed_madd_cmp`, [ + f32x4([1.0000002, 1.0000002, 1.0000002, 1.0000002]), + f32x4([1.0000305, 1.0000305, 1.0000305, 1.0000305]), + f32x4([-1.0000308, -1.0000308, -1.0000308, -1.0000308]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:142 +assert_return( + () => invoke($0, `f32x4.relaxed_nmadd_cmp`, [ + f32x4([-1.0000002, -1.0000002, -1.0000002, -1.0000002]), + f32x4([1.0000305, 1.0000305, 1.0000305, 1.0000305]), + f32x4([-1.0000308, -1.0000308, -1.0000308, -1.0000308]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:148 +assert_return( + () => invoke($0, `f32x4.relaxed_nmadd_cmp`, [ + f32x4([1.0000002, 1.0000002, 1.0000002, 1.0000002]), + f32x4([-1.0000305, -1.0000305, -1.0000305, -1.0000305]), + f32x4([-1.0000308, -1.0000308, -1.0000308, -1.0000308]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:160 +assert_return( + () => invoke($0, `f64x2.relaxed_madd_cmp`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2, 2]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:175 +assert_return( + () => invoke($0, `f64x2.relaxed_madd_cmp`, [ + f64x2([1.0000000009313226, 1.0000000009313226]), + f64x2([1.0000001192092896, 1.0000001192092896]), + f64x2([-1.0000001201406121, -1.0000001201406121]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:181 +assert_return( + () => invoke($0, `f64x2.relaxed_nmadd_cmp`, [ + f64x2([-1.0000000009313226, -1.0000000009313226]), + f64x2([1.0000001192092896, 1.0000001192092896]), + f64x2([-1.0000001201406121, -1.0000001201406121]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_madd_nmadd.wast:187 +assert_return( + () => invoke($0, `f64x2.relaxed_nmadd_cmp`, [ + f64x2([1.0000000009313226, 1.0000000009313226]), + f64x2([-1.0000001192092896, -1.0000001192092896]), + f64x2([-1.0000001201406121, -1.0000001201406121]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); diff --git a/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_min_max.wast.js b/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_min_max.wast.js new file mode 100644 index 0000000000..9123d605d9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/relaxed-simd/relaxed_min_max.wast.js @@ -0,0 +1,663 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/relaxed-simd/relaxed_min_max.wast + +// ./test/core/relaxed-simd/relaxed_min_max.wast:4 +let $0 = instantiate(`(module + (func (export "f32x4.relaxed_min") (param v128 v128) (result v128) (f32x4.relaxed_min (local.get 0) (local.get 1))) + (func (export "f32x4.relaxed_max") (param v128 v128) (result v128) (f32x4.relaxed_max (local.get 0) (local.get 1))) + (func (export "f64x2.relaxed_min") (param v128 v128) (result v128) (f64x2.relaxed_min (local.get 0) (local.get 1))) + (func (export "f64x2.relaxed_max") (param v128 v128) (result v128) (f64x2.relaxed_max (local.get 0) (local.get 1))) + + (func (export "f32x4.relaxed_min_cmp") (param v128 v128) (result v128) + (i32x4.eq + (f32x4.relaxed_min (local.get 0) (local.get 1)) + (f32x4.relaxed_min (local.get 0) (local.get 1)))) + (func (export "f32x4.relaxed_max_cmp") (param v128 v128) (result v128) + (i32x4.eq + (f32x4.relaxed_max (local.get 0) (local.get 1)) + (f32x4.relaxed_max (local.get 0) (local.get 1)))) + (func (export "f64x2.relaxed_min_cmp") (param v128 v128) (result v128) + (i64x2.eq + (f64x2.relaxed_min (local.get 0) (local.get 1)) + (f64x2.relaxed_min (local.get 0) (local.get 1)))) + (func (export "f64x2.relaxed_max_cmp") (param v128 v128) (result v128) + (i64x2.eq + (f64x2.relaxed_max (local.get 0) (local.get 1)) + (f64x2.relaxed_max (local.get 0) (local.get 1)))) +)`); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:28 +assert_return( + () => invoke($0, `f32x4.relaxed_min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + either( + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 0), + value("f32", 0), + ), + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + `canonical_nan`, + `canonical_nan`, + ), + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:36 +assert_return( + () => invoke($0, `f32x4.relaxed_min`, [f32x4([0, -0, 0, -0]), f32x4([-0, 0, 0, -0])]), + [ + either( + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", 0), + value("f32", -0), + ), + new F32x4Pattern( + value("f32", 0), + value("f32", -0), + value("f32", 0), + value("f32", -0), + ), + new F32x4Pattern( + value("f32", -0), + value("f32", 0), + value("f32", 0), + value("f32", -0), + ), + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", 0), + value("f32", -0), + ), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:44 +assert_return( + () => invoke($0, `f32x4.relaxed_max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + either( + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 0), + value("f32", 0), + ), + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + `canonical_nan`, + `canonical_nan`, + ), + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:52 +assert_return( + () => invoke($0, `f32x4.relaxed_max`, [f32x4([0, -0, 0, -0]), f32x4([-0, 0, 0, -0])]), + [ + either( + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", -0), + ), + new F32x4Pattern( + value("f32", 0), + value("f32", -0), + value("f32", 0), + value("f32", -0), + ), + new F32x4Pattern( + value("f32", -0), + value("f32", 0), + value("f32", 0), + value("f32", -0), + ), + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", 0), + value("f32", -0), + ), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:60 +assert_return( + () => invoke($0, `f64x2.relaxed_min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [ + either( + new F64x2Pattern(`canonical_nan`, `canonical_nan`), + new F64x2Pattern(`canonical_nan`, `canonical_nan`), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:68 +assert_return( + () => invoke($0, `f64x2.relaxed_min`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + either( + new F64x2Pattern(`canonical_nan`, `canonical_nan`), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + new F64x2Pattern(`canonical_nan`, `canonical_nan`), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:76 +assert_return( + () => invoke($0, `f64x2.relaxed_min`, [f64x2([0, -0]), f64x2([-0, 0])]), + [ + either( + new F64x2Pattern(value("f64", -0), value("f64", -0)), + new F64x2Pattern(value("f64", 0), value("f64", -0)), + new F64x2Pattern(value("f64", -0), value("f64", 0)), + new F64x2Pattern(value("f64", -0), value("f64", -0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:84 +assert_return( + () => invoke($0, `f64x2.relaxed_min`, [f64x2([0, -0]), f64x2([0, -0])]), + [ + either( + new F64x2Pattern(value("f64", 0), value("f64", -0)), + new F64x2Pattern(value("f64", 0), value("f64", -0)), + new F64x2Pattern(value("f64", 0), value("f64", -0)), + new F64x2Pattern(value("f64", 0), value("f64", -0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:92 +assert_return( + () => invoke($0, `f64x2.relaxed_max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [ + either( + new F64x2Pattern(`canonical_nan`, `canonical_nan`), + new F64x2Pattern(`canonical_nan`, `canonical_nan`), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:100 +assert_return( + () => invoke($0, `f64x2.relaxed_max`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + either( + new F64x2Pattern(`canonical_nan`, `canonical_nan`), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + new F64x2Pattern(`canonical_nan`, `canonical_nan`), + new F64x2Pattern(value("f64", 0), value("f64", 0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:108 +assert_return( + () => invoke($0, `f64x2.relaxed_max`, [f64x2([0, -0]), f64x2([-0, 0])]), + [ + either( + new F64x2Pattern(value("f64", 0), value("f64", 0)), + new F64x2Pattern(value("f64", 0), value("f64", -0)), + new F64x2Pattern(value("f64", -0), value("f64", 0)), + new F64x2Pattern(value("f64", -0), value("f64", -0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:116 +assert_return( + () => invoke($0, `f64x2.relaxed_max`, [f64x2([0, -0]), f64x2([0, -0])]), + [ + either( + new F64x2Pattern(value("f64", 0), value("f64", -0)), + new F64x2Pattern(value("f64", 0), value("f64", -0)), + new F64x2Pattern(value("f64", 0), value("f64", -0)), + new F64x2Pattern(value("f64", 0), value("f64", -0)), + ), + ], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:126 +assert_return( + () => invoke($0, `f32x4.relaxed_min_cmp`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:131 +assert_return( + () => invoke($0, `f32x4.relaxed_min_cmp`, [ + f32x4([0, -0, 0, -0]), + f32x4([-0, 0, 0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:136 +assert_return( + () => invoke($0, `f32x4.relaxed_max_cmp`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:141 +assert_return( + () => invoke($0, `f32x4.relaxed_max_cmp`, [ + f32x4([0, -0, 0, -0]), + f32x4([-0, 0, 0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:146 +assert_return( + () => invoke($0, `f64x2.relaxed_min_cmp`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:151 +assert_return( + () => invoke($0, `f64x2.relaxed_min_cmp`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:156 +assert_return( + () => invoke($0, `f64x2.relaxed_min_cmp`, [f64x2([0, -0]), f64x2([-0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:161 +assert_return( + () => invoke($0, `f64x2.relaxed_min_cmp`, [f64x2([0, -0]), f64x2([0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:166 +assert_return( + () => invoke($0, `f64x2.relaxed_max_cmp`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:171 +assert_return( + () => invoke($0, `f64x2.relaxed_max_cmp`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:176 +assert_return( + () => invoke($0, `f64x2.relaxed_max_cmp`, [f64x2([0, -0]), f64x2([-0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/relaxed-simd/relaxed_min_max.wast:181 +assert_return( + () => invoke($0, `f64x2.relaxed_max_cmp`, [f64x2([0, -0]), f64x2([0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/address.wast.js b/js/src/jit-test/tests/wasm/spec/spec/address.wast.js new file mode 100644 index 0000000000..317c5fdc07 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/address.wast.js @@ -0,0 +1,1082 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/address.wast + +// ./test/core/address.wast:3 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "abcdefghijklmnopqrstuvwxyz") + + (func (export "8u_good1") (param $$i i32) (result i32) + (i32.load8_u offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good2") (param $$i i32) (result i32) + (i32.load8_u align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good3") (param $$i i32) (result i32) + (i32.load8_u offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8u_good4") (param $$i i32) (result i32) + (i32.load8_u offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8u_good5") (param $$i i32) (result i32) + (i32.load8_u offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "8s_good1") (param $$i i32) (result i32) + (i32.load8_s offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good2") (param $$i i32) (result i32) + (i32.load8_s align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good3") (param $$i i32) (result i32) + (i32.load8_s offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8s_good4") (param $$i i32) (result i32) + (i32.load8_s offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8s_good5") (param $$i i32) (result i32) + (i32.load8_s offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "16u_good1") (param $$i i32) (result i32) + (i32.load16_u offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good2") (param $$i i32) (result i32) + (i32.load16_u align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good3") (param $$i i32) (result i32) + (i32.load16_u offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16u_good4") (param $$i i32) (result i32) + (i32.load16_u offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16u_good5") (param $$i i32) (result i32) + (i32.load16_u offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "16s_good1") (param $$i i32) (result i32) + (i32.load16_s offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good2") (param $$i i32) (result i32) + (i32.load16_s align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good3") (param $$i i32) (result i32) + (i32.load16_s offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16s_good4") (param $$i i32) (result i32) + (i32.load16_s offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16s_good5") (param $$i i32) (result i32) + (i32.load16_s offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "32_good1") (param $$i i32) (result i32) + (i32.load offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32_good2") (param $$i i32) (result i32) + (i32.load align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32_good3") (param $$i i32) (result i32) + (i32.load offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32_good4") (param $$i i32) (result i32) + (i32.load offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32_good5") (param $$i i32) (result i32) + (i32.load offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "8u_bad") (param $$i i32) + (drop (i32.load8_u offset=4294967295 (local.get $$i))) + ) + (func (export "8s_bad") (param $$i i32) + (drop (i32.load8_s offset=4294967295 (local.get $$i))) + ) + (func (export "16u_bad") (param $$i i32) + (drop (i32.load16_u offset=4294967295 (local.get $$i))) + ) + (func (export "16s_bad") (param $$i i32) + (drop (i32.load16_s offset=4294967295 (local.get $$i))) + ) + (func (export "32_bad") (param $$i i32) + (drop (i32.load offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/address.wast:104 +assert_return(() => invoke($0, `8u_good1`, [0]), [value("i32", 97)]); + +// ./test/core/address.wast:105 +assert_return(() => invoke($0, `8u_good2`, [0]), [value("i32", 97)]); + +// ./test/core/address.wast:106 +assert_return(() => invoke($0, `8u_good3`, [0]), [value("i32", 98)]); + +// ./test/core/address.wast:107 +assert_return(() => invoke($0, `8u_good4`, [0]), [value("i32", 99)]); + +// ./test/core/address.wast:108 +assert_return(() => invoke($0, `8u_good5`, [0]), [value("i32", 122)]); + +// ./test/core/address.wast:110 +assert_return(() => invoke($0, `8s_good1`, [0]), [value("i32", 97)]); + +// ./test/core/address.wast:111 +assert_return(() => invoke($0, `8s_good2`, [0]), [value("i32", 97)]); + +// ./test/core/address.wast:112 +assert_return(() => invoke($0, `8s_good3`, [0]), [value("i32", 98)]); + +// ./test/core/address.wast:113 +assert_return(() => invoke($0, `8s_good4`, [0]), [value("i32", 99)]); + +// ./test/core/address.wast:114 +assert_return(() => invoke($0, `8s_good5`, [0]), [value("i32", 122)]); + +// ./test/core/address.wast:116 +assert_return(() => invoke($0, `16u_good1`, [0]), [value("i32", 25185)]); + +// ./test/core/address.wast:117 +assert_return(() => invoke($0, `16u_good2`, [0]), [value("i32", 25185)]); + +// ./test/core/address.wast:118 +assert_return(() => invoke($0, `16u_good3`, [0]), [value("i32", 25442)]); + +// ./test/core/address.wast:119 +assert_return(() => invoke($0, `16u_good4`, [0]), [value("i32", 25699)]); + +// ./test/core/address.wast:120 +assert_return(() => invoke($0, `16u_good5`, [0]), [value("i32", 122)]); + +// ./test/core/address.wast:122 +assert_return(() => invoke($0, `16s_good1`, [0]), [value("i32", 25185)]); + +// ./test/core/address.wast:123 +assert_return(() => invoke($0, `16s_good2`, [0]), [value("i32", 25185)]); + +// ./test/core/address.wast:124 +assert_return(() => invoke($0, `16s_good3`, [0]), [value("i32", 25442)]); + +// ./test/core/address.wast:125 +assert_return(() => invoke($0, `16s_good4`, [0]), [value("i32", 25699)]); + +// ./test/core/address.wast:126 +assert_return(() => invoke($0, `16s_good5`, [0]), [value("i32", 122)]); + +// ./test/core/address.wast:128 +assert_return(() => invoke($0, `32_good1`, [0]), [value("i32", 1684234849)]); + +// ./test/core/address.wast:129 +assert_return(() => invoke($0, `32_good2`, [0]), [value("i32", 1684234849)]); + +// ./test/core/address.wast:130 +assert_return(() => invoke($0, `32_good3`, [0]), [value("i32", 1701077858)]); + +// ./test/core/address.wast:131 +assert_return(() => invoke($0, `32_good4`, [0]), [value("i32", 1717920867)]); + +// ./test/core/address.wast:132 +assert_return(() => invoke($0, `32_good5`, [0]), [value("i32", 122)]); + +// ./test/core/address.wast:134 +assert_return(() => invoke($0, `8u_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:135 +assert_return(() => invoke($0, `8u_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:136 +assert_return(() => invoke($0, `8u_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:137 +assert_return(() => invoke($0, `8u_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:138 +assert_return(() => invoke($0, `8u_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:140 +assert_return(() => invoke($0, `8s_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:141 +assert_return(() => invoke($0, `8s_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:142 +assert_return(() => invoke($0, `8s_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:143 +assert_return(() => invoke($0, `8s_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:144 +assert_return(() => invoke($0, `8s_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:146 +assert_return(() => invoke($0, `16u_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:147 +assert_return(() => invoke($0, `16u_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:148 +assert_return(() => invoke($0, `16u_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:149 +assert_return(() => invoke($0, `16u_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:150 +assert_return(() => invoke($0, `16u_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:152 +assert_return(() => invoke($0, `16s_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:153 +assert_return(() => invoke($0, `16s_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:154 +assert_return(() => invoke($0, `16s_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:155 +assert_return(() => invoke($0, `16s_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:156 +assert_return(() => invoke($0, `16s_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:158 +assert_return(() => invoke($0, `32_good1`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:159 +assert_return(() => invoke($0, `32_good2`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:160 +assert_return(() => invoke($0, `32_good3`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:161 +assert_return(() => invoke($0, `32_good4`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:162 +assert_return(() => invoke($0, `32_good5`, [65507]), [value("i32", 0)]); + +// ./test/core/address.wast:164 +assert_return(() => invoke($0, `8u_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:165 +assert_return(() => invoke($0, `8u_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:166 +assert_return(() => invoke($0, `8u_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:167 +assert_return(() => invoke($0, `8u_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:168 +assert_return(() => invoke($0, `8u_good5`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:170 +assert_return(() => invoke($0, `8s_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:171 +assert_return(() => invoke($0, `8s_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:172 +assert_return(() => invoke($0, `8s_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:173 +assert_return(() => invoke($0, `8s_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:174 +assert_return(() => invoke($0, `8s_good5`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:176 +assert_return(() => invoke($0, `16u_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:177 +assert_return(() => invoke($0, `16u_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:178 +assert_return(() => invoke($0, `16u_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:179 +assert_return(() => invoke($0, `16u_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:180 +assert_return(() => invoke($0, `16u_good5`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:182 +assert_return(() => invoke($0, `16s_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:183 +assert_return(() => invoke($0, `16s_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:184 +assert_return(() => invoke($0, `16s_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:185 +assert_return(() => invoke($0, `16s_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:186 +assert_return(() => invoke($0, `16s_good5`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:188 +assert_return(() => invoke($0, `32_good1`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:189 +assert_return(() => invoke($0, `32_good2`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:190 +assert_return(() => invoke($0, `32_good3`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:191 +assert_return(() => invoke($0, `32_good4`, [65508]), [value("i32", 0)]); + +// ./test/core/address.wast:192 +assert_trap(() => invoke($0, `32_good5`, [65508]), `out of bounds memory access`); + +// ./test/core/address.wast:194 +assert_trap(() => invoke($0, `8u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:195 +assert_trap(() => invoke($0, `8s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:196 +assert_trap(() => invoke($0, `16u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:197 +assert_trap(() => invoke($0, `16s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:198 +assert_trap(() => invoke($0, `32_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:199 +assert_trap(() => invoke($0, `32_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:201 +assert_trap(() => invoke($0, `8u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:202 +assert_trap(() => invoke($0, `8s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:203 +assert_trap(() => invoke($0, `16u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:204 +assert_trap(() => invoke($0, `16s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:205 +assert_trap(() => invoke($0, `32_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:207 +assert_trap(() => invoke($0, `8u_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:208 +assert_trap(() => invoke($0, `8s_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:209 +assert_trap(() => invoke($0, `16u_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:210 +assert_trap(() => invoke($0, `16s_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:211 +assert_trap(() => invoke($0, `32_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:213 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i32.load offset=4294967296 (i32.const 0)))) `), + `i32 constant`, +); + +// ./test/core/address.wast:223 +let $1 = instantiate(`(module + (memory 1) + (data (i32.const 0) "abcdefghijklmnopqrstuvwxyz") + + (func (export "8u_good1") (param $$i i32) (result i64) + (i64.load8_u offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good2") (param $$i i32) (result i64) + (i64.load8_u align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8u_good3") (param $$i i32) (result i64) + (i64.load8_u offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8u_good4") (param $$i i32) (result i64) + (i64.load8_u offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8u_good5") (param $$i i32) (result i64) + (i64.load8_u offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "8s_good1") (param $$i i32) (result i64) + (i64.load8_s offset=0 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good2") (param $$i i32) (result i64) + (i64.load8_s align=1 (local.get $$i)) ;; 97 'a' + ) + (func (export "8s_good3") (param $$i i32) (result i64) + (i64.load8_s offset=1 align=1 (local.get $$i)) ;; 98 'b' + ) + (func (export "8s_good4") (param $$i i32) (result i64) + (i64.load8_s offset=2 align=1 (local.get $$i)) ;; 99 'c' + ) + (func (export "8s_good5") (param $$i i32) (result i64) + (i64.load8_s offset=25 align=1 (local.get $$i)) ;; 122 'z' + ) + + (func (export "16u_good1") (param $$i i32) (result i64) + (i64.load16_u offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good2") (param $$i i32) (result i64) + (i64.load16_u align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16u_good3") (param $$i i32) (result i64) + (i64.load16_u offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16u_good4") (param $$i i32) (result i64) + (i64.load16_u offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16u_good5") (param $$i i32) (result i64) + (i64.load16_u offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "16s_good1") (param $$i i32) (result i64) + (i64.load16_s offset=0 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good2") (param $$i i32) (result i64) + (i64.load16_s align=1 (local.get $$i)) ;; 25185 'ab' + ) + (func (export "16s_good3") (param $$i i32) (result i64) + (i64.load16_s offset=1 align=1 (local.get $$i)) ;; 25442 'bc' + ) + (func (export "16s_good4") (param $$i i32) (result i64) + (i64.load16_s offset=2 align=2 (local.get $$i)) ;; 25699 'cd' + ) + (func (export "16s_good5") (param $$i i32) (result i64) + (i64.load16_s offset=25 align=2 (local.get $$i)) ;; 122 'z\\0' + ) + + (func (export "32u_good1") (param $$i i32) (result i64) + (i64.load32_u offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32u_good2") (param $$i i32) (result i64) + (i64.load32_u align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32u_good3") (param $$i i32) (result i64) + (i64.load32_u offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32u_good4") (param $$i i32) (result i64) + (i64.load32_u offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32u_good5") (param $$i i32) (result i64) + (i64.load32_u offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "32s_good1") (param $$i i32) (result i64) + (i64.load32_s offset=0 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32s_good2") (param $$i i32) (result i64) + (i64.load32_s align=1 (local.get $$i)) ;; 1684234849 'abcd' + ) + (func (export "32s_good3") (param $$i i32) (result i64) + (i64.load32_s offset=1 align=1 (local.get $$i)) ;; 1701077858 'bcde' + ) + (func (export "32s_good4") (param $$i i32) (result i64) + (i64.load32_s offset=2 align=2 (local.get $$i)) ;; 1717920867 'cdef' + ) + (func (export "32s_good5") (param $$i i32) (result i64) + (i64.load32_s offset=25 align=4 (local.get $$i)) ;; 122 'z\\0\\0\\0' + ) + + (func (export "64_good1") (param $$i i32) (result i64) + (i64.load offset=0 (local.get $$i)) ;; 0x6867666564636261 'abcdefgh' + ) + (func (export "64_good2") (param $$i i32) (result i64) + (i64.load align=1 (local.get $$i)) ;; 0x6867666564636261 'abcdefgh' + ) + (func (export "64_good3") (param $$i i32) (result i64) + (i64.load offset=1 align=1 (local.get $$i)) ;; 0x6968676665646362 'bcdefghi' + ) + (func (export "64_good4") (param $$i i32) (result i64) + (i64.load offset=2 align=2 (local.get $$i)) ;; 0x6a69686766656463 'cdefghij' + ) + (func (export "64_good5") (param $$i i32) (result i64) + (i64.load offset=25 align=8 (local.get $$i)) ;; 122 'z\\0\\0\\0\\0\\0\\0\\0' + ) + + (func (export "8u_bad") (param $$i i32) + (drop (i64.load8_u offset=4294967295 (local.get $$i))) + ) + (func (export "8s_bad") (param $$i i32) + (drop (i64.load8_s offset=4294967295 (local.get $$i))) + ) + (func (export "16u_bad") (param $$i i32) + (drop (i64.load16_u offset=4294967295 (local.get $$i))) + ) + (func (export "16s_bad") (param $$i i32) + (drop (i64.load16_s offset=4294967295 (local.get $$i))) + ) + (func (export "32u_bad") (param $$i i32) + (drop (i64.load32_u offset=4294967295 (local.get $$i))) + ) + (func (export "32s_bad") (param $$i i32) + (drop (i64.load32_s offset=4294967295 (local.get $$i))) + ) + (func (export "64_bad") (param $$i i32) + (drop (i64.load offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/address.wast:362 +assert_return(() => invoke($1, `8u_good1`, [0]), [value("i64", 97n)]); + +// ./test/core/address.wast:363 +assert_return(() => invoke($1, `8u_good2`, [0]), [value("i64", 97n)]); + +// ./test/core/address.wast:364 +assert_return(() => invoke($1, `8u_good3`, [0]), [value("i64", 98n)]); + +// ./test/core/address.wast:365 +assert_return(() => invoke($1, `8u_good4`, [0]), [value("i64", 99n)]); + +// ./test/core/address.wast:366 +assert_return(() => invoke($1, `8u_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/address.wast:368 +assert_return(() => invoke($1, `8s_good1`, [0]), [value("i64", 97n)]); + +// ./test/core/address.wast:369 +assert_return(() => invoke($1, `8s_good2`, [0]), [value("i64", 97n)]); + +// ./test/core/address.wast:370 +assert_return(() => invoke($1, `8s_good3`, [0]), [value("i64", 98n)]); + +// ./test/core/address.wast:371 +assert_return(() => invoke($1, `8s_good4`, [0]), [value("i64", 99n)]); + +// ./test/core/address.wast:372 +assert_return(() => invoke($1, `8s_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/address.wast:374 +assert_return(() => invoke($1, `16u_good1`, [0]), [value("i64", 25185n)]); + +// ./test/core/address.wast:375 +assert_return(() => invoke($1, `16u_good2`, [0]), [value("i64", 25185n)]); + +// ./test/core/address.wast:376 +assert_return(() => invoke($1, `16u_good3`, [0]), [value("i64", 25442n)]); + +// ./test/core/address.wast:377 +assert_return(() => invoke($1, `16u_good4`, [0]), [value("i64", 25699n)]); + +// ./test/core/address.wast:378 +assert_return(() => invoke($1, `16u_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/address.wast:380 +assert_return(() => invoke($1, `16s_good1`, [0]), [value("i64", 25185n)]); + +// ./test/core/address.wast:381 +assert_return(() => invoke($1, `16s_good2`, [0]), [value("i64", 25185n)]); + +// ./test/core/address.wast:382 +assert_return(() => invoke($1, `16s_good3`, [0]), [value("i64", 25442n)]); + +// ./test/core/address.wast:383 +assert_return(() => invoke($1, `16s_good4`, [0]), [value("i64", 25699n)]); + +// ./test/core/address.wast:384 +assert_return(() => invoke($1, `16s_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/address.wast:386 +assert_return(() => invoke($1, `32u_good1`, [0]), [value("i64", 1684234849n)]); + +// ./test/core/address.wast:387 +assert_return(() => invoke($1, `32u_good2`, [0]), [value("i64", 1684234849n)]); + +// ./test/core/address.wast:388 +assert_return(() => invoke($1, `32u_good3`, [0]), [value("i64", 1701077858n)]); + +// ./test/core/address.wast:389 +assert_return(() => invoke($1, `32u_good4`, [0]), [value("i64", 1717920867n)]); + +// ./test/core/address.wast:390 +assert_return(() => invoke($1, `32u_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/address.wast:392 +assert_return(() => invoke($1, `32s_good1`, [0]), [value("i64", 1684234849n)]); + +// ./test/core/address.wast:393 +assert_return(() => invoke($1, `32s_good2`, [0]), [value("i64", 1684234849n)]); + +// ./test/core/address.wast:394 +assert_return(() => invoke($1, `32s_good3`, [0]), [value("i64", 1701077858n)]); + +// ./test/core/address.wast:395 +assert_return(() => invoke($1, `32s_good4`, [0]), [value("i64", 1717920867n)]); + +// ./test/core/address.wast:396 +assert_return(() => invoke($1, `32s_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/address.wast:398 +assert_return(() => invoke($1, `64_good1`, [0]), [value("i64", 7523094288207667809n)]); + +// ./test/core/address.wast:399 +assert_return(() => invoke($1, `64_good2`, [0]), [value("i64", 7523094288207667809n)]); + +// ./test/core/address.wast:400 +assert_return(() => invoke($1, `64_good3`, [0]), [value("i64", 7595434461045744482n)]); + +// ./test/core/address.wast:401 +assert_return(() => invoke($1, `64_good4`, [0]), [value("i64", 7667774633883821155n)]); + +// ./test/core/address.wast:402 +assert_return(() => invoke($1, `64_good5`, [0]), [value("i64", 122n)]); + +// ./test/core/address.wast:404 +assert_return(() => invoke($1, `8u_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:405 +assert_return(() => invoke($1, `8u_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:406 +assert_return(() => invoke($1, `8u_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:407 +assert_return(() => invoke($1, `8u_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:408 +assert_return(() => invoke($1, `8u_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:410 +assert_return(() => invoke($1, `8s_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:411 +assert_return(() => invoke($1, `8s_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:412 +assert_return(() => invoke($1, `8s_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:413 +assert_return(() => invoke($1, `8s_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:414 +assert_return(() => invoke($1, `8s_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:416 +assert_return(() => invoke($1, `16u_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:417 +assert_return(() => invoke($1, `16u_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:418 +assert_return(() => invoke($1, `16u_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:419 +assert_return(() => invoke($1, `16u_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:420 +assert_return(() => invoke($1, `16u_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:422 +assert_return(() => invoke($1, `16s_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:423 +assert_return(() => invoke($1, `16s_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:424 +assert_return(() => invoke($1, `16s_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:425 +assert_return(() => invoke($1, `16s_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:426 +assert_return(() => invoke($1, `16s_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:428 +assert_return(() => invoke($1, `32u_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:429 +assert_return(() => invoke($1, `32u_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:430 +assert_return(() => invoke($1, `32u_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:431 +assert_return(() => invoke($1, `32u_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:432 +assert_return(() => invoke($1, `32u_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:434 +assert_return(() => invoke($1, `32s_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:435 +assert_return(() => invoke($1, `32s_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:436 +assert_return(() => invoke($1, `32s_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:437 +assert_return(() => invoke($1, `32s_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:438 +assert_return(() => invoke($1, `32s_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:440 +assert_return(() => invoke($1, `64_good1`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:441 +assert_return(() => invoke($1, `64_good2`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:442 +assert_return(() => invoke($1, `64_good3`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:443 +assert_return(() => invoke($1, `64_good4`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:444 +assert_return(() => invoke($1, `64_good5`, [65503]), [value("i64", 0n)]); + +// ./test/core/address.wast:446 +assert_return(() => invoke($1, `8u_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:447 +assert_return(() => invoke($1, `8u_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:448 +assert_return(() => invoke($1, `8u_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:449 +assert_return(() => invoke($1, `8u_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:450 +assert_return(() => invoke($1, `8u_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:452 +assert_return(() => invoke($1, `8s_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:453 +assert_return(() => invoke($1, `8s_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:454 +assert_return(() => invoke($1, `8s_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:455 +assert_return(() => invoke($1, `8s_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:456 +assert_return(() => invoke($1, `8s_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:458 +assert_return(() => invoke($1, `16u_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:459 +assert_return(() => invoke($1, `16u_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:460 +assert_return(() => invoke($1, `16u_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:461 +assert_return(() => invoke($1, `16u_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:462 +assert_return(() => invoke($1, `16u_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:464 +assert_return(() => invoke($1, `16s_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:465 +assert_return(() => invoke($1, `16s_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:466 +assert_return(() => invoke($1, `16s_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:467 +assert_return(() => invoke($1, `16s_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:468 +assert_return(() => invoke($1, `16s_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:470 +assert_return(() => invoke($1, `32u_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:471 +assert_return(() => invoke($1, `32u_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:472 +assert_return(() => invoke($1, `32u_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:473 +assert_return(() => invoke($1, `32u_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:474 +assert_return(() => invoke($1, `32u_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:476 +assert_return(() => invoke($1, `32s_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:477 +assert_return(() => invoke($1, `32s_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:478 +assert_return(() => invoke($1, `32s_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:479 +assert_return(() => invoke($1, `32s_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:480 +assert_return(() => invoke($1, `32s_good5`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:482 +assert_return(() => invoke($1, `64_good1`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:483 +assert_return(() => invoke($1, `64_good2`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:484 +assert_return(() => invoke($1, `64_good3`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:485 +assert_return(() => invoke($1, `64_good4`, [65504]), [value("i64", 0n)]); + +// ./test/core/address.wast:486 +assert_trap(() => invoke($1, `64_good5`, [65504]), `out of bounds memory access`); + +// ./test/core/address.wast:488 +assert_trap(() => invoke($1, `8u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:489 +assert_trap(() => invoke($1, `8s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:490 +assert_trap(() => invoke($1, `16u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:491 +assert_trap(() => invoke($1, `16s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:492 +assert_trap(() => invoke($1, `32u_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:493 +assert_trap(() => invoke($1, `32s_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:494 +assert_trap(() => invoke($1, `64_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:496 +assert_trap(() => invoke($1, `8u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:497 +assert_trap(() => invoke($1, `8s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:498 +assert_trap(() => invoke($1, `16u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:499 +assert_trap(() => invoke($1, `16s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:500 +assert_trap(() => invoke($1, `32u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:501 +assert_trap(() => invoke($1, `32s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:502 +assert_trap(() => invoke($1, `64_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:504 +assert_trap(() => invoke($1, `8u_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:505 +assert_trap(() => invoke($1, `8s_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:506 +assert_trap(() => invoke($1, `16u_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:507 +assert_trap(() => invoke($1, `16s_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:508 +assert_trap(() => invoke($1, `32u_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:509 +assert_trap(() => invoke($1, `32s_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:510 +assert_trap(() => invoke($1, `64_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:514 +let $2 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\00\\00\\00\\00\\00\\a0\\7f\\01\\00\\d0\\7f") + + (func (export "32_good1") (param $$i i32) (result f32) + (f32.load offset=0 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00' + ) + (func (export "32_good2") (param $$i i32) (result f32) + (f32.load align=1 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00' + ) + (func (export "32_good3") (param $$i i32) (result f32) + (f32.load offset=1 align=1 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00' + ) + (func (export "32_good4") (param $$i i32) (result f32) + (f32.load offset=2 align=2 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00' + ) + (func (export "32_good5") (param $$i i32) (result f32) + (f32.load offset=8 align=4 (local.get $$i)) ;; nan:0x500001 '\\01\\00\\d0\\7f' + ) + (func (export "32_bad") (param $$i i32) + (drop (f32.load offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/address.wast:538 +assert_return(() => invoke($2, `32_good1`, [0]), [value("f32", 0)]); + +// ./test/core/address.wast:539 +assert_return(() => invoke($2, `32_good2`, [0]), [value("f32", 0)]); + +// ./test/core/address.wast:540 +assert_return(() => invoke($2, `32_good3`, [0]), [value("f32", 0)]); + +// ./test/core/address.wast:541 +assert_return(() => invoke($2, `32_good4`, [0]), [value("f32", 0)]); + +// ./test/core/address.wast:542 +assert_return(() => invoke($2, `32_good5`, [0]), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/address.wast:544 +assert_return(() => invoke($2, `32_good1`, [65524]), [value("f32", 0)]); + +// ./test/core/address.wast:545 +assert_return(() => invoke($2, `32_good2`, [65524]), [value("f32", 0)]); + +// ./test/core/address.wast:546 +assert_return(() => invoke($2, `32_good3`, [65524]), [value("f32", 0)]); + +// ./test/core/address.wast:547 +assert_return(() => invoke($2, `32_good4`, [65524]), [value("f32", 0)]); + +// ./test/core/address.wast:548 +assert_return(() => invoke($2, `32_good5`, [65524]), [value("f32", 0)]); + +// ./test/core/address.wast:550 +assert_return(() => invoke($2, `32_good1`, [65525]), [value("f32", 0)]); + +// ./test/core/address.wast:551 +assert_return(() => invoke($2, `32_good2`, [65525]), [value("f32", 0)]); + +// ./test/core/address.wast:552 +assert_return(() => invoke($2, `32_good3`, [65525]), [value("f32", 0)]); + +// ./test/core/address.wast:553 +assert_return(() => invoke($2, `32_good4`, [65525]), [value("f32", 0)]); + +// ./test/core/address.wast:554 +assert_trap(() => invoke($2, `32_good5`, [65525]), `out of bounds memory access`); + +// ./test/core/address.wast:556 +assert_trap(() => invoke($2, `32_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:557 +assert_trap(() => invoke($2, `32_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:559 +assert_trap(() => invoke($2, `32_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:560 +assert_trap(() => invoke($2, `32_bad`, [1]), `out of bounds memory access`); + +// ./test/core/address.wast:564 +let $3 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\f4\\7f\\01\\00\\00\\00\\00\\00\\fc\\7f") + + (func (export "64_good1") (param $$i i32) (result f64) + (f64.load offset=0 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00\\00\\00\\00\\00' + ) + (func (export "64_good2") (param $$i i32) (result f64) + (f64.load align=1 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00\\00\\00\\00\\00' + ) + (func (export "64_good3") (param $$i i32) (result f64) + (f64.load offset=1 align=1 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00\\00\\00\\00\\00' + ) + (func (export "64_good4") (param $$i i32) (result f64) + (f64.load offset=2 align=2 (local.get $$i)) ;; 0.0 '\\00\\00\\00\\00\\00\\00\\00\\00' + ) + (func (export "64_good5") (param $$i i32) (result f64) + (f64.load offset=18 align=8 (local.get $$i)) ;; nan:0xc000000000001 '\\01\\00\\00\\00\\00\\00\\fc\\7f' + ) + (func (export "64_bad") (param $$i i32) + (drop (f64.load offset=4294967295 (local.get $$i))) + ) +)`); + +// ./test/core/address.wast:588 +assert_return(() => invoke($3, `64_good1`, [0]), [value("f64", 0)]); + +// ./test/core/address.wast:589 +assert_return(() => invoke($3, `64_good2`, [0]), [value("f64", 0)]); + +// ./test/core/address.wast:590 +assert_return(() => invoke($3, `64_good3`, [0]), [value("f64", 0)]); + +// ./test/core/address.wast:591 +assert_return(() => invoke($3, `64_good4`, [0]), [value("f64", 0)]); + +// ./test/core/address.wast:592 +assert_return( + () => invoke($3, `64_good5`, [0]), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); + +// ./test/core/address.wast:594 +assert_return(() => invoke($3, `64_good1`, [65510]), [value("f64", 0)]); + +// ./test/core/address.wast:595 +assert_return(() => invoke($3, `64_good2`, [65510]), [value("f64", 0)]); + +// ./test/core/address.wast:596 +assert_return(() => invoke($3, `64_good3`, [65510]), [value("f64", 0)]); + +// ./test/core/address.wast:597 +assert_return(() => invoke($3, `64_good4`, [65510]), [value("f64", 0)]); + +// ./test/core/address.wast:598 +assert_return(() => invoke($3, `64_good5`, [65510]), [value("f64", 0)]); + +// ./test/core/address.wast:600 +assert_return(() => invoke($3, `64_good1`, [65511]), [value("f64", 0)]); + +// ./test/core/address.wast:601 +assert_return(() => invoke($3, `64_good2`, [65511]), [value("f64", 0)]); + +// ./test/core/address.wast:602 +assert_return(() => invoke($3, `64_good3`, [65511]), [value("f64", 0)]); + +// ./test/core/address.wast:603 +assert_return(() => invoke($3, `64_good4`, [65511]), [value("f64", 0)]); + +// ./test/core/address.wast:604 +assert_trap(() => invoke($3, `64_good5`, [65511]), `out of bounds memory access`); + +// ./test/core/address.wast:606 +assert_trap(() => invoke($3, `64_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:607 +assert_trap(() => invoke($3, `64_good3`, [-1]), `out of bounds memory access`); + +// ./test/core/address.wast:609 +assert_trap(() => invoke($3, `64_bad`, [0]), `out of bounds memory access`); + +// ./test/core/address.wast:610 +assert_trap(() => invoke($3, `64_bad`, [1]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/block.wast.js b/js/src/jit-test/tests/wasm/spec/spec/block.wast.js new file mode 100644 index 0000000000..17a8db0774 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/block.wast.js @@ -0,0 +1,1878 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/block.wast + +// ./test/core/block.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definition + (memory 1) + + (func $$dummy) + + (func (export "empty") + (block) + (block $$l) + ) + + (func (export "singular") (result i32) + (block (nop)) + (block (result i32) (i32.const 7)) + ) + + (func (export "multi") (result i32) + (block (call $$dummy) (call $$dummy) (call $$dummy) (call $$dummy)) + (block (result i32) + (call $$dummy) (call $$dummy) (call $$dummy) (i32.const 7) (call $$dummy) + ) + (drop) + (block (result i32 i64 i32) + (call $$dummy) (call $$dummy) (call $$dummy) (i32.const 8) (call $$dummy) + (call $$dummy) (call $$dummy) (call $$dummy) (i64.const 7) (call $$dummy) + (call $$dummy) (call $$dummy) (call $$dummy) (i32.const 9) (call $$dummy) + ) + (drop) (drop) + ) + + (func (export "nested") (result i32) + (block (result i32) + (block (call $$dummy) (block) (nop)) + (block (result i32) (call $$dummy) (i32.const 9)) + ) + ) + + (func (export "deep") (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (call $$dummy) (i32.const 150) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + ) + + (func (export "as-select-first") (result i32) + (select (block (result i32) (i32.const 1)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (block (result i32) (i32.const 1)) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (block (result i32) (i32.const 1))) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (block (result i32) (i32.const 1)) (call $$dummy) (call $$dummy)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) (call $$dummy) (block (result i32) (i32.const 1)) (call $$dummy)) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) (call $$dummy) (call $$dummy) (block (result i32) (i32.const 1))) + ) + + (func (export "as-if-condition") + (block (result i32) (i32.const 1)) (if (then (call $$dummy))) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) (then (block (result i32) (i32.const 1))) (else (i32.const 2))) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 1) (then (i32.const 2)) (else (block (result i32) (i32.const 1)))) + ) + + (func (export "as-br_if-first") (result i32) + (block (result i32) (br_if 0 (block (result i32) (i32.const 1)) (i32.const 2))) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) (br_if 0 (i32.const 2) (block (result i32) (i32.const 1)))) + ) + + (func (export "as-br_table-first") (result i32) + (block (result i32) (block (result i32) (i32.const 1)) (i32.const 2) (br_table 0 0)) + ) + (func (export "as-br_table-last") (result i32) + (block (result i32) (i32.const 2) (block (result i32) (i32.const 1)) (br_table 0 0)) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (block (result i32) (i32.const 1)) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (block (result i32) (i32.const 1)) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (block (result i32) (i32.const 0)) + ) + ) + ) + + (func (export "as-store-first") + (block (result i32) (i32.const 1)) (i32.const 1) (i32.store) + ) + (func (export "as-store-last") + (i32.const 10) (block (result i32) (i32.const 1)) (i32.store) + ) + + (func (export "as-memory.grow-value") (result i32) + (memory.grow (block (result i32) (i32.const 1))) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "as-call-value") (result i32) + (call $$f (block (result i32) (i32.const 1))) + ) + (func (export "as-return-value") (result i32) + (block (result i32) (i32.const 1)) (return) + ) + (func (export "as-drop-operand") + (drop (block (result i32) (i32.const 1))) + ) + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (block (result i32) (i32.const 1)))) + ) + (func (export "as-local.set-value") (result i32) + (local i32) (local.set 0 (block (result i32) (i32.const 1))) (local.get 0) + ) + (func (export "as-local.tee-value") (result i32) + (local i32) (local.tee 0 (block (result i32) (i32.const 1))) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (result i32) + (global.set $$a (block (result i32) (i32.const 1))) + (global.get $$a) + ) + + (func (export "as-load-operand") (result i32) + (i32.load (block (result i32) (i32.const 1))) + ) + + (func (export "as-unary-operand") (result i32) + (i32.ctz (block (result i32) (call $$dummy) (i32.const 13))) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (block (result i32) (call $$dummy) (i32.const 3)) + (block (result i32) (call $$dummy) (i32.const 4)) + ) + ) + (func (export "as-test-operand") (result i32) + (i32.eqz (block (result i32) (call $$dummy) (i32.const 13))) + ) + (func (export "as-compare-operand") (result i32) + (f32.gt + (block (result f32) (call $$dummy) (f32.const 3)) + (block (result f32) (call $$dummy) (f32.const 3)) + ) + ) + (func (export "as-binary-operands") (result i32) + (i32.mul + (block (result i32 i32) + (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4) + ) + ) + ) + (func (export "as-compare-operands") (result i32) + (f32.gt + (block (result f32 f32) + (call $$dummy) (f32.const 3) (call $$dummy) (f32.const 3) + ) + ) + ) + (func (export "as-mixed-operands") (result i32) + (block (result i32 i32) + (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4) + ) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "break-bare") (result i32) + (block (br 0) (unreachable)) + (block (br_if 0 (i32.const 1)) (unreachable)) + (block (br_table 0 (i32.const 0)) (unreachable)) + (block (br_table 0 0 0 (i32.const 1)) (unreachable)) + (i32.const 19) + ) + (func (export "break-value") (result i32) + (block (result i32) (br 0 (i32.const 18)) (i32.const 19)) + ) + (func (export "break-multi-value") (result i32 i32 i64) + (block (result i32 i32 i64) + (br 0 (i32.const 18) (i32.const -18) (i64.const 18)) + (i32.const 19) (i32.const -19) (i64.const 19) + ) + ) + (func (export "break-repeated") (result i32) + (block (result i32) + (br 0 (i32.const 18)) + (br 0 (i32.const 19)) + (drop (br_if 0 (i32.const 20) (i32.const 0))) + (drop (br_if 0 (i32.const 20) (i32.const 1))) + (br 0 (i32.const 21)) + (br_table 0 (i32.const 22) (i32.const 4)) + (br_table 0 0 0 (i32.const 23) (i32.const 1)) + (i32.const 21) + ) + ) + (func (export "break-inner") (result i32) + (local i32) + (local.set 0 (i32.const 0)) + (local.set 0 (i32.add (local.get 0) (block (result i32) (block (result i32) (br 1 (i32.const 0x1)))))) + (local.set 0 (i32.add (local.get 0) (block (result i32) (block (br 0)) (i32.const 0x2)))) + (local.set 0 + (i32.add (local.get 0) (block (result i32) (i32.ctz (br 0 (i32.const 0x4))))) + ) + (local.set 0 + (i32.add (local.get 0) (block (result i32) (i32.ctz (block (result i32) (br 1 (i32.const 0x8)))))) + ) + (local.get 0) + ) + + (func (export "param") (result i32) + (i32.const 1) + (block (param i32) (result i32) + (i32.const 2) + (i32.add) + ) + ) + (func (export "params") (result i32) + (i32.const 1) + (i32.const 2) + (block (param i32 i32) (result i32) + (i32.add) + ) + ) + (func (export "params-id") (result i32) + (i32.const 1) + (i32.const 2) + (block (param i32 i32) (result i32 i32)) + (i32.add) + ) + (func (export "param-break") (result i32) + (i32.const 1) + (block (param i32) (result i32) + (i32.const 2) + (i32.add) + (br 0) + ) + ) + (func (export "params-break") (result i32) + (i32.const 1) + (i32.const 2) + (block (param i32 i32) (result i32) + (i32.add) + (br 0) + ) + ) + (func (export "params-id-break") (result i32) + (i32.const 1) + (i32.const 2) + (block (param i32 i32) (result i32 i32) (br 0)) + (i32.add) + ) + + (func (export "effects") (result i32) + (local i32) + (block + (local.set 0 (i32.const 1)) + (local.set 0 (i32.mul (local.get 0) (i32.const 3))) + (local.set 0 (i32.sub (local.get 0) (i32.const 5))) + (local.set 0 (i32.mul (local.get 0) (i32.const 7))) + (br 0) + (local.set 0 (i32.mul (local.get 0) (i32.const 100))) + ) + (i32.eq (local.get 0) (i32.const -14)) + ) + + (type $$block-sig-1 (func)) + (type $$block-sig-2 (func (result i32))) + (type $$block-sig-3 (func (param $$x i32))) + (type $$block-sig-4 (func (param i32 f64 i32) (result i32 f64 i32))) + + (func (export "type-use") + (block (type $$block-sig-1)) + (block (type $$block-sig-2) (i32.const 0)) + (block (type $$block-sig-3) (drop)) + (i32.const 0) (f64.const 0) (i32.const 0) + (block (type $$block-sig-4)) + (drop) (drop) (drop) + (block (type $$block-sig-2) (result i32) (i32.const 0)) + (block (type $$block-sig-3) (param i32) (drop)) + (i32.const 0) (f64.const 0) (i32.const 0) + (block (type $$block-sig-4) + (param i32) (param f64 i32) (result i32 f64) (result i32) + ) + (drop) (drop) (drop) + ) +)`); + +// ./test/core/block.wast:353 +assert_return(() => invoke($0, `empty`, []), []); + +// ./test/core/block.wast:354 +assert_return(() => invoke($0, `singular`, []), [value("i32", 7)]); + +// ./test/core/block.wast:355 +assert_return(() => invoke($0, `multi`, []), [value("i32", 8)]); + +// ./test/core/block.wast:356 +assert_return(() => invoke($0, `nested`, []), [value("i32", 9)]); + +// ./test/core/block.wast:357 +assert_return(() => invoke($0, `deep`, []), [value("i32", 150)]); + +// ./test/core/block.wast:359 +assert_return(() => invoke($0, `as-select-first`, []), [value("i32", 1)]); + +// ./test/core/block.wast:360 +assert_return(() => invoke($0, `as-select-mid`, []), [value("i32", 2)]); + +// ./test/core/block.wast:361 +assert_return(() => invoke($0, `as-select-last`, []), [value("i32", 2)]); + +// ./test/core/block.wast:363 +assert_return(() => invoke($0, `as-loop-first`, []), [value("i32", 1)]); + +// ./test/core/block.wast:364 +assert_return(() => invoke($0, `as-loop-mid`, []), [value("i32", 1)]); + +// ./test/core/block.wast:365 +assert_return(() => invoke($0, `as-loop-last`, []), [value("i32", 1)]); + +// ./test/core/block.wast:367 +assert_return(() => invoke($0, `as-if-condition`, []), []); + +// ./test/core/block.wast:368 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 1)]); + +// ./test/core/block.wast:369 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 2)]); + +// ./test/core/block.wast:371 +assert_return(() => invoke($0, `as-br_if-first`, []), [value("i32", 1)]); + +// ./test/core/block.wast:372 +assert_return(() => invoke($0, `as-br_if-last`, []), [value("i32", 2)]); + +// ./test/core/block.wast:374 +assert_return(() => invoke($0, `as-br_table-first`, []), [value("i32", 1)]); + +// ./test/core/block.wast:375 +assert_return(() => invoke($0, `as-br_table-last`, []), [value("i32", 2)]); + +// ./test/core/block.wast:377 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 1)]); + +// ./test/core/block.wast:378 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 2)]); + +// ./test/core/block.wast:379 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", 1)]); + +// ./test/core/block.wast:381 +assert_return(() => invoke($0, `as-store-first`, []), []); + +// ./test/core/block.wast:382 +assert_return(() => invoke($0, `as-store-last`, []), []); + +// ./test/core/block.wast:384 +assert_return(() => invoke($0, `as-memory.grow-value`, []), [value("i32", 1)]); + +// ./test/core/block.wast:385 +assert_return(() => invoke($0, `as-call-value`, []), [value("i32", 1)]); + +// ./test/core/block.wast:386 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 1)]); + +// ./test/core/block.wast:387 +assert_return(() => invoke($0, `as-drop-operand`, []), []); + +// ./test/core/block.wast:388 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 1)]); + +// ./test/core/block.wast:389 +assert_return(() => invoke($0, `as-local.set-value`, []), [value("i32", 1)]); + +// ./test/core/block.wast:390 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("i32", 1)]); + +// ./test/core/block.wast:391 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 1)]); + +// ./test/core/block.wast:392 +assert_return(() => invoke($0, `as-load-operand`, []), [value("i32", 1)]); + +// ./test/core/block.wast:394 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 0)]); + +// ./test/core/block.wast:395 +assert_return(() => invoke($0, `as-binary-operand`, []), [value("i32", 12)]); + +// ./test/core/block.wast:396 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/block.wast:397 +assert_return(() => invoke($0, `as-compare-operand`, []), [value("i32", 0)]); + +// ./test/core/block.wast:398 +assert_return(() => invoke($0, `as-binary-operands`, []), [value("i32", 12)]); + +// ./test/core/block.wast:399 +assert_return(() => invoke($0, `as-compare-operands`, []), [value("i32", 0)]); + +// ./test/core/block.wast:400 +assert_return(() => invoke($0, `as-mixed-operands`, []), [value("i32", 27)]); + +// ./test/core/block.wast:402 +assert_return(() => invoke($0, `break-bare`, []), [value("i32", 19)]); + +// ./test/core/block.wast:403 +assert_return(() => invoke($0, `break-value`, []), [value("i32", 18)]); + +// ./test/core/block.wast:404 +assert_return( + () => invoke($0, `break-multi-value`, []), + [value("i32", 18), value("i32", -18), value("i64", 18n)], +); + +// ./test/core/block.wast:407 +assert_return(() => invoke($0, `break-repeated`, []), [value("i32", 18)]); + +// ./test/core/block.wast:408 +assert_return(() => invoke($0, `break-inner`, []), [value("i32", 15)]); + +// ./test/core/block.wast:410 +assert_return(() => invoke($0, `param`, []), [value("i32", 3)]); + +// ./test/core/block.wast:411 +assert_return(() => invoke($0, `params`, []), [value("i32", 3)]); + +// ./test/core/block.wast:412 +assert_return(() => invoke($0, `params-id`, []), [value("i32", 3)]); + +// ./test/core/block.wast:413 +assert_return(() => invoke($0, `param-break`, []), [value("i32", 3)]); + +// ./test/core/block.wast:414 +assert_return(() => invoke($0, `params-break`, []), [value("i32", 3)]); + +// ./test/core/block.wast:415 +assert_return(() => invoke($0, `params-id-break`, []), [value("i32", 3)]); + +// ./test/core/block.wast:417 +assert_return(() => invoke($0, `effects`, []), [value("i32", 1)]); + +// ./test/core/block.wast:419 +assert_return(() => invoke($0, `type-use`, []), []); + +// ./test/core/block.wast:421 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (block (type $$sig) (result i32) (param i32))) `), + `unexpected token`, +); + +// ./test/core/block.wast:428 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (block (param i32) (type $$sig) (result i32))) `), + `unexpected token`, +); + +// ./test/core/block.wast:435 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (block (param i32) (result i32) (type $$sig))) `), + `unexpected token`, +); + +// ./test/core/block.wast:442 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (block (result i32) (type $$sig) (param i32))) `), + `unexpected token`, +); + +// ./test/core/block.wast:449 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (block (result i32) (param i32) (type $$sig))) `), + `unexpected token`, +); + +// ./test/core/block.wast:456 +assert_malformed( + () => instantiate(`(func (i32.const 0) (block (result i32) (param i32))) `), + `unexpected token`, +); + +// ./test/core/block.wast:463 +assert_malformed( + () => instantiate(`(func (i32.const 0) (block (param $$x i32) (drop))) `), + `unexpected token`, +); + +// ./test/core/block.wast:467 +assert_malformed( + () => instantiate(`(type $$sig (func)) (func (block (type $$sig) (result i32) (i32.const 0)) (unreachable)) `), + `inline function type`, +); + +// ./test/core/block.wast:474 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (block (type $$sig) (result i32) (i32.const 0)) (unreachable)) `), + `inline function type`, +); + +// ./test/core/block.wast:481 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (block (type $$sig) (param i32) (drop)) (unreachable)) `), + `inline function type`, +); + +// ./test/core/block.wast:488 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (func (i32.const 0) (block (type $$sig) (param i32) (result i32)) (unreachable)) `), + `inline function type`, +); + +// ./test/core/block.wast:496 +assert_invalid( + () => instantiate(`(module + (type $$sig (func)) + (func (block (type $$sig) (i32.const 0))) + )`), + `type mismatch`, +); + +// ./test/core/block.wast:504 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32) (block)))`), + `type mismatch`, +); + +// ./test/core/block.wast:508 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64) (block)))`), + `type mismatch`, +); + +// ./test/core/block.wast:512 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32) (block)))`), + `type mismatch`, +); + +// ./test/core/block.wast:516 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64) (block)))`), + `type mismatch`, +); + +// ./test/core/block.wast:521 +assert_invalid( + () => instantiate(`(module (func $$type-value-i32-vs-void + (block (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:527 +assert_invalid( + () => instantiate(`(module (func $$type-value-i64-vs-void + (block (i64.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:533 +assert_invalid( + () => instantiate(`(module (func $$type-value-f32-vs-void + (block (f32.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:539 +assert_invalid( + () => instantiate(`(module (func $$type-value-f64-vs-void + (block (f64.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:545 +assert_invalid( + () => instantiate(`(module (func $$type-value-nums-vs-void + (block (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:551 +assert_invalid( + () => instantiate(`(module (func $$type-value-empty-vs-i32 (result i32) + (block (result i32)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:557 +assert_invalid( + () => instantiate(`(module (func $$type-value-empty-vs-i64 (result i64) + (block (result i64)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:563 +assert_invalid( + () => instantiate(`(module (func $$type-value-empty-vs-f32 (result f32) + (block (result f32)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:569 +assert_invalid( + () => instantiate(`(module (func $$type-value-empty-vs-f64 (result f64) + (block (result f64)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:575 +assert_invalid( + () => instantiate(`(module (func $$type-value-empty-vs-nums (result i32 i32) + (block (result i32 i32)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:582 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-in-block + (i32.const 0) + (block (block (result i32)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/block.wast:591 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-in-loop + (i32.const 0) + (loop (block (result i32)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/block.wast:600 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (block (result i32)) (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/block.wast:610 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-i32 (result i32) + (block (result i32) (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:616 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-i64 (result i64) + (block (result i64) (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:622 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-f32 (result f32) + (block (result f32) (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:628 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-f64 (result f64) + (block (result f64) (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:634 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-nums (result i32 i32) + (block (result i32 i32) (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:640 +assert_invalid( + () => instantiate(`(module (func $$type-value-i32-vs-i64 (result i32) + (block (result i32) (i64.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:646 +assert_invalid( + () => instantiate(`(module (func $$type-value-i32-vs-f32 (result i32) + (block (result i32) (f32.const 0.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:652 +assert_invalid( + () => instantiate(`(module (func $$type-value-i32-vs-f64 (result i32) + (block (result i32) (f64.const 0.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:658 +assert_invalid( + () => instantiate(`(module (func $$type-value-i64-vs-i32 (result i64) + (block (result i64) (i32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:664 +assert_invalid( + () => instantiate(`(module (func $$type-value-i64-vs-f32 (result i64) + (block (result i64) (f32.const 0.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:670 +assert_invalid( + () => instantiate(`(module (func $$type-value-i64-vs-f64 (result i64) + (block (result i64) (f64.const 0.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:676 +assert_invalid( + () => instantiate(`(module (func $$type-value-f32-vs-i32 (result f32) + (block (result f32) (i32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:682 +assert_invalid( + () => instantiate(`(module (func $$type-value-f32-vs-i64 (result f32) + (block (result f32) (i64.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:688 +assert_invalid( + () => instantiate(`(module (func $$type-value-f32-vs-f64 (result f32) + (block (result f32) (f64.const 0.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:694 +assert_invalid( + () => instantiate(`(module (func $$type-value-f64-vs-i32 (result f64) + (block (result f64) (i32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:700 +assert_invalid( + () => instantiate(`(module (func $$type-value-f64-vs-i64 (result f64) + (block (result f64) (i64.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:706 +assert_invalid( + () => instantiate(`(module (func $$type-value-f64-vs-f32 (result f32) + (block (result f64) (f32.const 0.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:712 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-nums (result i32 i32) + (block (result i32 i32) (i32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:718 +assert_invalid( + () => instantiate(`(module (func $$type-value-partial-vs-nums (result i32 i32) + (i32.const 1) (block (result i32 i32) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:724 +assert_invalid( + () => instantiate(`(module (func $$type-value-nums-vs-num (result i32) + (block (result i32) (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:731 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-i32-i64 (result i32) + (block (result i64) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:737 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-i32-f32 (result i32) + (block (result f32) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:743 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-i32-f64 (result i32) + (block (result f64) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:749 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-i64-i32 (result i64) + (block (result i32) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:755 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-i64-f32 (result i64) + (block (result f32) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:761 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-i64-f64 (result i64) + (block (result f64) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:767 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-f32-i32 (result f32) + (block (result i32) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:773 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-f32-i64 (result f32) + (block (result i64) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:779 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-f32-f64 (result f32) + (block (result f64) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:785 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-f64-i32 (result f64) + (block (result i32) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:791 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-f64-i64 (result f64) + (block (result i64) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:797 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select-f64-f32 (result f64) + (block (result f32) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:804 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-i32 (result i32) + (block (result i32) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:810 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-i64 (result i64) + (block (result i64) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:816 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-f32 (result f32) + (block (result f32) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:822 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-f64 (result f64) + (block (result f64) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:828 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-nums (result i32 i32) + (block (result i32 i32) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:835 +assert_invalid( + () => instantiate(`(module (func $$type-break-empty-vs-i32 (result i32) + (block (result i32) (br 0) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:841 +assert_invalid( + () => instantiate(`(module (func $$type-break-empty-vs-i64 (result i64) + (block (result i64) (br 0) (i64.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:847 +assert_invalid( + () => instantiate(`(module (func $$type-break-empty-vs-f32 (result f32) + (block (result f32) (br 0) (f32.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:853 +assert_invalid( + () => instantiate(`(module (func $$type-break-empty-vs-f64 (result f64) + (block (result f64) (br 0) (f64.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:859 +assert_invalid( + () => instantiate(`(module (func $$type-break-empty-vs-nums (result i32 i32) + (block (result i32 i32) (br 0) (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:866 +assert_invalid( + () => instantiate(`(module (func $$type-break-void-vs-i32 (result i32) + (block (result i32) (br 0 (nop)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:872 +assert_invalid( + () => instantiate(`(module (func $$type-break-void-vs-i64 (result i64) + (block (result i64) (br 0 (nop)) (i64.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:878 +assert_invalid( + () => instantiate(`(module (func $$type-break-void-vs-f32 (result f32) + (block (result f32) (br 0 (nop)) (f32.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:884 +assert_invalid( + () => instantiate(`(module (func $$type-break-void-vs-f64 (result f64) + (block (result f64) (br 0 (nop)) (f64.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:891 +assert_invalid( + () => instantiate(`(module (func $$type-break-i32-vs-i64 (result i32) + (block (result i32) (br 0 (i64.const 1)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:897 +assert_invalid( + () => instantiate(`(module (func $$type-break-i32-vs-f32 (result i32) + (block (result i32) (br 0 (f32.const 1.0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:903 +assert_invalid( + () => instantiate(`(module (func $$type-break-i32-vs-f64 (result i32) + (block (result i32) (br 0 (f64.const 1.0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:909 +assert_invalid( + () => instantiate(`(module (func $$type-break-i64-vs-i32 (result i64) + (block (result i64) (br 0 (i32.const 1)) (i64.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:915 +assert_invalid( + () => instantiate(`(module (func $$type-break-i64-vs-f32 (result i64) + (block (result i64) (br 0 (f32.const 1.0)) (i64.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:921 +assert_invalid( + () => instantiate(`(module (func $$type-break-i64-vs-f64 (result i64) + (block (result i64) (br 0 (f64.const 1.0)) (i64.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:927 +assert_invalid( + () => instantiate(`(module (func $$type-break-f32-vs-i32 (result f32) + (block (result f32) (br 0 (i32.const 1)) (f32.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:933 +assert_invalid( + () => instantiate(`(module (func $$type-break-f32-vs-i64 (result f32) + (block (result f32) (br 0 (i64.const 1)) (f32.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:939 +assert_invalid( + () => instantiate(`(module (func $$type-break-f32-vs-f64 (result f32) + (block (result f32) (br 0 (f64.const 1.0)) (f32.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:945 +assert_invalid( + () => instantiate(`(module (func $$type-break-f64-vs-i32 (result f64) + (block (result i64) (br 0 (i32.const 1)) (f64.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:951 +assert_invalid( + () => instantiate(`(module (func $$type-break-f64-vs-i64 (result f64) + (block (result f64) (br 0 (i64.const 1)) (f64.const 1.0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:957 +assert_invalid( + () => instantiate(`(module (func $$type-break-f64-vs-f32 (result f64) + (block (result f64) (br 0 (f32.const 1.0)) (f64.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:963 +assert_invalid( + () => instantiate(`(module (func $$type-break-num-vs-nums (result i32 i32) + (block (result i32 i32) (br 0 (i32.const 0)) (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:969 +assert_invalid( + () => instantiate(`(module (func $$type-break-partial-vs-nums (result i32 i32) + (i32.const 1) (block (result i32 i32) (br 0 (i32.const 0)) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:976 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-void-vs-i32 (result i32) + (block (result i32) (br 0 (nop)) (br 0 (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:982 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-void-vs-i64 (result i64) + (block (result i64) (br 0 (nop)) (br 0 (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:988 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-void-vs-f32 (result f32) + (block (result f32) (br 0 (nop)) (br 0 (f32.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:994 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-void-vs-f64 (result f64) + (block (result f64) (br 0 (nop)) (br 0 (f64.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1000 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-void-vs-nums (result i32 i32) + (block (result i32 i32) (br 0 (nop)) (br 0 (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1007 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-i32-vs-i64 (result i32) + (block (result i32) (br 0 (i64.const 1)) (br 0 (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1013 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-i32-vs-f32 (result i32) + (block (result i32) (br 0 (f32.const 1.0)) (br 0 (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1019 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-i32-vs-f64 (result i32) + (block (result i32) (br 0 (f64.const 1.0)) (br 0 (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1025 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-i64-vs-i32 (result i64) + (block (result i64) (br 0 (i32.const 1)) (br 0 (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1031 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-i64-vs-f32 (result i64) + (block (result i64) (br 0 (f32.const 1.0)) (br 0 (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1037 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-i64-vs-f64 (result i64) + (block (result i64) (br 0 (f64.const 1.0)) (br 0 (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1043 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-f32-vs-i32 (result f32) + (block (result f32) (br 0 (i32.const 1)) (br 0 (f32.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1049 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-f32-vs-i64 (result f32) + (block (result f32) (br 0 (i64.const 1)) (br 0 (f32.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1055 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-f32-vs-f64 (result f32) + (block (result f32) (br 0 (f64.const 1.0)) (br 0 (f32.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1061 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-f64-vs-i32 (result f64) + (block (result f64) (br 0 (i32.const 1)) (br 0 (f64.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1067 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-f64-vs-i64 (result f64) + (block (result f64) (br 0 (i64.const 1)) (br 0 (f64.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1073 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-f64-vs-f32 (result f64) + (block (result f64) (br 0 (f32.const 1.0)) (br 0 (f64.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1079 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-num-vs-nums (result i32 i32) + (block (result i32 i32) (br 0 (i32.const 0)) (br 0 (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1086 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-i32-vs-void + (block (result i32) (block (result i32) (br 1 (i32.const 1))) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1092 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-i64-vs-void + (block (result i64) (block (result i64) (br 1 (i64.const 1))) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1098 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-f32-vs-void + (block (result f32) (block (result f32) (br 1 (f32.const 1.0))) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1104 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-f64-vs-void + (block (result f64) (block (result f64) (br 1 (f64.const 1.0))) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1110 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-nums-vs-void + (block (result i32 i32) (block (result i32 i32) (br 1 (i32.const 1) (i32.const 2))) (br 0)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1117 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-i32 (result i32) + (block (result i32) (block (br 1)) (br 0 (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1123 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-i64 (result i64) + (block (result i64) (block (br 1)) (br 0 (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1129 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-f32 (result f32) + (block (result f32) (block (br 1)) (br 0 (f32.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1135 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-f64 (result f64) + (block (result f64) (block (br 1)) (br 0 (f64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1141 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-nums (result i32 i32) + (block (result i32 i32) (block (br 1)) (br 0 (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1148 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-i32 (result i32) + (block (result i32) (block (result i32) (br 1 (nop))) (br 0 (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1154 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-i64 (result i64) + (block (result i64) (block (result i64) (br 1 (nop))) (br 0 (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1160 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-f32 (result f32) + (block (result f32) (block (result f32) (br 1 (nop))) (br 0 (f32.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1166 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-f64 (result f64) + (block (result f64) (block (result f64) (br 1 (nop))) (br 0 (f64.const 1.0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1172 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-nums (result i32 i32) + (block (result i32 i32) (block (result i32 i32) (br 1 (nop))) (br 0 (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1179 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-i32-vs-i64 (result i32) + (block (result i32) + (block (result i32) (br 1 (i64.const 1))) (br 0 (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1187 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-i32-vs-f32 (result i32) + (block (result i32) + (block (result i32) (br 1 (f32.const 1.0))) (br 0 (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1195 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-i32-vs-f64 (result i32) + (block (result i32) + (block (result i32) (br 1 (f64.const 1.0))) (br 0 (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1203 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-i64-vs-i32 (result i64) + (block (result i64) + (block (result i64) (br 1 (i32.const 1))) (br 0 (i64.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1211 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-i64-vs-f32 (result i64) + (block (result i64) + (block (result i64) (br 1 (f32.const 1.0))) (br 0 (i64.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1219 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-i64-vs-f64 (result i64) + (block (result i64) + (block (result i64) (br 1 (f64.const 1.0))) (br 0 (i64.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1227 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-f32-vs-i32 (result f32) + (block (result f32) + (block (result f32) (br 1 (i32.const 1))) (br 0 (f32.const 1.0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1235 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-f32-vs-i64 (result f32) + (block (result f32) + (block (result f32) (br 1 (i64.const 1))) (br 0 (f32.const 1.0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1243 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-f32-vs-f64 (result f32) + (block (result f32) + (block (result f32) (br 1 (f64.const 1.0))) (br 0 (f32.const 1.0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1251 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-f64-vs-i32 (result f64) + (block (result f64) + (block (result f64) (br 1 (i32.const 1))) (br 0 (f64.const 1.0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1259 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-f64-vs-i64 (result f64) + (block (result f64) + (block (result f64) (br 1 (i64.const 1))) (br 0 (f64.const 1.0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1267 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-f64-vs-f32 (result f64) + (block (result f64) + (block (result f64) (br 1 (f32.const 1.0))) (br 0 (f64.const 1.0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1275 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-num-vs-nums (result i32 i32) + (block (result i32 i32) + (block (result i32 i32) (br 1 (i32.const 0))) (br 0 (i32.const 1) (i32.const 2)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1284 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-empty-vs-i32 (result i32) + (i32.ctz (block (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1290 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-empty-vs-i64 (result i64) + (i64.ctz (block (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1296 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-empty-vs-f32 (result f32) + (f32.floor (block (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1302 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-empty-vs-f64 (result f64) + (f64.floor (block (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1308 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-empty-vs-nums (result i32) + (i32.add (block (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1315 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-void-vs-i32 (result i32) + (i32.ctz (block (br 0 (nop)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1321 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-void-vs-i64 (result i64) + (i64.ctz (block (br 0 (nop)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1327 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-void-vs-f32 (result f32) + (f32.floor (block (br 0 (nop)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1333 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-void-vs-f64 (result f64) + (f64.floor (block (br 0 (nop)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1339 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-void-vs-nums (result i32) + (i32.add (block (br 0 (nop)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1346 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-i32-vs-i64 (result i32) + (i64.ctz (block (br 0 (i64.const 9)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1352 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-i32-vs-f32 (result i32) + (f32.floor (block (br 0 (f32.const 9.0)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1358 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-i32-vs-f64 (result i32) + (f64.floor (block (br 0 (f64.const 9.0)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1364 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-i64-vs-i32 (result i64) + (i32.ctz (block (br 0 (i32.const 9)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1370 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-i64-vs-f32 (result i64) + (f32.floor (block (br 0 (f32.const 9.0)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1376 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-i64-vs-f64 (result i64) + (f64.floor (block (br 0 (f64.const 9.0)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1382 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-f32-vs-i32 (result f32) + (i32.ctz (block (br 0 (i32.const 9)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1388 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-f32-vs-i64 (result f32) + (i64.ctz (block (br 0 (i64.const 9)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1394 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-f32-vs-f64 (result f32) + (f64.floor (block (br 0 (f64.const 9.0)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1400 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-f64-vs-i32 (result f64) + (i32.ctz (block (br 0 (i32.const 9)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1406 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-f64-vs-i64 (result f64) + (i64.ctz (block (br 0 (i64.const 9)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1412 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-f64-vs-f32 (result f64) + (f32.floor (block (br 0 (f32.const 9.0)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1418 +assert_invalid( + () => instantiate(`(module (func $$type-break-operand-num-vs-nums (result i32) + (i32.add (block (br 0 (i64.const 9) (i32.const 10)))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1425 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-num + (block (param i32) (drop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1431 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (block (param i32 f64) (drop) (drop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1437 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (f32.const 0) (block (param i32) (drop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1443 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (f32.const 0) (block (param f32 i32) (drop) (drop)) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1449 +assert_invalid( + () => instantiate(`(module (func $$type-param-nested-void-vs-num + (block (block (param i32) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1455 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (block (block (param i32 f64) (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1461 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (block (f32.const 0) (block (param i32) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1467 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (block (f32.const 0) (block (param f32 i32) (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/block.wast:1474 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) block (param $$x i32) end) `), + `unexpected token`, +); + +// ./test/core/block.wast:1478 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (block (param $$x i32))) `), + `unexpected token`, +); + +// ./test/core/block.wast:1484 +assert_malformed(() => instantiate(`(func block end $$l) `), `mismatching label`); + +// ./test/core/block.wast:1488 +assert_malformed(() => instantiate(`(func block $$a end $$l) `), `mismatching label`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/br.wast.js b/js/src/jit-test/tests/wasm/spec/spec/br.wast.js new file mode 100644 index 0000000000..e4febec2ea --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/br.wast.js @@ -0,0 +1,839 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/br.wast + +// ./test/core/br.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definition + (func $$dummy) + + (func (export "type-i32") (block (drop (i32.ctz (br 0))))) + (func (export "type-i64") (block (drop (i64.ctz (br 0))))) + (func (export "type-f32") (block (drop (f32.neg (br 0))))) + (func (export "type-f64") (block (drop (f64.neg (br 0))))) + (func (export "type-i32-i32") (block (drop (i32.add (br 0))))) + (func (export "type-i64-i64") (block (drop (i64.add (br 0))))) + (func (export "type-f32-f32") (block (drop (f32.add (br 0))))) + (func (export "type-f64-f64") (block (drop (f64.add (br 0))))) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (br 0 (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (br 0 (i64.const 2)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (br 0 (f32.const 3)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (br 0 (f64.const 4)))) + ) + (func (export "type-f64-f64-value") (result f64 f64) + (block (result f64 f64) + (f64.add (br 0 (f64.const 4) (f64.const 5))) (f64.const 6) + ) + ) + + (func (export "as-block-first") + (block (br 0) (call $$dummy)) + ) + (func (export "as-block-mid") + (block (call $$dummy) (br 0) (call $$dummy)) + ) + (func (export "as-block-last") + (block (nop) (call $$dummy) (br 0)) + ) + (func (export "as-block-value") (result i32) + (block (result i32) (nop) (call $$dummy) (br 0 (i32.const 2))) + ) + + (func (export "as-loop-first") (result i32) + (block (result i32) (loop (result i32) (br 1 (i32.const 3)) (i32.const 2))) + ) + (func (export "as-loop-mid") (result i32) + (block (result i32) + (loop (result i32) (call $$dummy) (br 1 (i32.const 4)) (i32.const 2)) + ) + ) + (func (export "as-loop-last") (result i32) + (block (result i32) + (loop (result i32) (nop) (call $$dummy) (br 1 (i32.const 5))) + ) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (br 0 (i32.const 9)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (br 0))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (br 0 (i32.const 8)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (br 0 (i32.const 9)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (br 0))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (br 0 (i32.const 10)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (br 0 (i32.const 11))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i64) + (block (result i64) (return (br 0 (i64.const 7)))) + ) + (func (export "as-return-values") (result i32 i64) + (i32.const 2) + (block (result i64) (return (br 0 (i32.const 1) (i64.const 7)))) + ) + + (func (export "as-if-cond") (result i32) + (block (result i32) + (if (result i32) (br 0 (i32.const 2)) + (then (i32.const 0)) + (else (i32.const 1)) + ) + ) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (block (result i32) + (if (result i32) (local.get 0) + (then (br 1 (i32.const 3))) + (else (local.get 1)) + ) + ) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (block (result i32) + (if (result i32) (local.get 0) + (then (local.get 1)) + (else (br 1 (i32.const 4))) + ) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (block (result i32) + (select (br 0 (i32.const 5)) (local.get 0) (local.get 1)) + ) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (block (result i32) + (select (local.get 0) (br 0 (i32.const 6)) (local.get 1)) + ) + ) + (func (export "as-select-cond") (result i32) + (block (result i32) + (select (i32.const 0) (i32.const 1) (br 0 (i32.const 7))) + ) + ) + (func (export "as-select-all") (result i32) + (block (result i32) (select (br 0 (i32.const 8)))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (block (result i32) + (call $$f (br 0 (i32.const 12)) (i32.const 2) (i32.const 3)) + ) + ) + (func (export "as-call-mid") (result i32) + (block (result i32) + (call $$f (i32.const 1) (br 0 (i32.const 13)) (i32.const 3)) + ) + ) + (func (export "as-call-last") (result i32) + (block (result i32) + (call $$f (i32.const 1) (i32.const 2) (br 0 (i32.const 14))) + ) + ) + (func (export "as-call-all") (result i32) + (block (result i32) (call $$f (br 0 (i32.const 15)))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-func") (result i32) + (block (result i32) + (call_indirect (type $$sig) + (br 0 (i32.const 20)) + (i32.const 1) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$sig) + (i32.const 0) + (br 0 (i32.const 21)) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$sig) + (i32.const 0) + (i32.const 1) (br 0 (i32.const 22)) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$sig) + (i32.const 0) + (i32.const 1) (i32.const 2) (br 0 (i32.const 23)) + ) + ) + ) + (func (export "as-call_indirect-all") (result i32) + (block (result i32) (call_indirect (type $$sig) (br 0 (i32.const 24)))) + ) + + (func (export "as-local.set-value") (result i32) (local f32) + (block (result i32) (local.set 0 (br 0 (i32.const 17))) (i32.const -1)) + ) + (func (export "as-local.tee-value") (result i32) (local i32) + (block (result i32) (local.tee 0 (br 0 (i32.const 1)))) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (result i32) + (block (result i32) (global.set $$a (br 0 (i32.const 1)))) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (block (result f32) (f32.load (br 0 (f32.const 1.7)))) + ) + (func (export "as-loadN-address") (result i64) + (block (result i64) (i64.load8_s (br 0 (i64.const 30)))) + ) + + (func (export "as-store-address") (result i32) + (block (result i32) + (f64.store (br 0 (i32.const 30)) (f64.const 7)) (i32.const -1) + ) + ) + (func (export "as-store-value") (result i32) + (block (result i32) + (i64.store (i32.const 2) (br 0 (i32.const 31))) (i32.const -1) + ) + ) + (func (export "as-store-both") (result i32) + (block (result i32) + (i64.store (br 0 (i32.const 32))) (i32.const -1) + ) + ) + + (func (export "as-storeN-address") (result i32) + (block (result i32) + (i32.store8 (br 0 (i32.const 32)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-storeN-value") (result i32) + (block (result i32) + (i64.store16 (i32.const 2) (br 0 (i32.const 33))) (i32.const -1) + ) + ) + (func (export "as-storeN-both") (result i32) + (block (result i32) + (i64.store16 (br 0 (i32.const 34))) (i32.const -1) + ) + ) + + (func (export "as-unary-operand") (result f32) + (block (result f32) (f32.neg (br 0 (f32.const 3.4)))) + ) + + (func (export "as-binary-left") (result i32) + (block (result i32) (i32.add (br 0 (i32.const 3)) (i32.const 10))) + ) + (func (export "as-binary-right") (result i64) + (block (result i64) (i64.sub (i64.const 10) (br 0 (i64.const 45)))) + ) + (func (export "as-binary-both") (result i32) + (block (result i32) (i32.add (br 0 (i32.const 46)))) + ) + + (func (export "as-test-operand") (result i32) + (block (result i32) (i32.eqz (br 0 (i32.const 44)))) + ) + + (func (export "as-compare-left") (result i32) + (block (result i32) (f64.le (br 0 (i32.const 43)) (f64.const 10))) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) (f32.ne (f32.const 10) (br 0 (i32.const 42)))) + ) + (func (export "as-compare-both") (result i32) + (block (result i32) (f64.le (br 0 (i32.const 44)))) + ) + + (func (export "as-convert-operand") (result i32) + (block (result i32) (i32.wrap_i64 (br 0 (i32.const 41)))) + ) + + (func (export "as-memory.grow-size") (result i32) + (block (result i32) (memory.grow (br 0 (i32.const 40)))) + ) + + (func (export "nested-block-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (call $$dummy) + (i32.add (i32.const 4) (br 0 (i32.const 8))) + ) + ) + ) + + (func (export "nested-br-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (br 0 (br 1 (i32.const 8))) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (drop (br_if 0 (br 1 (i32.const 8)) (i32.const 1))) + (i32.const 32) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value-cond") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 (i32.const 4) (br 0 (i32.const 8)))) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (br_table 0 (br 1 (i32.const 8)) (i32.const 1)) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value-index") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 (i32.const 4) (br 0 (i32.const 8))) + (i32.const 16) + ) + ) + ) +)`); + +// ./test/core/br.wast:372 +assert_return(() => invoke($0, `type-i32`, []), []); + +// ./test/core/br.wast:373 +assert_return(() => invoke($0, `type-i64`, []), []); + +// ./test/core/br.wast:374 +assert_return(() => invoke($0, `type-f32`, []), []); + +// ./test/core/br.wast:375 +assert_return(() => invoke($0, `type-f64`, []), []); + +// ./test/core/br.wast:376 +assert_return(() => invoke($0, `type-i32-i32`, []), []); + +// ./test/core/br.wast:377 +assert_return(() => invoke($0, `type-i64-i64`, []), []); + +// ./test/core/br.wast:378 +assert_return(() => invoke($0, `type-f32-f32`, []), []); + +// ./test/core/br.wast:379 +assert_return(() => invoke($0, `type-f64-f64`, []), []); + +// ./test/core/br.wast:381 +assert_return(() => invoke($0, `type-i32-value`, []), [value("i32", 1)]); + +// ./test/core/br.wast:382 +assert_return(() => invoke($0, `type-i64-value`, []), [value("i64", 2n)]); + +// ./test/core/br.wast:383 +assert_return(() => invoke($0, `type-f32-value`, []), [value("f32", 3)]); + +// ./test/core/br.wast:384 +assert_return(() => invoke($0, `type-f64-value`, []), [value("f64", 4)]); + +// ./test/core/br.wast:385 +assert_return(() => invoke($0, `type-f64-f64-value`, []), [value("f64", 4), value("f64", 5)]); + +// ./test/core/br.wast:387 +assert_return(() => invoke($0, `as-block-first`, []), []); + +// ./test/core/br.wast:388 +assert_return(() => invoke($0, `as-block-mid`, []), []); + +// ./test/core/br.wast:389 +assert_return(() => invoke($0, `as-block-last`, []), []); + +// ./test/core/br.wast:390 +assert_return(() => invoke($0, `as-block-value`, []), [value("i32", 2)]); + +// ./test/core/br.wast:392 +assert_return(() => invoke($0, `as-loop-first`, []), [value("i32", 3)]); + +// ./test/core/br.wast:393 +assert_return(() => invoke($0, `as-loop-mid`, []), [value("i32", 4)]); + +// ./test/core/br.wast:394 +assert_return(() => invoke($0, `as-loop-last`, []), [value("i32", 5)]); + +// ./test/core/br.wast:396 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 9)]); + +// ./test/core/br.wast:398 +assert_return(() => invoke($0, `as-br_if-cond`, []), []); + +// ./test/core/br.wast:399 +assert_return(() => invoke($0, `as-br_if-value`, []), [value("i32", 8)]); + +// ./test/core/br.wast:400 +assert_return(() => invoke($0, `as-br_if-value-cond`, []), [value("i32", 9)]); + +// ./test/core/br.wast:402 +assert_return(() => invoke($0, `as-br_table-index`, []), []); + +// ./test/core/br.wast:403 +assert_return(() => invoke($0, `as-br_table-value`, []), [value("i32", 10)]); + +// ./test/core/br.wast:404 +assert_return(() => invoke($0, `as-br_table-value-index`, []), [value("i32", 11)]); + +// ./test/core/br.wast:406 +assert_return(() => invoke($0, `as-return-value`, []), [value("i64", 7n)]); + +// ./test/core/br.wast:407 +assert_return(() => invoke($0, `as-return-values`, []), [value("i32", 2), value("i64", 7n)]); + +// ./test/core/br.wast:409 +assert_return(() => invoke($0, `as-if-cond`, []), [value("i32", 2)]); + +// ./test/core/br.wast:410 +assert_return(() => invoke($0, `as-if-then`, [1, 6]), [value("i32", 3)]); + +// ./test/core/br.wast:411 +assert_return(() => invoke($0, `as-if-then`, [0, 6]), [value("i32", 6)]); + +// ./test/core/br.wast:412 +assert_return(() => invoke($0, `as-if-else`, [0, 6]), [value("i32", 4)]); + +// ./test/core/br.wast:413 +assert_return(() => invoke($0, `as-if-else`, [1, 6]), [value("i32", 6)]); + +// ./test/core/br.wast:415 +assert_return(() => invoke($0, `as-select-first`, [0, 6]), [value("i32", 5)]); + +// ./test/core/br.wast:416 +assert_return(() => invoke($0, `as-select-first`, [1, 6]), [value("i32", 5)]); + +// ./test/core/br.wast:417 +assert_return(() => invoke($0, `as-select-second`, [0, 6]), [value("i32", 6)]); + +// ./test/core/br.wast:418 +assert_return(() => invoke($0, `as-select-second`, [1, 6]), [value("i32", 6)]); + +// ./test/core/br.wast:419 +assert_return(() => invoke($0, `as-select-cond`, []), [value("i32", 7)]); + +// ./test/core/br.wast:420 +assert_return(() => invoke($0, `as-select-all`, []), [value("i32", 8)]); + +// ./test/core/br.wast:422 +assert_return(() => invoke($0, `as-call-first`, []), [value("i32", 12)]); + +// ./test/core/br.wast:423 +assert_return(() => invoke($0, `as-call-mid`, []), [value("i32", 13)]); + +// ./test/core/br.wast:424 +assert_return(() => invoke($0, `as-call-last`, []), [value("i32", 14)]); + +// ./test/core/br.wast:425 +assert_return(() => invoke($0, `as-call-all`, []), [value("i32", 15)]); + +// ./test/core/br.wast:427 +assert_return(() => invoke($0, `as-call_indirect-func`, []), [value("i32", 20)]); + +// ./test/core/br.wast:428 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 21)]); + +// ./test/core/br.wast:429 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 22)]); + +// ./test/core/br.wast:430 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", 23)]); + +// ./test/core/br.wast:431 +assert_return(() => invoke($0, `as-call_indirect-all`, []), [value("i32", 24)]); + +// ./test/core/br.wast:433 +assert_return(() => invoke($0, `as-local.set-value`, []), [value("i32", 17)]); + +// ./test/core/br.wast:434 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("i32", 1)]); + +// ./test/core/br.wast:435 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 1)]); + +// ./test/core/br.wast:437 +assert_return(() => invoke($0, `as-load-address`, []), [value("f32", 1.7)]); + +// ./test/core/br.wast:438 +assert_return(() => invoke($0, `as-loadN-address`, []), [value("i64", 30n)]); + +// ./test/core/br.wast:440 +assert_return(() => invoke($0, `as-store-address`, []), [value("i32", 30)]); + +// ./test/core/br.wast:441 +assert_return(() => invoke($0, `as-store-value`, []), [value("i32", 31)]); + +// ./test/core/br.wast:442 +assert_return(() => invoke($0, `as-store-both`, []), [value("i32", 32)]); + +// ./test/core/br.wast:443 +assert_return(() => invoke($0, `as-storeN-address`, []), [value("i32", 32)]); + +// ./test/core/br.wast:444 +assert_return(() => invoke($0, `as-storeN-value`, []), [value("i32", 33)]); + +// ./test/core/br.wast:445 +assert_return(() => invoke($0, `as-storeN-both`, []), [value("i32", 34)]); + +// ./test/core/br.wast:447 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("f32", 3.4)]); + +// ./test/core/br.wast:449 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 3)]); + +// ./test/core/br.wast:450 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i64", 45n)]); + +// ./test/core/br.wast:451 +assert_return(() => invoke($0, `as-binary-both`, []), [value("i32", 46)]); + +// ./test/core/br.wast:453 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 44)]); + +// ./test/core/br.wast:455 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 43)]); + +// ./test/core/br.wast:456 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 42)]); + +// ./test/core/br.wast:457 +assert_return(() => invoke($0, `as-compare-both`, []), [value("i32", 44)]); + +// ./test/core/br.wast:459 +assert_return(() => invoke($0, `as-convert-operand`, []), [value("i32", 41)]); + +// ./test/core/br.wast:461 +assert_return(() => invoke($0, `as-memory.grow-size`, []), [value("i32", 40)]); + +// ./test/core/br.wast:463 +assert_return(() => invoke($0, `nested-block-value`, []), [value("i32", 9)]); + +// ./test/core/br.wast:464 +assert_return(() => invoke($0, `nested-br-value`, []), [value("i32", 9)]); + +// ./test/core/br.wast:465 +assert_return(() => invoke($0, `nested-br_if-value`, []), [value("i32", 9)]); + +// ./test/core/br.wast:466 +assert_return(() => invoke($0, `nested-br_if-value-cond`, []), [value("i32", 9)]); + +// ./test/core/br.wast:467 +assert_return(() => invoke($0, `nested-br_table-value`, []), [value("i32", 9)]); + +// ./test/core/br.wast:468 +assert_return(() => invoke($0, `nested-br_table-value-index`, []), [value("i32", 9)]); + +// ./test/core/br.wast:470 +assert_invalid( + () => instantiate(`(module (func $$type-arg-empty-vs-num (result i32) + (block (result i32) (br 0) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br.wast:477 +assert_invalid( + () => instantiate(`(module (func $$type-arg-void-vs-num (result i32) + (block (result i32) (br 0 (nop)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br.wast:483 +assert_invalid( + () => instantiate(`(module (func $$type-arg-void-vs-num-nested (result i32) + (block (result i32) (i32.const 0) (block (br 1))) + ))`), + `type mismatch`, +); + +// ./test/core/br.wast:489 +assert_invalid( + () => instantiate(`(module (func $$type-arg-num-vs-num (result i32) + (block (result i32) (br 0 (i64.const 1)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br.wast:496 +assert_invalid( + () => instantiate(`(module + (func $$type-arg-empty-in-br + (i32.const 0) + (block (result i32) (br 0 (br 0))) (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:505 +assert_invalid( + () => instantiate(`(module + (func $$type-arg-empty-in-br_if + (i32.const 0) + (block (result i32) (br_if 0 (br 0) (i32.const 1))) (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:514 +assert_invalid( + () => instantiate(`(module + (func $$type-arg-empty-in-br_table + (i32.const 0) + (block (result i32) (br_table 0 (br 0))) (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:523 +assert_invalid( + () => instantiate(`(module + (func $$type-arg-empty-in-return + (block (result i32) + (return (br 0)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:534 +assert_invalid( + () => instantiate(`(module + (func $$type-arg-empty-in-select + (block (result i32) + (select (br 0) (i32.const 1) (i32.const 2)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:545 +assert_invalid( + () => instantiate(`(module + (func $$type-arg-empty-in-call + (block (result i32) + (call 1 (br 0)) + ) + (i32.eqz) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:557 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-arg-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (br 0) (i32.const 0) + ) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:573 +assert_invalid( + () => instantiate(`(module + (func $$type-arg-empty-in-local.set + (local i32) + (block (result i32) + (local.set 0 (br 0)) (local.get 0) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:585 +assert_invalid( + () => instantiate(`(module + (func $$type-arg-empty-in-local.tee + (local i32) + (block (result i32) + (local.tee 0 (br 0)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:597 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-arg-empty-in-global.set + (block (result i32) + (global.set $$x (br 0)) (global.get $$x) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:609 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-arg-empty-in-memory.grow + (block (result i32) + (memory.grow (br 0)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:621 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-arg-empty-in-load + (block (result i32) + (i32.load (br 0)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:633 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-arg-empty-in-store + (block (result i32) + (i32.store (br 0) (i32.const 0)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br.wast:646 +assert_invalid( + () => instantiate(`(module (func $$unbound-label (br 1)))`), + `unknown label`, +); + +// ./test/core/br.wast:650 +assert_invalid( + () => instantiate(`(module (func $$unbound-nested-label (block (block (br 5)))))`), + `unknown label`, +); + +// ./test/core/br.wast:654 +assert_invalid( + () => instantiate(`(module (func $$large-label (br 0x10000001)))`), + `unknown label`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/br_if.wast.js b/js/src/jit-test/tests/wasm/spec/spec/br_if.wast.js new file mode 100644 index 0000000000..511ee003fb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/br_if.wast.js @@ -0,0 +1,886 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/br_if.wast + +// ./test/core/br_if.wast:3 +let $0 = instantiate(`(module + (func $$dummy) + + (func (export "type-i32") + (block (drop (i32.ctz (br_if 0 (i32.const 0) (i32.const 1))))) + ) + (func (export "type-i64") + (block (drop (i64.ctz (br_if 0 (i64.const 0) (i32.const 1))))) + ) + (func (export "type-f32") + (block (drop (f32.neg (br_if 0 (f32.const 0) (i32.const 1))))) + ) + (func (export "type-f64") + (block (drop (f64.neg (br_if 0 (f64.const 0) (i32.const 1))))) + ) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (br_if 0 (i64.const 2) (i32.const 1)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (br_if 0 (f32.const 3) (i32.const 1)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (br_if 0 (f64.const 4) (i32.const 1)))) + ) + + (func (export "as-block-first") (param i32) (result i32) + (block (br_if 0 (local.get 0)) (return (i32.const 2))) (i32.const 3) + ) + (func (export "as-block-mid") (param i32) (result i32) + (block (call $$dummy) (br_if 0 (local.get 0)) (return (i32.const 2))) + (i32.const 3) + ) + (func (export "as-block-last") (param i32) + (block (call $$dummy) (call $$dummy) (br_if 0 (local.get 0))) + ) + (func (export "as-block-first-value") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 10) (local.get 0))) (return (i32.const 11)) + ) + ) + (func (export "as-block-mid-value") (param i32) (result i32) + (block (result i32) + (call $$dummy) + (drop (br_if 0 (i32.const 20) (local.get 0))) + (return (i32.const 21)) + ) + ) + (func (export "as-block-last-value") (param i32) (result i32) + (block (result i32) + (call $$dummy) (call $$dummy) (br_if 0 (i32.const 11) (local.get 0)) + ) + ) + + (func (export "as-loop-first") (param i32) (result i32) + (block (loop (br_if 1 (local.get 0)) (return (i32.const 2)))) (i32.const 3) + ) + (func (export "as-loop-mid") (param i32) (result i32) + (block (loop (call $$dummy) (br_if 1 (local.get 0)) (return (i32.const 2)))) + (i32.const 4) + ) + (func (export "as-loop-last") (param i32) + (loop (call $$dummy) (br_if 1 (local.get 0))) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (br_if 0 (i32.const 1) (i32.const 2)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (br_if 0 (i32.const 1) (i32.const 2)) (i32.const 3))) + (i32.const 4) + ) + ) + (func (export "as-br_if-value-cond") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 2) (br_if 0 (i32.const 1) (local.get 0)))) + (i32.const 4) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (br_if 0 (i32.const 1) (i32.const 2)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (br_if 0 (i32.const 1) (i32.const 2)) (i32.const 3)) (i32.const 4) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 2) (br_if 0 (i32.const 1) (i32.const 3))) (i32.const 4) + ) + ) + (func (export "as-return-value") (result i64) + (block (result i64) (return (br_if 0 (i64.const 1) (i32.const 2)))) + ) + + (func (export "as-if-cond") (param i32) (result i32) + (block (result i32) + (if (result i32) + (br_if 0 (i32.const 1) (local.get 0)) + (then (i32.const 2)) + (else (i32.const 3)) + ) + ) + ) + (func (export "as-if-then") (param i32 i32) + (block + (if (local.get 0) (then (br_if 1 (local.get 1))) (else (call $$dummy))) + ) + ) + (func (export "as-if-else") (param i32 i32) + (block + (if (local.get 0) (then (call $$dummy)) (else (br_if 1 (local.get 1)))) + ) + ) + + (func (export "as-select-first") (param i32) (result i32) + (block (result i32) + (select (br_if 0 (i32.const 3) (i32.const 10)) (i32.const 2) (local.get 0)) + ) + ) + (func (export "as-select-second") (param i32) (result i32) + (block (result i32) + (select (i32.const 1) (br_if 0 (i32.const 3) (i32.const 10)) (local.get 0)) + ) + ) + (func (export "as-select-cond") (result i32) + (block (result i32) + (select (i32.const 1) (i32.const 2) (br_if 0 (i32.const 3) (i32.const 10))) + ) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (block (result i32) + (call $$f + (br_if 0 (i32.const 12) (i32.const 1)) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call-mid") (result i32) + (block (result i32) + (call $$f + (i32.const 1) (br_if 0 (i32.const 13) (i32.const 1)) (i32.const 3) + ) + ) + ) + (func (export "as-call-last") (result i32) + (block (result i32) + (call $$f + (i32.const 1) (i32.const 2) (br_if 0 (i32.const 14) (i32.const 1)) + ) + ) + ) + + (func $$func (param i32 i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-func") (result i32) + (block (result i32) + (call_indirect (type $$check) + (br_if 0 (i32.const 4) (i32.const 10)) + (i32.const 1) (i32.const 2) (i32.const 0) + ) + ) + ) + + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (br_if 0 (i32.const 4) (i32.const 10)) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (br_if 0 (i32.const 4) (i32.const 10)) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (i32.const 3) (br_if 0 (i32.const 4) (i32.const 10)) + ) + ) + ) + + (func (export "as-local.set-value") (param i32) (result i32) + (local i32) + (block (result i32) + (local.set 0 (br_if 0 (i32.const 17) (local.get 0))) + (i32.const -1) + ) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (block (result i32) + (local.tee 0 (br_if 0 (i32.const 1) (local.get 0))) + (return (i32.const -1)) + ) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (param i32) (result i32) + (block (result i32) + (global.set $$a (br_if 0 (i32.const 1) (local.get 0))) + (return (i32.const -1)) + ) + ) + + (memory 1) + (func (export "as-load-address") (result i32) + (block (result i32) (i32.load (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-loadN-address") (result i32) + (block (result i32) (i32.load8_s (br_if 0 (i32.const 30) (i32.const 1)))) + ) + + (func (export "as-store-address") (result i32) + (block (result i32) + (i32.store (br_if 0 (i32.const 30) (i32.const 1)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-store-value") (result i32) + (block (result i32) + (i32.store (i32.const 2) (br_if 0 (i32.const 31) (i32.const 1))) (i32.const -1) + ) + ) + + (func (export "as-storeN-address") (result i32) + (block (result i32) + (i32.store8 (br_if 0 (i32.const 32) (i32.const 1)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-storeN-value") (result i32) + (block (result i32) + (i32.store16 (i32.const 2) (br_if 0 (i32.const 33) (i32.const 1))) (i32.const -1) + ) + ) + + (func (export "as-unary-operand") (result f64) + (block (result f64) (f64.neg (br_if 0 (f64.const 1.0) (i32.const 1)))) + ) + (func (export "as-binary-left") (result i32) + (block (result i32) (i32.add (br_if 0 (i32.const 1) (i32.const 1)) (i32.const 10))) + ) + (func (export "as-binary-right") (result i32) + (block (result i32) (i32.sub (i32.const 10) (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "as-test-operand") (result i32) + (block (result i32) (i32.eqz (br_if 0 (i32.const 0) (i32.const 1)))) + ) + (func (export "as-compare-left") (result i32) + (block (result i32) (i32.le_u (br_if 0 (i32.const 1) (i32.const 1)) (i32.const 10))) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) (i32.ne (i32.const 10) (br_if 0 (i32.const 1) (i32.const 42)))) + ) + + (func (export "as-memory.grow-size") (result i32) + (block (result i32) (memory.grow (br_if 0 (i32.const 1) (i32.const 1)))) + ) + + (func (export "nested-block-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (i32.add + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) + (i32.const 16) + ) + ) + ) + ) + ) + + (func (export "nested-br-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + (i32.const 1) + )) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value-cond") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 1) + ) + )) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 4) + ) + (i32.const 1) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value-index") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (local.get 0))) (i32.const 1) + ) + ) + (i32.const 16) + ) + ) + ) + +)`); + +// ./test/core/br_if.wast:372 +assert_return(() => invoke($0, `type-i32`, []), []); + +// ./test/core/br_if.wast:373 +assert_return(() => invoke($0, `type-i64`, []), []); + +// ./test/core/br_if.wast:374 +assert_return(() => invoke($0, `type-f32`, []), []); + +// ./test/core/br_if.wast:375 +assert_return(() => invoke($0, `type-f64`, []), []); + +// ./test/core/br_if.wast:377 +assert_return(() => invoke($0, `type-i32-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:378 +assert_return(() => invoke($0, `type-i64-value`, []), [value("i64", 2n)]); + +// ./test/core/br_if.wast:379 +assert_return(() => invoke($0, `type-f32-value`, []), [value("f32", 3)]); + +// ./test/core/br_if.wast:380 +assert_return(() => invoke($0, `type-f64-value`, []), [value("f64", 4)]); + +// ./test/core/br_if.wast:382 +assert_return(() => invoke($0, `as-block-first`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:383 +assert_return(() => invoke($0, `as-block-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:384 +assert_return(() => invoke($0, `as-block-mid`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:385 +assert_return(() => invoke($0, `as-block-mid`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:386 +assert_return(() => invoke($0, `as-block-last`, [0]), []); + +// ./test/core/br_if.wast:387 +assert_return(() => invoke($0, `as-block-last`, [1]), []); + +// ./test/core/br_if.wast:389 +assert_return(() => invoke($0, `as-block-first-value`, [0]), [value("i32", 11)]); + +// ./test/core/br_if.wast:390 +assert_return(() => invoke($0, `as-block-first-value`, [1]), [value("i32", 10)]); + +// ./test/core/br_if.wast:391 +assert_return(() => invoke($0, `as-block-mid-value`, [0]), [value("i32", 21)]); + +// ./test/core/br_if.wast:392 +assert_return(() => invoke($0, `as-block-mid-value`, [1]), [value("i32", 20)]); + +// ./test/core/br_if.wast:393 +assert_return(() => invoke($0, `as-block-last-value`, [0]), [value("i32", 11)]); + +// ./test/core/br_if.wast:394 +assert_return(() => invoke($0, `as-block-last-value`, [1]), [value("i32", 11)]); + +// ./test/core/br_if.wast:396 +assert_return(() => invoke($0, `as-loop-first`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:397 +assert_return(() => invoke($0, `as-loop-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:398 +assert_return(() => invoke($0, `as-loop-mid`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:399 +assert_return(() => invoke($0, `as-loop-mid`, [1]), [value("i32", 4)]); + +// ./test/core/br_if.wast:400 +assert_return(() => invoke($0, `as-loop-last`, [0]), []); + +// ./test/core/br_if.wast:401 +assert_return(() => invoke($0, `as-loop-last`, [1]), []); + +// ./test/core/br_if.wast:403 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:405 +assert_return(() => invoke($0, `as-br_if-cond`, []), []); + +// ./test/core/br_if.wast:406 +assert_return(() => invoke($0, `as-br_if-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:407 +assert_return(() => invoke($0, `as-br_if-value-cond`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:408 +assert_return(() => invoke($0, `as-br_if-value-cond`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:410 +assert_return(() => invoke($0, `as-br_table-index`, []), []); + +// ./test/core/br_if.wast:411 +assert_return(() => invoke($0, `as-br_table-value`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:412 +assert_return(() => invoke($0, `as-br_table-value-index`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:414 +assert_return(() => invoke($0, `as-return-value`, []), [value("i64", 1n)]); + +// ./test/core/br_if.wast:416 +assert_return(() => invoke($0, `as-if-cond`, [0]), [value("i32", 2)]); + +// ./test/core/br_if.wast:417 +assert_return(() => invoke($0, `as-if-cond`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:418 +assert_return(() => invoke($0, `as-if-then`, [0, 0]), []); + +// ./test/core/br_if.wast:419 +assert_return(() => invoke($0, `as-if-then`, [4, 0]), []); + +// ./test/core/br_if.wast:420 +assert_return(() => invoke($0, `as-if-then`, [0, 1]), []); + +// ./test/core/br_if.wast:421 +assert_return(() => invoke($0, `as-if-then`, [4, 1]), []); + +// ./test/core/br_if.wast:422 +assert_return(() => invoke($0, `as-if-else`, [0, 0]), []); + +// ./test/core/br_if.wast:423 +assert_return(() => invoke($0, `as-if-else`, [3, 0]), []); + +// ./test/core/br_if.wast:424 +assert_return(() => invoke($0, `as-if-else`, [0, 1]), []); + +// ./test/core/br_if.wast:425 +assert_return(() => invoke($0, `as-if-else`, [3, 1]), []); + +// ./test/core/br_if.wast:427 +assert_return(() => invoke($0, `as-select-first`, [0]), [value("i32", 3)]); + +// ./test/core/br_if.wast:428 +assert_return(() => invoke($0, `as-select-first`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:429 +assert_return(() => invoke($0, `as-select-second`, [0]), [value("i32", 3)]); + +// ./test/core/br_if.wast:430 +assert_return(() => invoke($0, `as-select-second`, [1]), [value("i32", 3)]); + +// ./test/core/br_if.wast:431 +assert_return(() => invoke($0, `as-select-cond`, []), [value("i32", 3)]); + +// ./test/core/br_if.wast:433 +assert_return(() => invoke($0, `as-call-first`, []), [value("i32", 12)]); + +// ./test/core/br_if.wast:434 +assert_return(() => invoke($0, `as-call-mid`, []), [value("i32", 13)]); + +// ./test/core/br_if.wast:435 +assert_return(() => invoke($0, `as-call-last`, []), [value("i32", 14)]); + +// ./test/core/br_if.wast:437 +assert_return(() => invoke($0, `as-call_indirect-func`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:438 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:439 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:440 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", 4)]); + +// ./test/core/br_if.wast:442 +assert_return(() => invoke($0, `as-local.set-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:443 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 17)]); + +// ./test/core/br_if.wast:445 +assert_return(() => invoke($0, `as-local.tee-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:446 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:448 +assert_return(() => invoke($0, `as-global.set-value`, [0]), [value("i32", -1)]); + +// ./test/core/br_if.wast:449 +assert_return(() => invoke($0, `as-global.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/br_if.wast:451 +assert_return(() => invoke($0, `as-load-address`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:452 +assert_return(() => invoke($0, `as-loadN-address`, []), [value("i32", 30)]); + +// ./test/core/br_if.wast:454 +assert_return(() => invoke($0, `as-store-address`, []), [value("i32", 30)]); + +// ./test/core/br_if.wast:455 +assert_return(() => invoke($0, `as-store-value`, []), [value("i32", 31)]); + +// ./test/core/br_if.wast:456 +assert_return(() => invoke($0, `as-storeN-address`, []), [value("i32", 32)]); + +// ./test/core/br_if.wast:457 +assert_return(() => invoke($0, `as-storeN-value`, []), [value("i32", 33)]); + +// ./test/core/br_if.wast:459 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("f64", 1)]); + +// ./test/core/br_if.wast:460 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:461 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:462 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/br_if.wast:463 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:464 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:465 +assert_return(() => invoke($0, `as-memory.grow-size`, []), [value("i32", 1)]); + +// ./test/core/br_if.wast:467 +assert_return(() => invoke($0, `nested-block-value`, [0]), [value("i32", 21)]); + +// ./test/core/br_if.wast:468 +assert_return(() => invoke($0, `nested-block-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:469 +assert_return(() => invoke($0, `nested-br-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:470 +assert_return(() => invoke($0, `nested-br-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:471 +assert_return(() => invoke($0, `nested-br_if-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:472 +assert_return(() => invoke($0, `nested-br_if-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:473 +assert_return(() => invoke($0, `nested-br_if-value-cond`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:474 +assert_return(() => invoke($0, `nested-br_if-value-cond`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:475 +assert_return(() => invoke($0, `nested-br_table-value`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:476 +assert_return(() => invoke($0, `nested-br_table-value`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:477 +assert_return(() => invoke($0, `nested-br_table-value-index`, [0]), [value("i32", 5)]); + +// ./test/core/br_if.wast:478 +assert_return(() => invoke($0, `nested-br_table-value-index`, [1]), [value("i32", 9)]); + +// ./test/core/br_if.wast:480 +assert_invalid( + () => instantiate(`(module (func $$type-false-i32 (block (i32.ctz (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:484 +assert_invalid( + () => instantiate(`(module (func $$type-false-i64 (block (i64.ctz (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:488 +assert_invalid( + () => instantiate(`(module (func $$type-false-f32 (block (f32.neg (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:492 +assert_invalid( + () => instantiate(`(module (func $$type-false-f64 (block (f64.neg (br_if 0 (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:497 +assert_invalid( + () => instantiate(`(module (func $$type-true-i32 (block (i32.ctz (br_if 0 (i32.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:501 +assert_invalid( + () => instantiate(`(module (func $$type-true-i64 (block (i64.ctz (br_if 0 (i64.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:505 +assert_invalid( + () => instantiate(`(module (func $$type-true-f32 (block (f32.neg (br_if 0 (f32.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:509 +assert_invalid( + () => instantiate(`(module (func $$type-true-f64 (block (f64.neg (br_if 0 (i64.const 1))))))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:514 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (i32.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:520 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (i32.const 1)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:526 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-num-vs-void + (block (br_if 0 (i32.const 0) (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:532 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-num-vs-void + (block (br_if 0 (i32.const 0) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:539 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (nop) (i32.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:545 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (nop) (i32.const 1)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:551 +assert_invalid( + () => instantiate(`(module (func $$type-false-arg-num-vs-num (result i32) + (block (result i32) + (drop (br_if 0 (i64.const 1) (i32.const 0))) (i32.const 1) + ) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:559 +assert_invalid( + () => instantiate(`(module (func $$type-true-arg-num-vs-num (result i32) + (block (result i32) + (drop (br_if 0 (i64.const 1) (i32.const 0))) (i32.const 1) + ) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:568 +assert_invalid( + () => instantiate(`(module (func $$type-cond-empty-vs-i32 + (block (br_if 0)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:574 +assert_invalid( + () => instantiate(`(module (func $$type-cond-void-vs-i32 + (block (br_if 0 (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:580 +assert_invalid( + () => instantiate(`(module (func $$type-cond-num-vs-i32 + (block (br_if 0 (i64.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:586 +assert_invalid( + () => instantiate(`(module (func $$type-arg-cond-void-vs-i32 (result i32) + (block (result i32) (br_if 0 (i32.const 0) (nop)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:592 +assert_invalid( + () => instantiate(`(module (func $$type-arg-void-vs-num-nested (result i32) + (block (result i32) (i32.const 0) (block (br_if 1 (i32.const 1)))) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:598 +assert_invalid( + () => instantiate(`(module (func $$type-arg-cond-num-vs-i32 (result i32) + (block (result i32) (br_if 0 (i32.const 0) (i64.const 0)) (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/br_if.wast:605 +assert_invalid( + () => instantiate(`(module + (func $$type-1st-cond-empty-in-then + (block + (i32.const 0) (i32.const 0) + (if (result i32) (then (br_if 0))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:617 +assert_invalid( + () => instantiate(`(module + (func $$type-2nd-cond-empty-in-then + (block + (i32.const 0) (i32.const 0) + (if (result i32) (then (br_if 0 (i32.const 1)))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:629 +assert_invalid( + () => instantiate(`(module + (func $$type-1st-cond-empty-in-return + (block (result i32) + (return (br_if 0)) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:640 +assert_invalid( + () => instantiate(`(module + (func $$type-2nd-cond-empty-in-return + (block (result i32) + (return (br_if 0 (i32.const 1))) + ) + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/br_if.wast:653 +assert_invalid( + () => instantiate(`(module (func $$unbound-label (br_if 1 (i32.const 1))))`), + `unknown label`, +); + +// ./test/core/br_if.wast:657 +assert_invalid( + () => instantiate(`(module (func $$unbound-nested-label (block (block (br_if 5 (i32.const 1))))))`), + `unknown label`, +); + +// ./test/core/br_if.wast:661 +assert_invalid( + () => instantiate(`(module (func $$large-label (br_if 0x10000001 (i32.const 1))))`), + `unknown label`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/bulk.wast.js b/js/src/jit-test/tests/wasm/spec/spec/bulk.wast.js new file mode 100644 index 0000000000..b0cefa4a73 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/bulk.wast.js @@ -0,0 +1,499 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/bulk.wast + +// ./test/core/bulk.wast:2 +let $0 = instantiate(`(module + (memory 1) + (data "foo"))`); + +// ./test/core/bulk.wast:6 +let $1 = instantiate(`(module + (table 3 funcref) + (elem funcref (ref.func 0) (ref.null func) (ref.func 1)) + (func) + (func))`); + +// ./test/core/bulk.wast:13 +let $2 = instantiate(`(module + (memory 1) + + (func (export "fill") (param i32 i32 i32) + (memory.fill + (local.get 0) + (local.get 1) + (local.get 2))) + + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))) +)`); + +// ./test/core/bulk.wast:27 +invoke($2, `fill`, [1, 255, 3]); + +// ./test/core/bulk.wast:28 +assert_return(() => invoke($2, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/bulk.wast:29 +assert_return(() => invoke($2, `load8_u`, [1]), [value("i32", 255)]); + +// ./test/core/bulk.wast:30 +assert_return(() => invoke($2, `load8_u`, [2]), [value("i32", 255)]); + +// ./test/core/bulk.wast:31 +assert_return(() => invoke($2, `load8_u`, [3]), [value("i32", 255)]); + +// ./test/core/bulk.wast:32 +assert_return(() => invoke($2, `load8_u`, [4]), [value("i32", 0)]); + +// ./test/core/bulk.wast:35 +invoke($2, `fill`, [0, 48042, 2]); + +// ./test/core/bulk.wast:36 +assert_return(() => invoke($2, `load8_u`, [0]), [value("i32", 170)]); + +// ./test/core/bulk.wast:37 +assert_return(() => invoke($2, `load8_u`, [1]), [value("i32", 170)]); + +// ./test/core/bulk.wast:40 +invoke($2, `fill`, [0, 0, 65536]); + +// ./test/core/bulk.wast:43 +assert_trap(() => invoke($2, `fill`, [65280, 1, 257]), `out of bounds memory access`); + +// ./test/core/bulk.wast:45 +assert_return(() => invoke($2, `load8_u`, [65280]), [value("i32", 0)]); + +// ./test/core/bulk.wast:46 +assert_return(() => invoke($2, `load8_u`, [65535]), [value("i32", 0)]); + +// ./test/core/bulk.wast:49 +invoke($2, `fill`, [65536, 0, 0]); + +// ./test/core/bulk.wast:52 +assert_trap(() => invoke($2, `fill`, [65537, 0, 0]), `out of bounds memory access`); + +// ./test/core/bulk.wast:57 +let $3 = instantiate(`(module + (memory (data "\\aa\\bb\\cc\\dd")) + + (func (export "copy") (param i32 i32 i32) + (memory.copy + (local.get 0) + (local.get 1) + (local.get 2))) + + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))) +)`); + +// ./test/core/bulk.wast:71 +invoke($3, `copy`, [10, 0, 4]); + +// ./test/core/bulk.wast:73 +assert_return(() => invoke($3, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/bulk.wast:74 +assert_return(() => invoke($3, `load8_u`, [10]), [value("i32", 170)]); + +// ./test/core/bulk.wast:75 +assert_return(() => invoke($3, `load8_u`, [11]), [value("i32", 187)]); + +// ./test/core/bulk.wast:76 +assert_return(() => invoke($3, `load8_u`, [12]), [value("i32", 204)]); + +// ./test/core/bulk.wast:77 +assert_return(() => invoke($3, `load8_u`, [13]), [value("i32", 221)]); + +// ./test/core/bulk.wast:78 +assert_return(() => invoke($3, `load8_u`, [14]), [value("i32", 0)]); + +// ./test/core/bulk.wast:81 +invoke($3, `copy`, [8, 10, 4]); + +// ./test/core/bulk.wast:82 +assert_return(() => invoke($3, `load8_u`, [8]), [value("i32", 170)]); + +// ./test/core/bulk.wast:83 +assert_return(() => invoke($3, `load8_u`, [9]), [value("i32", 187)]); + +// ./test/core/bulk.wast:84 +assert_return(() => invoke($3, `load8_u`, [10]), [value("i32", 204)]); + +// ./test/core/bulk.wast:85 +assert_return(() => invoke($3, `load8_u`, [11]), [value("i32", 221)]); + +// ./test/core/bulk.wast:86 +assert_return(() => invoke($3, `load8_u`, [12]), [value("i32", 204)]); + +// ./test/core/bulk.wast:87 +assert_return(() => invoke($3, `load8_u`, [13]), [value("i32", 221)]); + +// ./test/core/bulk.wast:90 +invoke($3, `copy`, [10, 7, 6]); + +// ./test/core/bulk.wast:91 +assert_return(() => invoke($3, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/bulk.wast:92 +assert_return(() => invoke($3, `load8_u`, [11]), [value("i32", 170)]); + +// ./test/core/bulk.wast:93 +assert_return(() => invoke($3, `load8_u`, [12]), [value("i32", 187)]); + +// ./test/core/bulk.wast:94 +assert_return(() => invoke($3, `load8_u`, [13]), [value("i32", 204)]); + +// ./test/core/bulk.wast:95 +assert_return(() => invoke($3, `load8_u`, [14]), [value("i32", 221)]); + +// ./test/core/bulk.wast:96 +assert_return(() => invoke($3, `load8_u`, [15]), [value("i32", 204)]); + +// ./test/core/bulk.wast:97 +assert_return(() => invoke($3, `load8_u`, [16]), [value("i32", 0)]); + +// ./test/core/bulk.wast:100 +invoke($3, `copy`, [65280, 0, 256]); + +// ./test/core/bulk.wast:101 +invoke($3, `copy`, [65024, 65280, 256]); + +// ./test/core/bulk.wast:104 +invoke($3, `copy`, [65536, 0, 0]); + +// ./test/core/bulk.wast:105 +invoke($3, `copy`, [0, 65536, 0]); + +// ./test/core/bulk.wast:108 +assert_trap(() => invoke($3, `copy`, [65537, 0, 0]), `out of bounds memory access`); + +// ./test/core/bulk.wast:110 +assert_trap(() => invoke($3, `copy`, [0, 65537, 0]), `out of bounds memory access`); + +// ./test/core/bulk.wast:115 +let $4 = instantiate(`(module + (memory 1) + (data "\\aa\\bb\\cc\\dd") + + (func (export "init") (param i32 i32 i32) + (memory.init 0 + (local.get 0) + (local.get 1) + (local.get 2))) + + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))) +)`); + +// ./test/core/bulk.wast:129 +invoke($4, `init`, [0, 1, 2]); + +// ./test/core/bulk.wast:130 +assert_return(() => invoke($4, `load8_u`, [0]), [value("i32", 187)]); + +// ./test/core/bulk.wast:131 +assert_return(() => invoke($4, `load8_u`, [1]), [value("i32", 204)]); + +// ./test/core/bulk.wast:132 +assert_return(() => invoke($4, `load8_u`, [2]), [value("i32", 0)]); + +// ./test/core/bulk.wast:135 +invoke($4, `init`, [65532, 0, 4]); + +// ./test/core/bulk.wast:138 +assert_trap(() => invoke($4, `init`, [65534, 0, 3]), `out of bounds memory access`); + +// ./test/core/bulk.wast:140 +assert_return(() => invoke($4, `load8_u`, [65534]), [value("i32", 204)]); + +// ./test/core/bulk.wast:141 +assert_return(() => invoke($4, `load8_u`, [65535]), [value("i32", 221)]); + +// ./test/core/bulk.wast:144 +invoke($4, `init`, [65536, 0, 0]); + +// ./test/core/bulk.wast:145 +invoke($4, `init`, [0, 4, 0]); + +// ./test/core/bulk.wast:148 +assert_trap(() => invoke($4, `init`, [65537, 0, 0]), `out of bounds memory access`); + +// ./test/core/bulk.wast:150 +assert_trap(() => invoke($4, `init`, [0, 5, 0]), `out of bounds memory access`); + +// ./test/core/bulk.wast:154 +let $5 = instantiate(`(module + (memory 1) + (data $$p "x") + (data $$a (memory 0) (i32.const 0) "x") + + (func (export "drop_passive") (data.drop $$p)) + (func (export "init_passive") (param $$len i32) + (memory.init $$p (i32.const 0) (i32.const 0) (local.get $$len))) + + (func (export "drop_active") (data.drop $$a)) + (func (export "init_active") (param $$len i32) + (memory.init $$a (i32.const 0) (i32.const 0) (local.get $$len))) +)`); + +// ./test/core/bulk.wast:168 +invoke($5, `init_passive`, [1]); + +// ./test/core/bulk.wast:169 +invoke($5, `drop_passive`, []); + +// ./test/core/bulk.wast:170 +invoke($5, `drop_passive`, []); + +// ./test/core/bulk.wast:171 +assert_return(() => invoke($5, `init_passive`, [0]), []); + +// ./test/core/bulk.wast:172 +assert_trap(() => invoke($5, `init_passive`, [1]), `out of bounds memory access`); + +// ./test/core/bulk.wast:173 +invoke($5, `init_passive`, [0]); + +// ./test/core/bulk.wast:174 +invoke($5, `drop_active`, []); + +// ./test/core/bulk.wast:175 +assert_return(() => invoke($5, `init_active`, [0]), []); + +// ./test/core/bulk.wast:176 +assert_trap(() => invoke($5, `init_active`, [1]), `out of bounds memory access`); + +// ./test/core/bulk.wast:177 +invoke($5, `init_active`, [0]); + +// ./test/core/bulk.wast:181 +let $6 = instantiate(`(module + ;; 65 data segments. 64 is the smallest positive number that is encoded + ;; differently as a signed LEB. + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") + (func (data.drop 64)))`); + +// ./test/core/bulk.wast:196 +let $7 = instantiate(`(module (data "goodbye") (func (data.drop 0)))`); + +// ./test/core/bulk.wast:199 +let $8 = instantiate(`(module + (table 3 funcref) + (elem funcref + (ref.func $$zero) (ref.func $$one) (ref.func $$zero) (ref.func $$one)) + + (func $$zero (result i32) (i32.const 0)) + (func $$one (result i32) (i32.const 1)) + + (func (export "init") (param i32 i32 i32) + (table.init 0 + (local.get 0) + (local.get 1) + (local.get 2))) + + (func (export "call") (param i32) (result i32) + (call_indirect (result i32) + (local.get 0))) +)`); + +// ./test/core/bulk.wast:219 +assert_trap(() => invoke($8, `init`, [2, 0, 2]), `out of bounds table access`); + +// ./test/core/bulk.wast:221 +assert_trap(() => invoke($8, `call`, [2]), `uninitialized element 2`); + +// ./test/core/bulk.wast:224 +invoke($8, `init`, [0, 1, 2]); + +// ./test/core/bulk.wast:225 +assert_return(() => invoke($8, `call`, [0]), [value("i32", 1)]); + +// ./test/core/bulk.wast:226 +assert_return(() => invoke($8, `call`, [1]), [value("i32", 0)]); + +// ./test/core/bulk.wast:227 +assert_trap(() => invoke($8, `call`, [2]), `uninitialized element`); + +// ./test/core/bulk.wast:230 +invoke($8, `init`, [1, 2, 2]); + +// ./test/core/bulk.wast:233 +invoke($8, `init`, [3, 0, 0]); + +// ./test/core/bulk.wast:234 +invoke($8, `init`, [0, 4, 0]); + +// ./test/core/bulk.wast:237 +assert_trap(() => invoke($8, `init`, [4, 0, 0]), `out of bounds table access`); + +// ./test/core/bulk.wast:239 +assert_trap(() => invoke($8, `init`, [0, 5, 0]), `out of bounds table access`); + +// ./test/core/bulk.wast:244 +let $9 = instantiate(`(module + (table 1 funcref) + (func $$f) + (elem $$p funcref (ref.func $$f)) + (elem $$a (table 0) (i32.const 0) func $$f) + + (func (export "drop_passive") (elem.drop $$p)) + (func (export "init_passive") (param $$len i32) + (table.init $$p (i32.const 0) (i32.const 0) (local.get $$len)) + ) + + (func (export "drop_active") (elem.drop $$a)) + (func (export "init_active") (param $$len i32) + (table.init $$a (i32.const 0) (i32.const 0) (local.get $$len)) + ) +)`); + +// ./test/core/bulk.wast:261 +invoke($9, `init_passive`, [1]); + +// ./test/core/bulk.wast:262 +invoke($9, `drop_passive`, []); + +// ./test/core/bulk.wast:263 +invoke($9, `drop_passive`, []); + +// ./test/core/bulk.wast:264 +assert_return(() => invoke($9, `init_passive`, [0]), []); + +// ./test/core/bulk.wast:265 +assert_trap(() => invoke($9, `init_passive`, [1]), `out of bounds table access`); + +// ./test/core/bulk.wast:266 +invoke($9, `init_passive`, [0]); + +// ./test/core/bulk.wast:267 +invoke($9, `drop_active`, []); + +// ./test/core/bulk.wast:268 +assert_return(() => invoke($9, `init_active`, [0]), []); + +// ./test/core/bulk.wast:269 +assert_trap(() => invoke($9, `init_active`, [1]), `out of bounds table access`); + +// ./test/core/bulk.wast:270 +invoke($9, `init_active`, [0]); + +// ./test/core/bulk.wast:274 +let $10 = instantiate(`(module + ;; 65 elem segments. 64 is the smallest positive number that is encoded + ;; differently as a signed LEB. + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) + (func (elem.drop 64)))`); + +// ./test/core/bulk.wast:297 +let $11 = instantiate(`(module (elem funcref (ref.func 0)) (func (elem.drop 0)))`); + +// ./test/core/bulk.wast:300 +let $12 = instantiate(`(module + (table 10 funcref) + (elem (i32.const 0) $$zero $$one $$two) + (func $$zero (result i32) (i32.const 0)) + (func $$one (result i32) (i32.const 1)) + (func $$two (result i32) (i32.const 2)) + + (func (export "copy") (param i32 i32 i32) + (table.copy + (local.get 0) + (local.get 1) + (local.get 2))) + + (func (export "call") (param i32) (result i32) + (call_indirect (result i32) + (local.get 0))) +)`); + +// ./test/core/bulk.wast:319 +invoke($12, `copy`, [3, 0, 3]); + +// ./test/core/bulk.wast:321 +assert_return(() => invoke($12, `call`, [3]), [value("i32", 0)]); + +// ./test/core/bulk.wast:322 +assert_return(() => invoke($12, `call`, [4]), [value("i32", 1)]); + +// ./test/core/bulk.wast:323 +assert_return(() => invoke($12, `call`, [5]), [value("i32", 2)]); + +// ./test/core/bulk.wast:326 +invoke($12, `copy`, [0, 1, 3]); + +// ./test/core/bulk.wast:328 +assert_return(() => invoke($12, `call`, [0]), [value("i32", 1)]); + +// ./test/core/bulk.wast:329 +assert_return(() => invoke($12, `call`, [1]), [value("i32", 2)]); + +// ./test/core/bulk.wast:330 +assert_return(() => invoke($12, `call`, [2]), [value("i32", 0)]); + +// ./test/core/bulk.wast:333 +invoke($12, `copy`, [2, 0, 3]); + +// ./test/core/bulk.wast:335 +assert_return(() => invoke($12, `call`, [2]), [value("i32", 1)]); + +// ./test/core/bulk.wast:336 +assert_return(() => invoke($12, `call`, [3]), [value("i32", 2)]); + +// ./test/core/bulk.wast:337 +assert_return(() => invoke($12, `call`, [4]), [value("i32", 0)]); + +// ./test/core/bulk.wast:340 +invoke($12, `copy`, [6, 8, 2]); + +// ./test/core/bulk.wast:341 +invoke($12, `copy`, [8, 6, 2]); + +// ./test/core/bulk.wast:344 +invoke($12, `copy`, [10, 0, 0]); + +// ./test/core/bulk.wast:345 +invoke($12, `copy`, [0, 10, 0]); + +// ./test/core/bulk.wast:348 +assert_trap(() => invoke($12, `copy`, [11, 0, 0]), `out of bounds table access`); + +// ./test/core/bulk.wast:350 +assert_trap(() => invoke($12, `copy`, [0, 11, 0]), `out of bounds table access`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/call.wast.js b/js/src/jit-test/tests/wasm/spec/spec/call.wast.js new file mode 100644 index 0000000000..4595cf4df0 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/call.wast.js @@ -0,0 +1,683 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/call.wast + +// ./test/core/call.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definitions + (func $$const-i32 (result i32) (i32.const 0x132)) + (func $$const-i64 (result i64) (i64.const 0x164)) + (func $$const-f32 (result f32) (f32.const 0xf32)) + (func $$const-f64 (result f64) (f64.const 0xf64)) + (func $$const-i32-i64 (result i32 i64) (i32.const 0x132) (i64.const 0x164)) + + (func $$id-i32 (param i32) (result i32) (local.get 0)) + (func $$id-i64 (param i64) (result i64) (local.get 0)) + (func $$id-f32 (param f32) (result f32) (local.get 0)) + (func $$id-f64 (param f64) (result f64) (local.get 0)) + (func $$id-i32-f64 (param i32 f64) (result i32 f64) + (local.get 0) (local.get 1) + ) + + (func $$swap-i32-i32 (param i32 i32) (result i32 i32) + (local.get 1) (local.get 0) + ) + (func $$swap-f32-f64 (param f32 f64) (result f64 f32) + (local.get 1) (local.get 0) + ) + (func $$swap-f64-i32 (param f64 i32) (result i32 f64) + (local.get 1) (local.get 0) + ) + + (func $$f32-i32 (param f32 i32) (result i32) (local.get 1)) + (func $$i32-i64 (param i32 i64) (result i64) (local.get 1)) + (func $$f64-f32 (param f64 f32) (result f32) (local.get 1)) + (func $$i64-f64 (param i64 f64) (result f64) (local.get 1)) + + ;; Typing + + (func (export "type-i32") (result i32) (call $$const-i32)) + (func (export "type-i64") (result i64) (call $$const-i64)) + (func (export "type-f32") (result f32) (call $$const-f32)) + (func (export "type-f64") (result f64) (call $$const-f64)) + (func (export "type-i32-i64") (result i32 i64) (call $$const-i32-i64)) + + (func (export "type-first-i32") (result i32) (call $$id-i32 (i32.const 32))) + (func (export "type-first-i64") (result i64) (call $$id-i64 (i64.const 64))) + (func (export "type-first-f32") (result f32) (call $$id-f32 (f32.const 1.32))) + (func (export "type-first-f64") (result f64) (call $$id-f64 (f64.const 1.64))) + + (func (export "type-second-i32") (result i32) + (call $$f32-i32 (f32.const 32.1) (i32.const 32)) + ) + (func (export "type-second-i64") (result i64) + (call $$i32-i64 (i32.const 32) (i64.const 64)) + ) + (func (export "type-second-f32") (result f32) + (call $$f64-f32 (f64.const 64) (f32.const 32)) + ) + (func (export "type-second-f64") (result f64) + (call $$i64-f64 (i64.const 64) (f64.const 64.1)) + ) + + (func (export "type-all-i32-f64") (result i32 f64) + (call $$id-i32-f64 (i32.const 32) (f64.const 1.64)) + ) + (func (export "type-all-i32-i32") (result i32 i32) + (call $$swap-i32-i32 (i32.const 1) (i32.const 2)) + ) + (func (export "type-all-f32-f64") (result f64 f32) + (call $$swap-f32-f64 (f32.const 1) (f64.const 2)) + ) + (func (export "type-all-f64-i32") (result i32 f64) + (call $$swap-f64-i32 (f64.const 1) (i32.const 2)) + ) + + ;; Composition + + (func (export "as-binary-all-operands") (result i32) + (i32.add (call $$swap-i32-i32 (i32.const 3) (i32.const 4))) + ) + + (func (export "as-mixed-operands") (result i32) + (call $$swap-i32-i32 (i32.const 3) (i32.const 4)) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "as-call-all-operands") (result i32 i32) + (call $$swap-i32-i32 (call $$swap-i32-i32 (i32.const 3) (i32.const 4))) + ) + + ;; Recursion + + (func $$fac (export "fac") (param i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (i64.const 1)) + (else + (i64.mul + (local.get 0) + (call $$fac (i64.sub (local.get 0) (i64.const 1))) + ) + ) + ) + ) + + (func $$fac-acc (export "fac-acc") (param i64 i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (local.get 1)) + (else + (call $$fac-acc + (i64.sub (local.get 0) (i64.const 1)) + (i64.mul (local.get 0) (local.get 1)) + ) + ) + ) + ) + + (func $$fib (export "fib") (param i64) (result i64) + (if (result i64) (i64.le_u (local.get 0) (i64.const 1)) + (then (i64.const 1)) + (else + (i64.add + (call $$fib (i64.sub (local.get 0) (i64.const 2))) + (call $$fib (i64.sub (local.get 0) (i64.const 1))) + ) + ) + ) + ) + + (func $$even (export "even") (param i64) (result i32) + (if (result i32) (i64.eqz (local.get 0)) + (then (i32.const 44)) + (else (call $$odd (i64.sub (local.get 0) (i64.const 1)))) + ) + ) + (func $$odd (export "odd") (param i64) (result i32) + (if (result i32) (i64.eqz (local.get 0)) + (then (i32.const 99)) + (else (call $$even (i64.sub (local.get 0) (i64.const 1)))) + ) + ) + + ;; Stack exhaustion + + ;; Implementations are required to have every call consume some abstract + ;; resource towards exhausting some abstract finite limit, such that + ;; infinitely recursive test cases reliably trap in finite time. This is + ;; because otherwise applications could come to depend on it on those + ;; implementations and be incompatible with implementations that don't do + ;; it (or don't do it under the same circumstances). + + (func $$runaway (export "runaway") (call $$runaway)) + + (func $$mutual-runaway1 (export "mutual-runaway") (call $$mutual-runaway2)) + (func $$mutual-runaway2 (call $$mutual-runaway1)) + + ;; As parameter of control constructs and instructions + + (memory 1) + + (func (export "as-select-first") (result i32) + (select (call $$const-i32) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (call $$const-i32) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (call $$const-i32)) + ) + + (func (export "as-if-condition") (result i32) + (if (result i32) (call $$const-i32) (then (i32.const 1)) (else (i32.const 2))) + ) + + (func (export "as-br_if-first") (result i32) + (block (result i32) (br_if 0 (call $$const-i32) (i32.const 2))) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) (br_if 0 (i32.const 2) (call $$const-i32))) + ) + + (func (export "as-br_table-first") (result i32) + (block (result i32) (call $$const-i32) (i32.const 2) (br_table 0 0)) + ) + (func (export "as-br_table-last") (result i32) + (block (result i32) (i32.const 2) (call $$const-i32) (br_table 0 0)) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (call $$const-i32) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (call $$const-i32) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (call $$const-i32) + ) + ) + ) + + (func (export "as-store-first") + (call $$const-i32) (i32.const 1) (i32.store) + ) + (func (export "as-store-last") + (i32.const 10) (call $$const-i32) (i32.store) + ) + + (func (export "as-memory.grow-value") (result i32) + (memory.grow (call $$const-i32)) + ) + (func (export "as-return-value") (result i32) + (call $$const-i32) (return) + ) + (func (export "as-drop-operand") + (call $$const-i32) (drop) + ) + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (call $$const-i32))) + ) + (func (export "as-local.set-value") (result i32) + (local i32) (local.set 0 (call $$const-i32)) (local.get 0) + ) + (func (export "as-local.tee-value") (result i32) + (local i32) (local.tee 0 (call $$const-i32)) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (result i32) + (global.set $$a (call $$const-i32)) + (global.get $$a) + ) + (func (export "as-load-operand") (result i32) + (i32.load (call $$const-i32)) + ) + + (func $$dummy (param i32) (result i32) (local.get 0)) + (func $$du (param f32) (result f32) (local.get 0)) + (func (export "as-unary-operand") (result f32) + (block (result f32) (f32.sqrt (call $$du (f32.const 0x0p+0)))) + ) + + (func (export "as-binary-left") (result i32) + (block (result i32) (i32.add (call $$dummy (i32.const 1)) (i32.const 10))) + ) + (func (export "as-binary-right") (result i32) + (block (result i32) (i32.sub (i32.const 10) (call $$dummy (i32.const 1)))) + ) + + (func (export "as-test-operand") (result i32) + (block (result i32) (i32.eqz (call $$dummy (i32.const 1)))) + ) + + (func (export "as-compare-left") (result i32) + (block (result i32) (i32.le_u (call $$dummy (i32.const 1)) (i32.const 10))) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) (i32.ne (i32.const 10) (call $$dummy (i32.const 1)))) + ) + + (func (export "as-convert-operand") (result i64) + (block (result i64) (i64.extend_i32_s (call $$dummy (i32.const 1)))) + ) + + ;; Test correct argument passing + + (func $$return-from-long-argument-list-helper (param f32 i32 i32 f64 f32 f32 f32 f64 f32 i32 i32 f32 f64 i64 i64 i32 i64 i64 f32 i64 i64 i64 i32 f32 f32 f32 f64 f32 i32 i64 f32 f64 f64 f32 i32 f32 f32 f64 i64 f64 i32 i64 f32 f64 i32 i32 i32 i64 f64 i32 i64 i64 f64 f64 f64 f64 f64 f64 i32 f32 f64 f64 i32 i64 f32 f32 f32 i32 f64 f64 f64 f64 f64 f32 i64 i64 i32 i32 i32 f32 f64 i32 i64 f32 f32 f32 i32 i32 f32 f64 i64 f32 f64 f32 f32 f32 i32 f32 i64 i32) (result i32) + (local.get 99) + ) + + (func (export "return-from-long-argument-list") (param i32) (result i32) + (call $$return-from-long-argument-list-helper (f32.const 0) (i32.const 0) (i32.const 0) (f64.const 0) (f32.const 0) (f32.const 0) (f32.const 0) (f64.const 0) (f32.const 0) (i32.const 0) (i32.const 0) (f32.const 0) (f64.const 0) (i64.const 0) (i64.const 0) (i32.const 0) (i64.const 0) (i64.const 0) (f32.const 0) (i64.const 0) (i64.const 0) (i64.const 0) (i32.const 0) (f32.const 0) (f32.const 0) (f32.const 0) (f64.const 0) (f32.const 0) (i32.const 0) (i64.const 0) (f32.const 0) (f64.const 0) (f64.const 0) (f32.const 0) (i32.const 0) (f32.const 0) (f32.const 0) (f64.const 0) (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (f32.const 0) (f64.const 0) (i32.const 0) (i32.const 0) (i32.const 0) (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i64.const 0) (f64.const 0) (f64.const 0) (f64.const 0) (f64.const 0) (f64.const 0) (f64.const 0) (i32.const 0) (f32.const 0) (f64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (f32.const 0) (f32.const 0) (f32.const 0) (i32.const 0) (f64.const 0) (f64.const 0) (f64.const 0) (f64.const 0) (f64.const 0) (f32.const 0) (i64.const 0) (i64.const 0) (i32.const 0) (i32.const 0) (i32.const 0) (f32.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (f32.const 0) (f32.const 0) (f32.const 0) (i32.const 0) (i32.const 0) (f32.const 0) (f64.const 0) (i64.const 0) (f32.const 0) (f64.const 0) (f32.const 0) (f32.const 0) (f32.const 0) (i32.const 0) (f32.const 0) (i64.const 0) (local.get 0)) + ) +)`); + +// ./test/core/call.wast:285 +assert_return(() => invoke($0, `type-i32`, []), [value("i32", 306)]); + +// ./test/core/call.wast:286 +assert_return(() => invoke($0, `type-i64`, []), [value("i64", 356n)]); + +// ./test/core/call.wast:287 +assert_return(() => invoke($0, `type-f32`, []), [value("f32", 3890)]); + +// ./test/core/call.wast:288 +assert_return(() => invoke($0, `type-f64`, []), [value("f64", 3940)]); + +// ./test/core/call.wast:289 +assert_return(() => invoke($0, `type-i32-i64`, []), [value("i32", 306), value("i64", 356n)]); + +// ./test/core/call.wast:291 +assert_return(() => invoke($0, `type-first-i32`, []), [value("i32", 32)]); + +// ./test/core/call.wast:292 +assert_return(() => invoke($0, `type-first-i64`, []), [value("i64", 64n)]); + +// ./test/core/call.wast:293 +assert_return(() => invoke($0, `type-first-f32`, []), [value("f32", 1.32)]); + +// ./test/core/call.wast:294 +assert_return(() => invoke($0, `type-first-f64`, []), [value("f64", 1.64)]); + +// ./test/core/call.wast:296 +assert_return(() => invoke($0, `type-second-i32`, []), [value("i32", 32)]); + +// ./test/core/call.wast:297 +assert_return(() => invoke($0, `type-second-i64`, []), [value("i64", 64n)]); + +// ./test/core/call.wast:298 +assert_return(() => invoke($0, `type-second-f32`, []), [value("f32", 32)]); + +// ./test/core/call.wast:299 +assert_return(() => invoke($0, `type-second-f64`, []), [value("f64", 64.1)]); + +// ./test/core/call.wast:301 +assert_return(() => invoke($0, `type-all-i32-f64`, []), [value("i32", 32), value("f64", 1.64)]); + +// ./test/core/call.wast:302 +assert_return(() => invoke($0, `type-all-i32-i32`, []), [value("i32", 2), value("i32", 1)]); + +// ./test/core/call.wast:303 +assert_return(() => invoke($0, `type-all-f32-f64`, []), [value("f64", 2), value("f32", 1)]); + +// ./test/core/call.wast:304 +assert_return(() => invoke($0, `type-all-f64-i32`, []), [value("i32", 2), value("f64", 1)]); + +// ./test/core/call.wast:306 +assert_return(() => invoke($0, `as-binary-all-operands`, []), [value("i32", 7)]); + +// ./test/core/call.wast:307 +assert_return(() => invoke($0, `as-mixed-operands`, []), [value("i32", 32)]); + +// ./test/core/call.wast:308 +assert_return(() => invoke($0, `as-call-all-operands`, []), [value("i32", 3), value("i32", 4)]); + +// ./test/core/call.wast:310 +assert_return(() => invoke($0, `fac`, [0n]), [value("i64", 1n)]); + +// ./test/core/call.wast:311 +assert_return(() => invoke($0, `fac`, [1n]), [value("i64", 1n)]); + +// ./test/core/call.wast:312 +assert_return(() => invoke($0, `fac`, [5n]), [value("i64", 120n)]); + +// ./test/core/call.wast:313 +assert_return(() => invoke($0, `fac`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/call.wast:314 +assert_return(() => invoke($0, `fac-acc`, [0n, 1n]), [value("i64", 1n)]); + +// ./test/core/call.wast:315 +assert_return(() => invoke($0, `fac-acc`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/call.wast:316 +assert_return(() => invoke($0, `fac-acc`, [5n, 1n]), [value("i64", 120n)]); + +// ./test/core/call.wast:317 +assert_return(() => invoke($0, `fac-acc`, [25n, 1n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/call.wast:322 +assert_return(() => invoke($0, `fib`, [0n]), [value("i64", 1n)]); + +// ./test/core/call.wast:323 +assert_return(() => invoke($0, `fib`, [1n]), [value("i64", 1n)]); + +// ./test/core/call.wast:324 +assert_return(() => invoke($0, `fib`, [2n]), [value("i64", 2n)]); + +// ./test/core/call.wast:325 +assert_return(() => invoke($0, `fib`, [5n]), [value("i64", 8n)]); + +// ./test/core/call.wast:326 +assert_return(() => invoke($0, `fib`, [20n]), [value("i64", 10946n)]); + +// ./test/core/call.wast:328 +assert_return(() => invoke($0, `even`, [0n]), [value("i32", 44)]); + +// ./test/core/call.wast:329 +assert_return(() => invoke($0, `even`, [1n]), [value("i32", 99)]); + +// ./test/core/call.wast:330 +assert_return(() => invoke($0, `even`, [100n]), [value("i32", 44)]); + +// ./test/core/call.wast:331 +assert_return(() => invoke($0, `even`, [77n]), [value("i32", 99)]); + +// ./test/core/call.wast:332 +assert_return(() => invoke($0, `odd`, [0n]), [value("i32", 99)]); + +// ./test/core/call.wast:333 +assert_return(() => invoke($0, `odd`, [1n]), [value("i32", 44)]); + +// ./test/core/call.wast:334 +assert_return(() => invoke($0, `odd`, [200n]), [value("i32", 99)]); + +// ./test/core/call.wast:335 +assert_return(() => invoke($0, `odd`, [77n]), [value("i32", 44)]); + +// ./test/core/call.wast:337 +assert_exhaustion(() => invoke($0, `runaway`, []), `call stack exhausted`); + +// ./test/core/call.wast:338 +assert_exhaustion(() => invoke($0, `mutual-runaway`, []), `call stack exhausted`); + +// ./test/core/call.wast:340 +assert_return(() => invoke($0, `as-select-first`, []), [value("i32", 306)]); + +// ./test/core/call.wast:341 +assert_return(() => invoke($0, `as-select-mid`, []), [value("i32", 2)]); + +// ./test/core/call.wast:342 +assert_return(() => invoke($0, `as-select-last`, []), [value("i32", 2)]); + +// ./test/core/call.wast:344 +assert_return(() => invoke($0, `as-if-condition`, []), [value("i32", 1)]); + +// ./test/core/call.wast:346 +assert_return(() => invoke($0, `as-br_if-first`, []), [value("i32", 306)]); + +// ./test/core/call.wast:347 +assert_return(() => invoke($0, `as-br_if-last`, []), [value("i32", 2)]); + +// ./test/core/call.wast:349 +assert_return(() => invoke($0, `as-br_table-first`, []), [value("i32", 306)]); + +// ./test/core/call.wast:350 +assert_return(() => invoke($0, `as-br_table-last`, []), [value("i32", 2)]); + +// ./test/core/call.wast:352 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 306)]); + +// ./test/core/call.wast:353 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 2)]); + +// ./test/core/call.wast:354 +assert_trap(() => invoke($0, `as-call_indirect-last`, []), `undefined element`); + +// ./test/core/call.wast:356 +assert_return(() => invoke($0, `as-store-first`, []), []); + +// ./test/core/call.wast:357 +assert_return(() => invoke($0, `as-store-last`, []), []); + +// ./test/core/call.wast:359 +assert_return(() => invoke($0, `as-memory.grow-value`, []), [value("i32", 1)]); + +// ./test/core/call.wast:360 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 306)]); + +// ./test/core/call.wast:361 +assert_return(() => invoke($0, `as-drop-operand`, []), []); + +// ./test/core/call.wast:362 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 306)]); + +// ./test/core/call.wast:363 +assert_return(() => invoke($0, `as-local.set-value`, []), [value("i32", 306)]); + +// ./test/core/call.wast:364 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("i32", 306)]); + +// ./test/core/call.wast:365 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 306)]); + +// ./test/core/call.wast:366 +assert_return(() => invoke($0, `as-load-operand`, []), [value("i32", 1)]); + +// ./test/core/call.wast:368 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("f32", 0)]); + +// ./test/core/call.wast:369 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 11)]); + +// ./test/core/call.wast:370 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i32", 9)]); + +// ./test/core/call.wast:371 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/call.wast:372 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/call.wast:373 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/call.wast:374 +assert_return(() => invoke($0, `as-convert-operand`, []), [value("i64", 1n)]); + +// ./test/core/call.wast:376 +assert_return(() => invoke($0, `return-from-long-argument-list`, [42]), [value("i32", 42)]); + +// ./test/core/call.wast:380 +assert_invalid( + () => instantiate(`(module + (func $$type-void-vs-num (i32.eqz (call 1))) + (func) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:387 +assert_invalid( + () => instantiate(`(module + (func $$type-num-vs-num (i32.eqz (call 1))) + (func (result i64) (i64.const 1)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:395 +assert_invalid( + () => instantiate(`(module + (func $$arity-0-vs-1 (call 1)) + (func (param i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:402 +assert_invalid( + () => instantiate(`(module + (func $$arity-0-vs-2 (call 1)) + (func (param f64 i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:409 +assert_invalid( + () => instantiate(`(module + (func $$arity-1-vs-0 (call 1 (i32.const 1))) + (func) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:416 +assert_invalid( + () => instantiate(`(module + (func $$arity-2-vs-0 (call 1 (f64.const 2) (i32.const 1))) + (func) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:424 +assert_invalid( + () => instantiate(`(module + (func $$type-first-void-vs-num (call 1 (nop) (i32.const 1))) + (func (param i32 i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:431 +assert_invalid( + () => instantiate(`(module + (func $$type-second-void-vs-num (call 1 (i32.const 1) (nop))) + (func (param i32 i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:438 +assert_invalid( + () => instantiate(`(module + (func $$type-first-num-vs-num (call 1 (f64.const 1) (i32.const 1))) + (func (param i32 f64)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:445 +assert_invalid( + () => instantiate(`(module + (func $$type-second-num-vs-num (call 1 (i32.const 1) (f64.const 1))) + (func (param f64 i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:453 +assert_invalid( + () => instantiate(`(module + (func $$type-first-empty-in-block + (block (call 1)) + ) + (func (param i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:462 +assert_invalid( + () => instantiate(`(module + (func $$type-second-empty-in-block + (block (call 1 (i32.const 0))) + ) + (func (param i32 i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:471 +assert_invalid( + () => instantiate(`(module + (func $$type-first-empty-in-loop + (loop (call 1)) + ) + (func (param i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:480 +assert_invalid( + () => instantiate(`(module + (func $$type-second-empty-in-loop + (loop (call 1 (i32.const 0))) + ) + (func (param i32 i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:489 +assert_invalid( + () => instantiate(`(module + (func $$type-first-empty-in-then + (if (i32.const 0) (then (call 1))) + ) + (func (param i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:498 +assert_invalid( + () => instantiate(`(module + (func $$type-second-empty-in-then + (if (i32.const 0) (then (call 1 (i32.const 0)))) + ) + (func (param i32 i32)) + )`), + `type mismatch`, +); + +// ./test/core/call.wast:511 +assert_invalid( + () => instantiate(`(module (func $$unbound-func (call 1)))`), + `unknown function`, +); + +// ./test/core/call.wast:515 +assert_invalid( + () => instantiate(`(module (func $$large-func (call 1012321300)))`), + `unknown function`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/call_indirect.wast.js b/js/src/jit-test/tests/wasm/spec/spec/call_indirect.wast.js new file mode 100644 index 0000000000..9d62c42427 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/call_indirect.wast.js @@ -0,0 +1,1256 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/call_indirect.wast + +// ./test/core/call_indirect.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definitions + (type $$proc (func)) + (type $$out-i32 (func (result i32))) + (type $$out-i64 (func (result i64))) + (type $$out-f32 (func (result f32))) + (type $$out-f64 (func (result f64))) + (type $$out-f64-i32 (func (result f64 i32))) + (type $$over-i32 (func (param i32) (result i32))) + (type $$over-i64 (func (param i64) (result i64))) + (type $$over-f32 (func (param f32) (result f32))) + (type $$over-f64 (func (param f64) (result f64))) + (type $$over-i32-f64 (func (param i32 f64) (result i32 f64))) + (type $$swap-i32-i64 (func (param i32 i64) (result i64 i32))) + (type $$f32-i32 (func (param f32 i32) (result i32))) + (type $$i32-i64 (func (param i32 i64) (result i64))) + (type $$f64-f32 (func (param f64 f32) (result f32))) + (type $$i64-f64 (func (param i64 f64) (result f64))) + (type $$over-i32-duplicate (func (param i32) (result i32))) + (type $$over-i64-duplicate (func (param i64) (result i64))) + (type $$over-f32-duplicate (func (param f32) (result f32))) + (type $$over-f64-duplicate (func (param f64) (result f64))) + + (func $$const-i32 (type $$out-i32) (i32.const 0x132)) + (func $$const-i64 (type $$out-i64) (i64.const 0x164)) + (func $$const-f32 (type $$out-f32) (f32.const 0xf32)) + (func $$const-f64 (type $$out-f64) (f64.const 0xf64)) + (func $$const-f64-i32 (type $$out-f64-i32) (f64.const 0xf64) (i32.const 32)) + + (func $$id-i32 (type $$over-i32) (local.get 0)) + (func $$id-i64 (type $$over-i64) (local.get 0)) + (func $$id-f32 (type $$over-f32) (local.get 0)) + (func $$id-f64 (type $$over-f64) (local.get 0)) + (func $$id-i32-f64 (type $$over-i32-f64) (local.get 0) (local.get 1)) + (func $$swap-i32-i64 (type $$swap-i32-i64) (local.get 1) (local.get 0)) + + (func $$i32-i64 (type $$i32-i64) (local.get 1)) + (func $$i64-f64 (type $$i64-f64) (local.get 1)) + (func $$f32-i32 (type $$f32-i32) (local.get 1)) + (func $$f64-f32 (type $$f64-f32) (local.get 1)) + + (func $$over-i32-duplicate (type $$over-i32-duplicate) (local.get 0)) + (func $$over-i64-duplicate (type $$over-i64-duplicate) (local.get 0)) + (func $$over-f32-duplicate (type $$over-f32-duplicate) (local.get 0)) + (func $$over-f64-duplicate (type $$over-f64-duplicate) (local.get 0)) + + (table funcref + (elem + $$const-i32 $$const-i64 $$const-f32 $$const-f64 ;; 0..3 + $$id-i32 $$id-i64 $$id-f32 $$id-f64 ;; 4..7 + $$f32-i32 $$i32-i64 $$f64-f32 $$i64-f64 ;; 9..11 + $$fac-i64 $$fib-i64 $$even $$odd ;; 12..15 + $$runaway $$mutual-runaway1 $$mutual-runaway2 ;; 16..18 + $$over-i32-duplicate $$over-i64-duplicate ;; 19..20 + $$over-f32-duplicate $$over-f64-duplicate ;; 21..22 + $$fac-i32 $$fac-f32 $$fac-f64 ;; 23..25 + $$fib-i32 $$fib-f32 $$fib-f64 ;; 26..28 + $$const-f64-i32 $$id-i32-f64 $$swap-i32-i64 ;; 29..31 + ) + ) + + ;; Syntax + + (func + (call_indirect (i32.const 0)) + (call_indirect (param i64) (i64.const 0) (i32.const 0)) + (call_indirect (param i64) (param) (param f64 i32 i64) + (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i32.const 0) + ) + (call_indirect (result) (i32.const 0)) + (drop (i32.eqz (call_indirect (result i32) (i32.const 0)))) + (drop (i32.eqz (call_indirect (result i32) (result) (i32.const 0)))) + (drop (i32.eqz + (call_indirect (param i64) (result i32) (i64.const 0) (i32.const 0)) + )) + (drop (i32.eqz + (call_indirect + (param) (param i64) (param) (param f64 i32 i64) (param) (param) + (result) (result i32) (result) (result) + (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i32.const 0) + ) + )) + (drop (i64.eqz + (call_indirect (type $$over-i64) (param i64) (result i64) + (i64.const 0) (i32.const 0) + ) + )) + ) + + ;; Typing + + (func (export "type-i32") (result i32) + (call_indirect (type $$out-i32) (i32.const 0)) + ) + (func (export "type-i64") (result i64) + (call_indirect (type $$out-i64) (i32.const 1)) + ) + (func (export "type-f32") (result f32) + (call_indirect (type $$out-f32) (i32.const 2)) + ) + (func (export "type-f64") (result f64) + (call_indirect (type $$out-f64) (i32.const 3)) + ) + (func (export "type-f64-i32") (result f64 i32) + (call_indirect (type $$out-f64-i32) (i32.const 29)) + ) + + (func (export "type-index") (result i64) + (call_indirect (type $$over-i64) (i64.const 100) (i32.const 5)) + ) + + (func (export "type-first-i32") (result i32) + (call_indirect (type $$over-i32) (i32.const 32) (i32.const 4)) + ) + (func (export "type-first-i64") (result i64) + (call_indirect (type $$over-i64) (i64.const 64) (i32.const 5)) + ) + (func (export "type-first-f32") (result f32) + (call_indirect (type $$over-f32) (f32.const 1.32) (i32.const 6)) + ) + (func (export "type-first-f64") (result f64) + (call_indirect (type $$over-f64) (f64.const 1.64) (i32.const 7)) + ) + + (func (export "type-second-i32") (result i32) + (call_indirect (type $$f32-i32) (f32.const 32.1) (i32.const 32) (i32.const 8)) + ) + (func (export "type-second-i64") (result i64) + (call_indirect (type $$i32-i64) (i32.const 32) (i64.const 64) (i32.const 9)) + ) + (func (export "type-second-f32") (result f32) + (call_indirect (type $$f64-f32) (f64.const 64) (f32.const 32) (i32.const 10)) + ) + (func (export "type-second-f64") (result f64) + (call_indirect (type $$i64-f64) (i64.const 64) (f64.const 64.1) (i32.const 11)) + ) + + (func (export "type-all-f64-i32") (result f64 i32) + (call_indirect (type $$out-f64-i32) (i32.const 29)) + ) + (func (export "type-all-i32-f64") (result i32 f64) + (call_indirect (type $$over-i32-f64) + (i32.const 1) (f64.const 2) (i32.const 30) + ) + ) + (func (export "type-all-i32-i64") (result i64 i32) + (call_indirect (type $$swap-i32-i64) + (i32.const 1) (i64.const 2) (i32.const 31) + ) + ) + + ;; Dispatch + + (func (export "dispatch") (param i32 i64) (result i64) + (call_indirect (type $$over-i64) (local.get 1) (local.get 0)) + ) + + (func (export "dispatch-structural-i64") (param i32) (result i64) + (call_indirect (type $$over-i64-duplicate) (i64.const 9) (local.get 0)) + ) + (func (export "dispatch-structural-i32") (param i32) (result i32) + (call_indirect (type $$over-i32-duplicate) (i32.const 9) (local.get 0)) + ) + (func (export "dispatch-structural-f32") (param i32) (result f32) + (call_indirect (type $$over-f32-duplicate) (f32.const 9.0) (local.get 0)) + ) + (func (export "dispatch-structural-f64") (param i32) (result f64) + (call_indirect (type $$over-f64-duplicate) (f64.const 9.0) (local.get 0)) + ) + + ;; Recursion + + (func $$fac-i64 (export "fac-i64") (type $$over-i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (i64.const 1)) + (else + (i64.mul + (local.get 0) + (call_indirect (type $$over-i64) + (i64.sub (local.get 0) (i64.const 1)) + (i32.const 12) + ) + ) + ) + ) + ) + + (func $$fib-i64 (export "fib-i64") (type $$over-i64) + (if (result i64) (i64.le_u (local.get 0) (i64.const 1)) + (then (i64.const 1)) + (else + (i64.add + (call_indirect (type $$over-i64) + (i64.sub (local.get 0) (i64.const 2)) + (i32.const 13) + ) + (call_indirect (type $$over-i64) + (i64.sub (local.get 0) (i64.const 1)) + (i32.const 13) + ) + ) + ) + ) + ) + + (func $$fac-i32 (export "fac-i32") (type $$over-i32) + (if (result i32) (i32.eqz (local.get 0)) + (then (i32.const 1)) + (else + (i32.mul + (local.get 0) + (call_indirect (type $$over-i32) + (i32.sub (local.get 0) (i32.const 1)) + (i32.const 23) + ) + ) + ) + ) + ) + + (func $$fac-f32 (export "fac-f32") (type $$over-f32) + (if (result f32) (f32.eq (local.get 0) (f32.const 0.0)) + (then (f32.const 1.0)) + (else + (f32.mul + (local.get 0) + (call_indirect (type $$over-f32) + (f32.sub (local.get 0) (f32.const 1.0)) + (i32.const 24) + ) + ) + ) + ) + ) + + (func $$fac-f64 (export "fac-f64") (type $$over-f64) + (if (result f64) (f64.eq (local.get 0) (f64.const 0.0)) + (then (f64.const 1.0)) + (else + (f64.mul + (local.get 0) + (call_indirect (type $$over-f64) + (f64.sub (local.get 0) (f64.const 1.0)) + (i32.const 25) + ) + ) + ) + ) + ) + + (func $$fib-i32 (export "fib-i32") (type $$over-i32) + (if (result i32) (i32.le_u (local.get 0) (i32.const 1)) + (then (i32.const 1)) + (else + (i32.add + (call_indirect (type $$over-i32) + (i32.sub (local.get 0) (i32.const 2)) + (i32.const 26) + ) + (call_indirect (type $$over-i32) + (i32.sub (local.get 0) (i32.const 1)) + (i32.const 26) + ) + ) + ) + ) + ) + + (func $$fib-f32 (export "fib-f32") (type $$over-f32) + (if (result f32) (f32.le (local.get 0) (f32.const 1.0)) + (then (f32.const 1.0)) + (else + (f32.add + (call_indirect (type $$over-f32) + (f32.sub (local.get 0) (f32.const 2.0)) + (i32.const 27) + ) + (call_indirect (type $$over-f32) + (f32.sub (local.get 0) (f32.const 1.0)) + (i32.const 27) + ) + ) + ) + ) + ) + + (func $$fib-f64 (export "fib-f64") (type $$over-f64) + (if (result f64) (f64.le (local.get 0) (f64.const 1.0)) + (then (f64.const 1.0)) + (else + (f64.add + (call_indirect (type $$over-f64) + (f64.sub (local.get 0) (f64.const 2.0)) + (i32.const 28) + ) + (call_indirect (type $$over-f64) + (f64.sub (local.get 0) (f64.const 1.0)) + (i32.const 28) + ) + ) + ) + ) + ) + + (func $$even (export "even") (param i32) (result i32) + (if (result i32) (i32.eqz (local.get 0)) + (then (i32.const 44)) + (else + (call_indirect (type $$over-i32) + (i32.sub (local.get 0) (i32.const 1)) + (i32.const 15) + ) + ) + ) + ) + (func $$odd (export "odd") (param i32) (result i32) + (if (result i32) (i32.eqz (local.get 0)) + (then (i32.const 99)) + (else + (call_indirect (type $$over-i32) + (i32.sub (local.get 0) (i32.const 1)) + (i32.const 14) + ) + ) + ) + ) + + ;; Stack exhaustion + + ;; Implementations are required to have every call consume some abstract + ;; resource towards exhausting some abstract finite limit, such that + ;; infinitely recursive test cases reliably trap in finite time. This is + ;; because otherwise applications could come to depend on it on those + ;; implementations and be incompatible with implementations that don't do + ;; it (or don't do it under the same circumstances). + + (func $$runaway (export "runaway") (call_indirect (type $$proc) (i32.const 16))) + + (func $$mutual-runaway1 (export "mutual-runaway") (call_indirect (type $$proc) (i32.const 18))) + (func $$mutual-runaway2 (call_indirect (type $$proc) (i32.const 17))) + + ;; As parameter of control constructs and instructions + + (memory 1) + + (func (export "as-select-first") (result i32) + (select (call_indirect (type $$out-i32) (i32.const 0)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (call_indirect (type $$out-i32) (i32.const 0)) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (call_indirect (type $$out-i32) (i32.const 0))) + ) + + (func (export "as-if-condition") (result i32) + (if (result i32) (call_indirect (type $$out-i32) (i32.const 0)) (then (i32.const 1)) (else (i32.const 2))) + ) + + (func (export "as-br_if-first") (result i64) + (block (result i64) (br_if 0 (call_indirect (type $$out-i64) (i32.const 1)) (i32.const 2))) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) (br_if 0 (i32.const 2) (call_indirect (type $$out-i32) (i32.const 0)))) + ) + + (func (export "as-br_table-first") (result f32) + (block (result f32) (call_indirect (type $$out-f32) (i32.const 2)) (i32.const 2) (br_table 0 0)) + ) + (func (export "as-br_table-last") (result i32) + (block (result i32) (i32.const 2) (call_indirect (type $$out-i32) (i32.const 0)) (br_table 0 0)) + ) + + (func (export "as-store-first") + (call_indirect (type $$out-i32) (i32.const 0)) (i32.const 1) (i32.store) + ) + (func (export "as-store-last") + (i32.const 10) (call_indirect (type $$out-f64) (i32.const 3)) (f64.store) + ) + + (func (export "as-memory.grow-value") (result i32) + (memory.grow (call_indirect (type $$out-i32) (i32.const 0))) + ) + (func (export "as-return-value") (result i32) + (call_indirect (type $$over-i32) (i32.const 1) (i32.const 4)) (return) + ) + (func (export "as-drop-operand") + (call_indirect (type $$over-i64) (i64.const 1) (i32.const 5)) (drop) + ) + (func (export "as-br-value") (result f32) + (block (result f32) (br 0 (call_indirect (type $$over-f32) (f32.const 1) (i32.const 6)))) + ) + (func (export "as-local.set-value") (result f64) + (local f64) (local.set 0 (call_indirect (type $$over-f64) (f64.const 1) (i32.const 7))) (local.get 0) + ) + (func (export "as-local.tee-value") (result f64) + (local f64) (local.tee 0 (call_indirect (type $$over-f64) (f64.const 1) (i32.const 7))) + ) + (global $$a (mut f64) (f64.const 10.0)) + (func (export "as-global.set-value") (result f64) + (global.set $$a (call_indirect (type $$over-f64) (f64.const 1.0) (i32.const 7))) + (global.get $$a) + ) + + (func (export "as-load-operand") (result i32) + (i32.load (call_indirect (type $$out-i32) (i32.const 0))) + ) + + (func (export "as-unary-operand") (result f32) + (block (result f32) + (f32.sqrt + (call_indirect (type $$over-f32) (f32.const 0x0p+0) (i32.const 6)) + ) + ) + ) + + (func (export "as-binary-left") (result i32) + (block (result i32) + (i32.add + (call_indirect (type $$over-i32) (i32.const 1) (i32.const 4)) + (i32.const 10) + ) + ) + ) + (func (export "as-binary-right") (result i32) + (block (result i32) + (i32.sub + (i32.const 10) + (call_indirect (type $$over-i32) (i32.const 1) (i32.const 4)) + ) + ) + ) + + (func (export "as-test-operand") (result i32) + (block (result i32) + (i32.eqz + (call_indirect (type $$over-i32) (i32.const 1) (i32.const 4)) + ) + ) + ) + + (func (export "as-compare-left") (result i32) + (block (result i32) + (i32.le_u + (call_indirect (type $$over-i32) (i32.const 1) (i32.const 4)) + (i32.const 10) + ) + ) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) + (i32.ne + (i32.const 10) + (call_indirect (type $$over-i32) (i32.const 1) (i32.const 4)) + ) + ) + ) + + (func (export "as-convert-operand") (result i64) + (block (result i64) + (i64.extend_i32_s + (call_indirect (type $$over-i32) (i32.const 1) (i32.const 4)) + ) + ) + ) + +)`); + +// ./test/core/call_indirect.wast:471 +assert_return(() => invoke($0, `type-i32`, []), [value("i32", 306)]); + +// ./test/core/call_indirect.wast:472 +assert_return(() => invoke($0, `type-i64`, []), [value("i64", 356n)]); + +// ./test/core/call_indirect.wast:473 +assert_return(() => invoke($0, `type-f32`, []), [value("f32", 3890)]); + +// ./test/core/call_indirect.wast:474 +assert_return(() => invoke($0, `type-f64`, []), [value("f64", 3940)]); + +// ./test/core/call_indirect.wast:475 +assert_return(() => invoke($0, `type-f64-i32`, []), [value("f64", 3940), value("i32", 32)]); + +// ./test/core/call_indirect.wast:477 +assert_return(() => invoke($0, `type-index`, []), [value("i64", 100n)]); + +// ./test/core/call_indirect.wast:479 +assert_return(() => invoke($0, `type-first-i32`, []), [value("i32", 32)]); + +// ./test/core/call_indirect.wast:480 +assert_return(() => invoke($0, `type-first-i64`, []), [value("i64", 64n)]); + +// ./test/core/call_indirect.wast:481 +assert_return(() => invoke($0, `type-first-f32`, []), [value("f32", 1.32)]); + +// ./test/core/call_indirect.wast:482 +assert_return(() => invoke($0, `type-first-f64`, []), [value("f64", 1.64)]); + +// ./test/core/call_indirect.wast:484 +assert_return(() => invoke($0, `type-second-i32`, []), [value("i32", 32)]); + +// ./test/core/call_indirect.wast:485 +assert_return(() => invoke($0, `type-second-i64`, []), [value("i64", 64n)]); + +// ./test/core/call_indirect.wast:486 +assert_return(() => invoke($0, `type-second-f32`, []), [value("f32", 32)]); + +// ./test/core/call_indirect.wast:487 +assert_return(() => invoke($0, `type-second-f64`, []), [value("f64", 64.1)]); + +// ./test/core/call_indirect.wast:489 +assert_return(() => invoke($0, `type-all-f64-i32`, []), [value("f64", 3940), value("i32", 32)]); + +// ./test/core/call_indirect.wast:490 +assert_return(() => invoke($0, `type-all-i32-f64`, []), [value("i32", 1), value("f64", 2)]); + +// ./test/core/call_indirect.wast:491 +assert_return(() => invoke($0, `type-all-i32-i64`, []), [value("i64", 2n), value("i32", 1)]); + +// ./test/core/call_indirect.wast:493 +assert_return(() => invoke($0, `dispatch`, [5, 2n]), [value("i64", 2n)]); + +// ./test/core/call_indirect.wast:494 +assert_return(() => invoke($0, `dispatch`, [5, 5n]), [value("i64", 5n)]); + +// ./test/core/call_indirect.wast:495 +assert_return(() => invoke($0, `dispatch`, [12, 5n]), [value("i64", 120n)]); + +// ./test/core/call_indirect.wast:496 +assert_return(() => invoke($0, `dispatch`, [13, 5n]), [value("i64", 8n)]); + +// ./test/core/call_indirect.wast:497 +assert_return(() => invoke($0, `dispatch`, [20, 2n]), [value("i64", 2n)]); + +// ./test/core/call_indirect.wast:498 +assert_trap(() => invoke($0, `dispatch`, [0, 2n]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:499 +assert_trap(() => invoke($0, `dispatch`, [15, 2n]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:500 +assert_trap(() => invoke($0, `dispatch`, [32, 2n]), `undefined element`); + +// ./test/core/call_indirect.wast:501 +assert_trap(() => invoke($0, `dispatch`, [-1, 2n]), `undefined element`); + +// ./test/core/call_indirect.wast:502 +assert_trap(() => invoke($0, `dispatch`, [1213432423, 2n]), `undefined element`); + +// ./test/core/call_indirect.wast:504 +assert_return(() => invoke($0, `dispatch-structural-i64`, [5]), [value("i64", 9n)]); + +// ./test/core/call_indirect.wast:505 +assert_return(() => invoke($0, `dispatch-structural-i64`, [12]), [value("i64", 362880n)]); + +// ./test/core/call_indirect.wast:506 +assert_return(() => invoke($0, `dispatch-structural-i64`, [13]), [value("i64", 55n)]); + +// ./test/core/call_indirect.wast:507 +assert_return(() => invoke($0, `dispatch-structural-i64`, [20]), [value("i64", 9n)]); + +// ./test/core/call_indirect.wast:508 +assert_trap(() => invoke($0, `dispatch-structural-i64`, [11]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:509 +assert_trap(() => invoke($0, `dispatch-structural-i64`, [22]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:511 +assert_return(() => invoke($0, `dispatch-structural-i32`, [4]), [value("i32", 9)]); + +// ./test/core/call_indirect.wast:512 +assert_return(() => invoke($0, `dispatch-structural-i32`, [23]), [value("i32", 362880)]); + +// ./test/core/call_indirect.wast:513 +assert_return(() => invoke($0, `dispatch-structural-i32`, [26]), [value("i32", 55)]); + +// ./test/core/call_indirect.wast:514 +assert_return(() => invoke($0, `dispatch-structural-i32`, [19]), [value("i32", 9)]); + +// ./test/core/call_indirect.wast:515 +assert_trap(() => invoke($0, `dispatch-structural-i32`, [9]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:516 +assert_trap(() => invoke($0, `dispatch-structural-i32`, [21]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:518 +assert_return(() => invoke($0, `dispatch-structural-f32`, [6]), [value("f32", 9)]); + +// ./test/core/call_indirect.wast:519 +assert_return(() => invoke($0, `dispatch-structural-f32`, [24]), [value("f32", 362880)]); + +// ./test/core/call_indirect.wast:520 +assert_return(() => invoke($0, `dispatch-structural-f32`, [27]), [value("f32", 55)]); + +// ./test/core/call_indirect.wast:521 +assert_return(() => invoke($0, `dispatch-structural-f32`, [21]), [value("f32", 9)]); + +// ./test/core/call_indirect.wast:522 +assert_trap(() => invoke($0, `dispatch-structural-f32`, [8]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:523 +assert_trap(() => invoke($0, `dispatch-structural-f32`, [19]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:525 +assert_return(() => invoke($0, `dispatch-structural-f64`, [7]), [value("f64", 9)]); + +// ./test/core/call_indirect.wast:526 +assert_return(() => invoke($0, `dispatch-structural-f64`, [25]), [value("f64", 362880)]); + +// ./test/core/call_indirect.wast:527 +assert_return(() => invoke($0, `dispatch-structural-f64`, [28]), [value("f64", 55)]); + +// ./test/core/call_indirect.wast:528 +assert_return(() => invoke($0, `dispatch-structural-f64`, [22]), [value("f64", 9)]); + +// ./test/core/call_indirect.wast:529 +assert_trap(() => invoke($0, `dispatch-structural-f64`, [10]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:530 +assert_trap(() => invoke($0, `dispatch-structural-f64`, [18]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:532 +assert_return(() => invoke($0, `fac-i64`, [0n]), [value("i64", 1n)]); + +// ./test/core/call_indirect.wast:533 +assert_return(() => invoke($0, `fac-i64`, [1n]), [value("i64", 1n)]); + +// ./test/core/call_indirect.wast:534 +assert_return(() => invoke($0, `fac-i64`, [5n]), [value("i64", 120n)]); + +// ./test/core/call_indirect.wast:535 +assert_return(() => invoke($0, `fac-i64`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/call_indirect.wast:537 +assert_return(() => invoke($0, `fac-i32`, [0]), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:538 +assert_return(() => invoke($0, `fac-i32`, [1]), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:539 +assert_return(() => invoke($0, `fac-i32`, [5]), [value("i32", 120)]); + +// ./test/core/call_indirect.wast:540 +assert_return(() => invoke($0, `fac-i32`, [10]), [value("i32", 3628800)]); + +// ./test/core/call_indirect.wast:542 +assert_return(() => invoke($0, `fac-f32`, [value("f32", 0)]), [value("f32", 1)]); + +// ./test/core/call_indirect.wast:543 +assert_return(() => invoke($0, `fac-f32`, [value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/call_indirect.wast:544 +assert_return(() => invoke($0, `fac-f32`, [value("f32", 5)]), [value("f32", 120)]); + +// ./test/core/call_indirect.wast:545 +assert_return(() => invoke($0, `fac-f32`, [value("f32", 10)]), [value("f32", 3628800)]); + +// ./test/core/call_indirect.wast:547 +assert_return(() => invoke($0, `fac-f64`, [value("f64", 0)]), [value("f64", 1)]); + +// ./test/core/call_indirect.wast:548 +assert_return(() => invoke($0, `fac-f64`, [value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/call_indirect.wast:549 +assert_return(() => invoke($0, `fac-f64`, [value("f64", 5)]), [value("f64", 120)]); + +// ./test/core/call_indirect.wast:550 +assert_return(() => invoke($0, `fac-f64`, [value("f64", 10)]), [value("f64", 3628800)]); + +// ./test/core/call_indirect.wast:552 +assert_return(() => invoke($0, `fib-i64`, [0n]), [value("i64", 1n)]); + +// ./test/core/call_indirect.wast:553 +assert_return(() => invoke($0, `fib-i64`, [1n]), [value("i64", 1n)]); + +// ./test/core/call_indirect.wast:554 +assert_return(() => invoke($0, `fib-i64`, [2n]), [value("i64", 2n)]); + +// ./test/core/call_indirect.wast:555 +assert_return(() => invoke($0, `fib-i64`, [5n]), [value("i64", 8n)]); + +// ./test/core/call_indirect.wast:556 +assert_return(() => invoke($0, `fib-i64`, [20n]), [value("i64", 10946n)]); + +// ./test/core/call_indirect.wast:558 +assert_return(() => invoke($0, `fib-i32`, [0]), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:559 +assert_return(() => invoke($0, `fib-i32`, [1]), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:560 +assert_return(() => invoke($0, `fib-i32`, [2]), [value("i32", 2)]); + +// ./test/core/call_indirect.wast:561 +assert_return(() => invoke($0, `fib-i32`, [5]), [value("i32", 8)]); + +// ./test/core/call_indirect.wast:562 +assert_return(() => invoke($0, `fib-i32`, [20]), [value("i32", 10946)]); + +// ./test/core/call_indirect.wast:564 +assert_return(() => invoke($0, `fib-f32`, [value("f32", 0)]), [value("f32", 1)]); + +// ./test/core/call_indirect.wast:565 +assert_return(() => invoke($0, `fib-f32`, [value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/call_indirect.wast:566 +assert_return(() => invoke($0, `fib-f32`, [value("f32", 2)]), [value("f32", 2)]); + +// ./test/core/call_indirect.wast:567 +assert_return(() => invoke($0, `fib-f32`, [value("f32", 5)]), [value("f32", 8)]); + +// ./test/core/call_indirect.wast:568 +assert_return(() => invoke($0, `fib-f32`, [value("f32", 20)]), [value("f32", 10946)]); + +// ./test/core/call_indirect.wast:570 +assert_return(() => invoke($0, `fib-f64`, [value("f64", 0)]), [value("f64", 1)]); + +// ./test/core/call_indirect.wast:571 +assert_return(() => invoke($0, `fib-f64`, [value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/call_indirect.wast:572 +assert_return(() => invoke($0, `fib-f64`, [value("f64", 2)]), [value("f64", 2)]); + +// ./test/core/call_indirect.wast:573 +assert_return(() => invoke($0, `fib-f64`, [value("f64", 5)]), [value("f64", 8)]); + +// ./test/core/call_indirect.wast:574 +assert_return(() => invoke($0, `fib-f64`, [value("f64", 20)]), [value("f64", 10946)]); + +// ./test/core/call_indirect.wast:576 +assert_return(() => invoke($0, `even`, [0]), [value("i32", 44)]); + +// ./test/core/call_indirect.wast:577 +assert_return(() => invoke($0, `even`, [1]), [value("i32", 99)]); + +// ./test/core/call_indirect.wast:578 +assert_return(() => invoke($0, `even`, [100]), [value("i32", 44)]); + +// ./test/core/call_indirect.wast:579 +assert_return(() => invoke($0, `even`, [77]), [value("i32", 99)]); + +// ./test/core/call_indirect.wast:580 +assert_return(() => invoke($0, `odd`, [0]), [value("i32", 99)]); + +// ./test/core/call_indirect.wast:581 +assert_return(() => invoke($0, `odd`, [1]), [value("i32", 44)]); + +// ./test/core/call_indirect.wast:582 +assert_return(() => invoke($0, `odd`, [200]), [value("i32", 99)]); + +// ./test/core/call_indirect.wast:583 +assert_return(() => invoke($0, `odd`, [77]), [value("i32", 44)]); + +// ./test/core/call_indirect.wast:585 +assert_exhaustion(() => invoke($0, `runaway`, []), `call stack exhausted`); + +// ./test/core/call_indirect.wast:586 +assert_exhaustion(() => invoke($0, `mutual-runaway`, []), `call stack exhausted`); + +// ./test/core/call_indirect.wast:588 +assert_return(() => invoke($0, `as-select-first`, []), [value("i32", 306)]); + +// ./test/core/call_indirect.wast:589 +assert_return(() => invoke($0, `as-select-mid`, []), [value("i32", 2)]); + +// ./test/core/call_indirect.wast:590 +assert_return(() => invoke($0, `as-select-last`, []), [value("i32", 2)]); + +// ./test/core/call_indirect.wast:592 +assert_return(() => invoke($0, `as-if-condition`, []), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:594 +assert_return(() => invoke($0, `as-br_if-first`, []), [value("i64", 356n)]); + +// ./test/core/call_indirect.wast:595 +assert_return(() => invoke($0, `as-br_if-last`, []), [value("i32", 2)]); + +// ./test/core/call_indirect.wast:597 +assert_return(() => invoke($0, `as-br_table-first`, []), [value("f32", 3890)]); + +// ./test/core/call_indirect.wast:598 +assert_return(() => invoke($0, `as-br_table-last`, []), [value("i32", 2)]); + +// ./test/core/call_indirect.wast:600 +assert_return(() => invoke($0, `as-store-first`, []), []); + +// ./test/core/call_indirect.wast:601 +assert_return(() => invoke($0, `as-store-last`, []), []); + +// ./test/core/call_indirect.wast:603 +assert_return(() => invoke($0, `as-memory.grow-value`, []), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:604 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:605 +assert_return(() => invoke($0, `as-drop-operand`, []), []); + +// ./test/core/call_indirect.wast:606 +assert_return(() => invoke($0, `as-br-value`, []), [value("f32", 1)]); + +// ./test/core/call_indirect.wast:607 +assert_return(() => invoke($0, `as-local.set-value`, []), [value("f64", 1)]); + +// ./test/core/call_indirect.wast:608 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("f64", 1)]); + +// ./test/core/call_indirect.wast:609 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("f64", 1)]); + +// ./test/core/call_indirect.wast:610 +assert_return(() => invoke($0, `as-load-operand`, []), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:612 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("f32", 0)]); + +// ./test/core/call_indirect.wast:613 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 11)]); + +// ./test/core/call_indirect.wast:614 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i32", 9)]); + +// ./test/core/call_indirect.wast:615 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/call_indirect.wast:616 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:617 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/call_indirect.wast:618 +assert_return(() => invoke($0, `as-convert-operand`, []), [value("i64", 1n)]); + +// ./test/core/call_indirect.wast:623 +let $1 = instantiate(`(module + (type $$ii-i (func (param i32 i32) (result i32))) + + (table $$t1 funcref (elem $$f $$g)) + (table $$t2 funcref (elem $$h $$i $$j)) + (table $$t3 4 funcref) + (elem (table $$t3) (i32.const 0) func $$g $$h) + (elem (table $$t3) (i32.const 3) func $$z) + + (func $$f (type $$ii-i) (i32.add (local.get 0) (local.get 1))) + (func $$g (type $$ii-i) (i32.sub (local.get 0) (local.get 1))) + (func $$h (type $$ii-i) (i32.mul (local.get 0) (local.get 1))) + (func $$i (type $$ii-i) (i32.div_u (local.get 0) (local.get 1))) + (func $$j (type $$ii-i) (i32.rem_u (local.get 0) (local.get 1))) + (func $$z) + + (func (export "call-1") (param i32 i32 i32) (result i32) + (call_indirect $$t1 (type $$ii-i) (local.get 0) (local.get 1) (local.get 2)) + ) + (func (export "call-2") (param i32 i32 i32) (result i32) + (call_indirect $$t2 (type $$ii-i) (local.get 0) (local.get 1) (local.get 2)) + ) + (func (export "call-3") (param i32 i32 i32) (result i32) + (call_indirect $$t3 (type $$ii-i) (local.get 0) (local.get 1) (local.get 2)) + ) +)`); + +// ./test/core/call_indirect.wast:650 +assert_return(() => invoke($1, `call-1`, [2, 3, 0]), [value("i32", 5)]); + +// ./test/core/call_indirect.wast:651 +assert_return(() => invoke($1, `call-1`, [2, 3, 1]), [value("i32", -1)]); + +// ./test/core/call_indirect.wast:652 +assert_trap(() => invoke($1, `call-1`, [2, 3, 2]), `undefined element`); + +// ./test/core/call_indirect.wast:654 +assert_return(() => invoke($1, `call-2`, [2, 3, 0]), [value("i32", 6)]); + +// ./test/core/call_indirect.wast:655 +assert_return(() => invoke($1, `call-2`, [2, 3, 1]), [value("i32", 0)]); + +// ./test/core/call_indirect.wast:656 +assert_return(() => invoke($1, `call-2`, [2, 3, 2]), [value("i32", 2)]); + +// ./test/core/call_indirect.wast:657 +assert_trap(() => invoke($1, `call-2`, [2, 3, 3]), `undefined element`); + +// ./test/core/call_indirect.wast:659 +assert_return(() => invoke($1, `call-3`, [2, 3, 0]), [value("i32", -1)]); + +// ./test/core/call_indirect.wast:660 +assert_return(() => invoke($1, `call-3`, [2, 3, 1]), [value("i32", 6)]); + +// ./test/core/call_indirect.wast:661 +assert_trap(() => invoke($1, `call-3`, [2, 3, 2]), `uninitialized element`); + +// ./test/core/call_indirect.wast:662 +assert_trap(() => invoke($1, `call-3`, [2, 3, 3]), `indirect call type mismatch`); + +// ./test/core/call_indirect.wast:663 +assert_trap(() => invoke($1, `call-3`, [2, 3, 4]), `undefined element`); + +// ./test/core/call_indirect.wast:668 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (call_indirect (type $$sig) (result i32) (param i32) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/call_indirect.wast:680 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (call_indirect (param i32) (type $$sig) (result i32) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/call_indirect.wast:692 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (call_indirect (param i32) (result i32) (type $$sig) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/call_indirect.wast:704 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (call_indirect (result i32) (type $$sig) (param i32) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/call_indirect.wast:716 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (call_indirect (result i32) (param i32) (type $$sig) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/call_indirect.wast:728 +assert_malformed( + () => instantiate(`(table 0 funcref) (func (result i32) (call_indirect (result i32) (param i32) (i32.const 0) (i32.const 0)) ) `), + `unexpected token`, +); + +// ./test/core/call_indirect.wast:738 +assert_malformed( + () => instantiate(`(table 0 funcref) (func (call_indirect (param $$x i32) (i32.const 0) (i32.const 0))) `), + `unexpected token`, +); + +// ./test/core/call_indirect.wast:745 +assert_malformed( + () => instantiate(`(type $$sig (func)) (table 0 funcref) (func (result i32) (call_indirect (type $$sig) (result i32) (i32.const 0)) ) `), + `inline function type`, +); + +// ./test/core/call_indirect.wast:755 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (call_indirect (type $$sig) (result i32) (i32.const 0)) ) `), + `inline function type`, +); + +// ./test/core/call_indirect.wast:765 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (call_indirect (type $$sig) (param i32) (i32.const 0) (i32.const 0)) ) `), + `inline function type`, +); + +// ./test/core/call_indirect.wast:775 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (table 0 funcref) (func (result i32) (call_indirect (type $$sig) (param i32) (result i32) (i32.const 0) (i32.const 0) ) ) `), + `inline function type`, +); + +// ./test/core/call_indirect.wast:790 +assert_invalid( + () => instantiate(`(module + (type (func)) + (func $$no-table (call_indirect (type 0) (i32.const 0))) + )`), + `unknown table`, +); + +// ./test/core/call_indirect.wast:798 +assert_invalid( + () => instantiate(`(module + (type (func)) + (table 0 funcref) + (func $$type-void-vs-num (i32.eqz (call_indirect (type 0) (i32.const 0)))) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:806 +assert_invalid( + () => instantiate(`(module + (type (func (result i64))) + (table 0 funcref) + (func $$type-num-vs-num (i32.eqz (call_indirect (type 0) (i32.const 0)))) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:815 +assert_invalid( + () => instantiate(`(module + (type (func (param i32))) + (table 0 funcref) + (func $$arity-0-vs-1 (call_indirect (type 0) (i32.const 0))) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:823 +assert_invalid( + () => instantiate(`(module + (type (func (param f64 i32))) + (table 0 funcref) + (func $$arity-0-vs-2 (call_indirect (type 0) (i32.const 0))) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:831 +assert_invalid( + () => instantiate(`(module + (type (func)) + (table 0 funcref) + (func $$arity-1-vs-0 (call_indirect (type 0) (i32.const 1) (i32.const 0))) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:839 +assert_invalid( + () => instantiate(`(module + (type (func)) + (table 0 funcref) + (func $$arity-2-vs-0 + (call_indirect (type 0) (f64.const 2) (i32.const 1) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:850 +assert_invalid( + () => instantiate(`(module + (type (func (param i32))) + (table 0 funcref) + (func $$type-func-void-vs-i32 (call_indirect (type 0) (i32.const 1) (nop))) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:858 +assert_invalid( + () => instantiate(`(module + (type (func (param i32))) + (table 0 funcref) + (func $$type-func-num-vs-i32 (call_indirect (type 0) (i32.const 0) (i64.const 1))) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:867 +assert_invalid( + () => instantiate(`(module + (type (func (param i32 i32))) + (table 0 funcref) + (func $$type-first-void-vs-num + (call_indirect (type 0) (nop) (i32.const 1) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:877 +assert_invalid( + () => instantiate(`(module + (type (func (param i32 i32))) + (table 0 funcref) + (func $$type-second-void-vs-num + (call_indirect (type 0) (i32.const 1) (nop) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:887 +assert_invalid( + () => instantiate(`(module + (type (func (param i32 f64))) + (table 0 funcref) + (func $$type-first-num-vs-num + (call_indirect (type 0) (f64.const 1) (i32.const 1) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:897 +assert_invalid( + () => instantiate(`(module + (type (func (param f64 i32))) + (table 0 funcref) + (func $$type-second-num-vs-num + (call_indirect (type 0) (i32.const 1) (f64.const 1) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:908 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32)) + (type $$sig (func (param i32))) + (table funcref (elem $$f)) + (func $$type-first-empty-in-block + (block + (call_indirect (type $$sig) (i32.const 0)) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:921 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32 i32)) + (type $$sig (func (param i32 i32))) + (table funcref (elem $$f)) + (func $$type-second-empty-in-block + (block + (call_indirect (type $$sig) (i32.const 0) (i32.const 0)) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:934 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32)) + (type $$sig (func (param i32))) + (table funcref (elem $$f)) + (func $$type-first-empty-in-loop + (loop + (call_indirect (type $$sig) (i32.const 0)) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:947 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32 i32)) + (type $$sig (func (param i32 i32))) + (table funcref (elem $$f)) + (func $$type-second-empty-in-loop + (loop + (call_indirect (type $$sig) (i32.const 0) (i32.const 0)) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:960 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32)) + (type $$sig (func (param i32))) + (table funcref (elem $$f)) + (func $$type-first-empty-in-then + (i32.const 0) (i32.const 0) + (if + (then + (call_indirect (type $$sig) (i32.const 0)) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:976 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32 i32)) + (type $$sig (func (param i32 i32))) + (table funcref (elem $$f)) + (func $$type-second-empty-in-then + (i32.const 0) (i32.const 0) + (if + (then + (call_indirect (type $$sig) (i32.const 0) (i32.const 0)) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/call_indirect.wast:996 +assert_invalid( + () => instantiate(`(module + (table 0 funcref) + (func $$unbound-type (call_indirect (type 1) (i32.const 0))) + )`), + `unknown type`, +); + +// ./test/core/call_indirect.wast:1003 +assert_invalid( + () => instantiate(`(module + (table 0 funcref) + (func $$large-type (call_indirect (type 1012321300) (i32.const 0))) + )`), + `unknown type`, +); + +// ./test/core/call_indirect.wast:1014 +assert_invalid( + () => instantiate(`(module (table funcref (elem 0 0)))`), + `unknown function`, +); + +// ./test/core/call_indirect.wast:1024 +let $2 = instantiate(`(module + (table 1 funcref) + (func unreachable call_indirect) + (func unreachable call_indirect nop) + (func unreachable call_indirect call_indirect) + (func unreachable call_indirect (call_indirect)) + (func unreachable call_indirect call_indirect call_indirect) + (func unreachable call_indirect (result)) + (func unreachable call_indirect (result) (result)) + (func unreachable call_indirect (result) (result) call_indirect) + (func unreachable call_indirect (result) (result) call_indirect (result)) + (func (result i32) unreachable call_indirect select) + (func (result i32) unreachable call_indirect select call_indirect) +)`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/comments.wast.js b/js/src/jit-test/tests/wasm/spec/spec/comments.wast.js new file mode 100644 index 0000000000..8eee0e3cc2 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/comments.wast.js @@ -0,0 +1,34 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/comments.wast + +// ./test/core/comments.wast:10:0 +let $0 = instantiate(`(module;;comment +)`); + +// ./test/core/comments.wast:56:11 +let $1 = instantiate(`(module(;comment;) +(;comment;))`); + +// ./test/core/comments.wast:66 +let $2 = instantiate(`(module + (;comment(;nested(;further;)nested;)comment;) +)`); + +// ./test/core/comments.wast:75 +let $3 = instantiate(`(module + (;comment;;comment(;nested;)comment;) +)`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/const.wast.js b/js/src/jit-test/tests/wasm/spec/spec/const.wast.js new file mode 100644 index 0000000000..c8c02698da --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/const.wast.js @@ -0,0 +1,3114 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/const.wast + +// ./test/core/const.wast:5 +let $0 = instantiate(`(module (func (i32.const 0_123_456_789) drop))`); + +// ./test/core/const.wast:6 +let $1 = instantiate(`(module (func (i32.const 0x0_9acf_fBDF) drop))`); + +// ./test/core/const.wast:7 +assert_malformed(() => instantiate(`(func (i32.const) drop) `), `unexpected token`); + +// ./test/core/const.wast:11 +assert_malformed(() => instantiate(`(func (i32.const 0x) drop) `), `unknown operator`); + +// ./test/core/const.wast:15 +assert_malformed(() => instantiate(`(func (i32.const 1x) drop) `), `unknown operator`); + +// ./test/core/const.wast:19 +assert_malformed(() => instantiate(`(func (i32.const 0xg) drop) `), `unknown operator`); + +// ./test/core/const.wast:24 +let $2 = instantiate(`(module (func (i64.const 0_123_456_789) drop))`); + +// ./test/core/const.wast:25 +let $3 = instantiate(`(module (func (i64.const 0x0125_6789_ADEF_bcef) drop))`); + +// ./test/core/const.wast:26 +assert_malformed(() => instantiate(`(func (i64.const) drop) `), `unexpected token`); + +// ./test/core/const.wast:30 +assert_malformed(() => instantiate(`(func (i64.const 0x) drop) `), `unknown operator`); + +// ./test/core/const.wast:34 +assert_malformed(() => instantiate(`(func (i64.const 1x) drop) `), `unknown operator`); + +// ./test/core/const.wast:38 +assert_malformed(() => instantiate(`(func (i64.const 0xg) drop) `), `unknown operator`); + +// ./test/core/const.wast:43 +let $4 = instantiate(`(module (func (f32.const 0123456789) drop))`); + +// ./test/core/const.wast:44 +let $5 = instantiate(`(module (func (f32.const 0123456789e019) drop))`); + +// ./test/core/const.wast:45 +let $6 = instantiate(`(module (func (f32.const 0123456789e+019) drop))`); + +// ./test/core/const.wast:46 +let $7 = instantiate(`(module (func (f32.const 0123456789e-019) drop))`); + +// ./test/core/const.wast:47 +let $8 = instantiate(`(module (func (f32.const 0123456789.) drop))`); + +// ./test/core/const.wast:48 +let $9 = instantiate(`(module (func (f32.const 0123456789.e019) drop))`); + +// ./test/core/const.wast:49 +let $10 = instantiate(`(module (func (f32.const 0123456789.e+019) drop))`); + +// ./test/core/const.wast:50 +let $11 = instantiate(`(module (func (f32.const 0123456789.e-019) drop))`); + +// ./test/core/const.wast:51 +let $12 = instantiate(`(module (func (f32.const 0123456789.0123456789) drop))`); + +// ./test/core/const.wast:52 +let $13 = instantiate(`(module (func (f32.const 0123456789.0123456789e019) drop))`); + +// ./test/core/const.wast:53 +let $14 = instantiate(`(module (func (f32.const 0123456789.0123456789e+019) drop))`); + +// ./test/core/const.wast:54 +let $15 = instantiate(`(module (func (f32.const 0123456789.0123456789e-019) drop))`); + +// ./test/core/const.wast:55 +let $16 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF) drop))`); + +// ./test/core/const.wast:56 +let $17 = instantiate(`(module (func (f32.const 0x0123456789ABCDEFp019) drop))`); + +// ./test/core/const.wast:57 +let $18 = instantiate(`(module (func (f32.const 0x0123456789ABCDEFp+019) drop))`); + +// ./test/core/const.wast:58 +let $19 = instantiate(`(module (func (f32.const 0x0123456789ABCDEFp-019) drop))`); + +// ./test/core/const.wast:59 +let $20 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF.) drop))`); + +// ./test/core/const.wast:60 +let $21 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF.p019) drop))`); + +// ./test/core/const.wast:61 +let $22 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF.p+019) drop))`); + +// ./test/core/const.wast:62 +let $23 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF.p-019) drop))`); + +// ./test/core/const.wast:63 +let $24 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF.019aF) drop))`); + +// ./test/core/const.wast:64 +let $25 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF.019aFp019) drop))`); + +// ./test/core/const.wast:65 +let $26 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF.019aFp+019) drop))`); + +// ./test/core/const.wast:66 +let $27 = instantiate(`(module (func (f32.const 0x0123456789ABCDEF.019aFp-019) drop))`); + +// ./test/core/const.wast:67 +assert_malformed(() => instantiate(`(func (f32.const) drop) `), `unexpected token`); + +// ./test/core/const.wast:71 +assert_malformed(() => instantiate(`(func (f32.const .0) drop) `), `unknown operator`); + +// ./test/core/const.wast:75 +assert_malformed(() => instantiate(`(func (f32.const .0e0) drop) `), `unknown operator`); + +// ./test/core/const.wast:79 +assert_malformed(() => instantiate(`(func (f32.const 0e) drop) `), `unknown operator`); + +// ./test/core/const.wast:83 +assert_malformed(() => instantiate(`(func (f32.const 0e+) drop) `), `unknown operator`); + +// ./test/core/const.wast:87 +assert_malformed(() => instantiate(`(func (f32.const 0.0e) drop) `), `unknown operator`); + +// ./test/core/const.wast:91 +assert_malformed(() => instantiate(`(func (f32.const 0.0e-) drop) `), `unknown operator`); + +// ./test/core/const.wast:95 +assert_malformed(() => instantiate(`(func (f32.const 0x) drop) `), `unknown operator`); + +// ./test/core/const.wast:99 +assert_malformed(() => instantiate(`(func (f32.const 1x) drop) `), `unknown operator`); + +// ./test/core/const.wast:103 +assert_malformed(() => instantiate(`(func (f32.const 0xg) drop) `), `unknown operator`); + +// ./test/core/const.wast:107 +assert_malformed(() => instantiate(`(func (f32.const 0x.) drop) `), `unknown operator`); + +// ./test/core/const.wast:111 +assert_malformed(() => instantiate(`(func (f32.const 0x0.g) drop) `), `unknown operator`); + +// ./test/core/const.wast:115 +assert_malformed(() => instantiate(`(func (f32.const 0x0p) drop) `), `unknown operator`); + +// ./test/core/const.wast:119 +assert_malformed(() => instantiate(`(func (f32.const 0x0p+) drop) `), `unknown operator`); + +// ./test/core/const.wast:123 +assert_malformed(() => instantiate(`(func (f32.const 0x0p-) drop) `), `unknown operator`); + +// ./test/core/const.wast:127 +assert_malformed(() => instantiate(`(func (f32.const 0x0.0p) drop) `), `unknown operator`); + +// ./test/core/const.wast:131 +assert_malformed( + () => instantiate(`(func (f32.const 0x0.0p+) drop) `), + `unknown operator`, +); + +// ./test/core/const.wast:135 +assert_malformed( + () => instantiate(`(func (f32.const 0x0.0p-) drop) `), + `unknown operator`, +); + +// ./test/core/const.wast:139 +assert_malformed(() => instantiate(`(func (f32.const 0x0pA) drop) `), `unknown operator`); + +// ./test/core/const.wast:145 +let $28 = instantiate(`(module (func (f64.const 0123456789) drop))`); + +// ./test/core/const.wast:146 +let $29 = instantiate(`(module (func (f64.const 0123456789e019) drop))`); + +// ./test/core/const.wast:147 +let $30 = instantiate(`(module (func (f64.const 0123456789e+019) drop))`); + +// ./test/core/const.wast:148 +let $31 = instantiate(`(module (func (f64.const 0123456789e-019) drop))`); + +// ./test/core/const.wast:149 +let $32 = instantiate(`(module (func (f64.const 0123456789.) drop))`); + +// ./test/core/const.wast:150 +let $33 = instantiate(`(module (func (f64.const 0123456789.e019) drop))`); + +// ./test/core/const.wast:151 +let $34 = instantiate(`(module (func (f64.const 0123456789.e+019) drop))`); + +// ./test/core/const.wast:152 +let $35 = instantiate(`(module (func (f64.const 0123456789.e-019) drop))`); + +// ./test/core/const.wast:153 +let $36 = instantiate(`(module (func (f64.const 0123456789.0123456789) drop))`); + +// ./test/core/const.wast:154 +let $37 = instantiate(`(module (func (f64.const 0123456789.0123456789e019) drop))`); + +// ./test/core/const.wast:155 +let $38 = instantiate(`(module (func (f64.const 0123456789.0123456789e+019) drop))`); + +// ./test/core/const.wast:156 +let $39 = instantiate(`(module (func (f64.const 0123456789.0123456789e-019) drop))`); + +// ./test/core/const.wast:157 +let $40 = instantiate(`(module (func (f64.const 0_1_2_3_4_5_6_7_8_9) drop))`); + +// ./test/core/const.wast:158 +let $41 = instantiate(`(module (func (f64.const 0_1_2_3_4_5_6_7_8_9.) drop))`); + +// ./test/core/const.wast:159 +let $42 = instantiate(`(module (func (f64.const 0_1_2_3_4_5_6_7_8_9.0_1_2_3_4_5_6_7_8_9) drop))`); + +// ./test/core/const.wast:160 +let $43 = instantiate(`(module (func (f64.const 0_1_2_3_4_5_6_7_8_9e+0_1_9) drop))`); + +// ./test/core/const.wast:161 +let $44 = instantiate(`(module (func (f64.const 0_1_2_3_4_5_6_7_8_9.e+0_1_9) drop))`); + +// ./test/core/const.wast:162 +let $45 = instantiate(`(module (func (f64.const 0_1_2_3_4_5_6_7_8_9.0_1_2_3_4_5_6_7_8_9e0_1_9) drop))`); + +// ./test/core/const.wast:164 +let $46 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef) drop))`); + +// ./test/core/const.wast:165 +let $47 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdefp019) drop))`); + +// ./test/core/const.wast:166 +let $48 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdefp+019) drop))`); + +// ./test/core/const.wast:167 +let $49 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdefp-019) drop))`); + +// ./test/core/const.wast:168 +let $50 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef.) drop))`); + +// ./test/core/const.wast:169 +let $51 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef.p019) drop))`); + +// ./test/core/const.wast:170 +let $52 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef.p+019) drop))`); + +// ./test/core/const.wast:171 +let $53 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef.p-019) drop))`); + +// ./test/core/const.wast:172 +let $54 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdef) drop))`); + +// ./test/core/const.wast:173 +let $55 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp019) drop))`); + +// ./test/core/const.wast:174 +let $56 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp+019) drop))`); + +// ./test/core/const.wast:175 +let $57 = instantiate(`(module (func (f64.const 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp-019) drop))`); + +// ./test/core/const.wast:176 +let $58 = instantiate(`(module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f) drop))`); + +// ./test/core/const.wast:177 +let $59 = instantiate(`(module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f.) drop))`); + +// ./test/core/const.wast:178 +let $60 = instantiate(`(module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f.0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f) drop))`); + +// ./test/core/const.wast:179 +let $61 = instantiate(`(module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_fp0_1_9) drop))`); + +// ./test/core/const.wast:180 +let $62 = instantiate(`(module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f.p0_1_9) drop))`); + +// ./test/core/const.wast:181 +let $63 = instantiate(`(module (func (f64.const 0x0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_f.0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_a_b_c_d_e_fp0_1_9) drop))`); + +// ./test/core/const.wast:184 +assert_malformed(() => instantiate(`(func (f64.const) drop) `), `unexpected token`); + +// ./test/core/const.wast:188 +assert_malformed(() => instantiate(`(func (f64.const .0) drop) `), `unknown operator`); + +// ./test/core/const.wast:192 +assert_malformed(() => instantiate(`(func (f64.const .0e0) drop) `), `unknown operator`); + +// ./test/core/const.wast:196 +assert_malformed(() => instantiate(`(func (f64.const 0e) drop) `), `unknown operator`); + +// ./test/core/const.wast:200 +assert_malformed(() => instantiate(`(func (f64.const 0e+) drop) `), `unknown operator`); + +// ./test/core/const.wast:204 +assert_malformed(() => instantiate(`(func (f64.const 0.0e) drop) `), `unknown operator`); + +// ./test/core/const.wast:208 +assert_malformed(() => instantiate(`(func (f64.const 0.0e-) drop) `), `unknown operator`); + +// ./test/core/const.wast:212 +assert_malformed(() => instantiate(`(func (f64.const 0x) drop) `), `unknown operator`); + +// ./test/core/const.wast:216 +assert_malformed(() => instantiate(`(func (f64.const 1x) drop) `), `unknown operator`); + +// ./test/core/const.wast:220 +assert_malformed(() => instantiate(`(func (f64.const 0xg) drop) `), `unknown operator`); + +// ./test/core/const.wast:224 +assert_malformed(() => instantiate(`(func (f64.const 0x.) drop) `), `unknown operator`); + +// ./test/core/const.wast:228 +assert_malformed(() => instantiate(`(func (f64.const 0x0.g) drop) `), `unknown operator`); + +// ./test/core/const.wast:232 +assert_malformed(() => instantiate(`(func (f64.const 0x0p) drop) `), `unknown operator`); + +// ./test/core/const.wast:236 +assert_malformed(() => instantiate(`(func (f64.const 0x0p+) drop) `), `unknown operator`); + +// ./test/core/const.wast:240 +assert_malformed(() => instantiate(`(func (f64.const 0x0p-) drop) `), `unknown operator`); + +// ./test/core/const.wast:244 +assert_malformed(() => instantiate(`(func (f64.const 0x0.0p) drop) `), `unknown operator`); + +// ./test/core/const.wast:248 +assert_malformed( + () => instantiate(`(func (f64.const 0x0.0p+) drop) `), + `unknown operator`, +); + +// ./test/core/const.wast:252 +assert_malformed( + () => instantiate(`(func (f64.const 0x0.0p-) drop) `), + `unknown operator`, +); + +// ./test/core/const.wast:256 +assert_malformed(() => instantiate(`(func (f64.const 0x0pA) drop) `), `unknown operator`); + +// ./test/core/const.wast:264 +let $64 = instantiate(`(module (func (i32.const 0xffffffff) drop))`); + +// ./test/core/const.wast:265 +let $65 = instantiate(`(module (func (i32.const -0x80000000) drop))`); + +// ./test/core/const.wast:266 +assert_malformed( + () => instantiate(`(func (i32.const 0x100000000) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:270 +assert_malformed( + () => instantiate(`(func (i32.const -0x80000001) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:275 +let $66 = instantiate(`(module (func (i32.const 4294967295) drop))`); + +// ./test/core/const.wast:276 +let $67 = instantiate(`(module (func (i32.const -2147483648) drop))`); + +// ./test/core/const.wast:277 +assert_malformed( + () => instantiate(`(func (i32.const 4294967296) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:281 +assert_malformed( + () => instantiate(`(func (i32.const -2147483649) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:286 +let $68 = instantiate(`(module (func (i64.const 0xffffffffffffffff) drop))`); + +// ./test/core/const.wast:287 +let $69 = instantiate(`(module (func (i64.const -0x8000000000000000) drop))`); + +// ./test/core/const.wast:288 +assert_malformed( + () => instantiate(`(func (i64.const 0x10000000000000000) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:292 +assert_malformed( + () => instantiate(`(func (i64.const -0x8000000000000001) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:297 +let $70 = instantiate(`(module (func (i64.const 18446744073709551615) drop))`); + +// ./test/core/const.wast:298 +let $71 = instantiate(`(module (func (i64.const -9223372036854775808) drop))`); + +// ./test/core/const.wast:299 +assert_malformed( + () => instantiate(`(func (i64.const 18446744073709551616) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:303 +assert_malformed( + () => instantiate(`(func (i64.const -9223372036854775809) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:308 +let $72 = instantiate(`(module (func (f32.const 0x1p127) drop))`); + +// ./test/core/const.wast:309 +let $73 = instantiate(`(module (func (f32.const -0x1p127) drop))`); + +// ./test/core/const.wast:310 +let $74 = instantiate(`(module (func (f32.const 0x1.fffffep127) drop))`); + +// ./test/core/const.wast:311 +let $75 = instantiate(`(module (func (f32.const -0x1.fffffep127) drop))`); + +// ./test/core/const.wast:312 +let $76 = instantiate(`(module (func (f32.const 0x1.fffffe7p127) drop))`); + +// ./test/core/const.wast:313 +let $77 = instantiate(`(module (func (f32.const -0x1.fffffe7p127) drop))`); + +// ./test/core/const.wast:314 +let $78 = instantiate(`(module (func (f32.const 0x1.fffffefffffff8000000p127) drop))`); + +// ./test/core/const.wast:315 +let $79 = instantiate(`(module (func (f32.const -0x1.fffffefffffff8000000p127) drop))`); + +// ./test/core/const.wast:316 +let $80 = instantiate(`(module (func (f32.const 0x1.fffffefffffffffffffp127) drop))`); + +// ./test/core/const.wast:317 +let $81 = instantiate(`(module (func (f32.const -0x1.fffffefffffffffffffp127) drop))`); + +// ./test/core/const.wast:318 +assert_malformed( + () => instantiate(`(func (f32.const 0x1p128) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:322 +assert_malformed( + () => instantiate(`(func (f32.const -0x1p128) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:326 +assert_malformed( + () => instantiate(`(func (f32.const 0x1.ffffffp127) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:330 +assert_malformed( + () => instantiate(`(func (f32.const -0x1.ffffffp127) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:335 +let $82 = instantiate(`(module (func (f32.const 1e38) drop))`); + +// ./test/core/const.wast:336 +let $83 = instantiate(`(module (func (f32.const -1e38) drop))`); + +// ./test/core/const.wast:337 +assert_malformed( + () => instantiate(`(func (f32.const 1e39) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:341 +assert_malformed( + () => instantiate(`(func (f32.const -1e39) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:346 +let $84 = instantiate(`(module (func (f32.const 340282356779733623858607532500980858880) drop))`); + +// ./test/core/const.wast:347 +let $85 = instantiate(`(module (func (f32.const -340282356779733623858607532500980858880) drop))`); + +// ./test/core/const.wast:348 +assert_malformed( + () => instantiate(`(func (f32.const 340282356779733661637539395458142568448) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:352 +assert_malformed( + () => instantiate(`(func (f32.const -340282356779733661637539395458142568448) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:357 +let $86 = instantiate(`(module (func (f64.const 0x1p1023) drop))`); + +// ./test/core/const.wast:358 +let $87 = instantiate(`(module (func (f64.const -0x1p1023) drop))`); + +// ./test/core/const.wast:359 +let $88 = instantiate(`(module (func (f64.const 0x1.fffffffffffffp1023) drop))`); + +// ./test/core/const.wast:360 +let $89 = instantiate(`(module (func (f64.const -0x1.fffffffffffffp1023) drop))`); + +// ./test/core/const.wast:361 +let $90 = instantiate(`(module (func (f64.const 0x1.fffffffffffff7p1023) drop))`); + +// ./test/core/const.wast:362 +let $91 = instantiate(`(module (func (f64.const -0x1.fffffffffffff7p1023) drop))`); + +// ./test/core/const.wast:363 +let $92 = instantiate(`(module (func (f64.const 0x1.fffffffffffff7ffffffp1023) drop))`); + +// ./test/core/const.wast:364 +let $93 = instantiate(`(module (func (f64.const -0x1.fffffffffffff7ffffffp1023) drop))`); + +// ./test/core/const.wast:365 +assert_malformed( + () => instantiate(`(func (f64.const 0x1p1024) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:369 +assert_malformed( + () => instantiate(`(func (f64.const -0x1p1024) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:373 +assert_malformed( + () => instantiate(`(func (f64.const 0x1.fffffffffffff8p1023) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:377 +assert_malformed( + () => instantiate(`(func (f64.const -0x1.fffffffffffff8p1023) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:382 +let $94 = instantiate(`(module (func (f64.const 1e308) drop))`); + +// ./test/core/const.wast:383 +let $95 = instantiate(`(module (func (f64.const -1e308) drop))`); + +// ./test/core/const.wast:384 +assert_malformed( + () => instantiate(`(func (f64.const 1e309) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:388 +assert_malformed( + () => instantiate(`(func (f64.const -1e309) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:393 +let $96 = instantiate(`(module (func (f64.const 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368) drop))`); + +// ./test/core/const.wast:394 +let $97 = instantiate(`(module (func (f64.const -179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368) drop))`); + +// ./test/core/const.wast:395 +assert_malformed( + () => instantiate(`(func (f64.const 269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:399 +assert_malformed( + () => instantiate(`(func (f64.const -269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:404 +let $98 = instantiate(`(module (func (f32.const nan:0x1) drop))`); + +// ./test/core/const.wast:405 +let $99 = instantiate(`(module (func (f64.const nan:0x1) drop))`); + +// ./test/core/const.wast:406 +let $100 = instantiate(`(module (func (f32.const nan:0x7f_ffff) drop))`); + +// ./test/core/const.wast:407 +let $101 = instantiate(`(module (func (f64.const nan:0xf_ffff_ffff_ffff) drop))`); + +// ./test/core/const.wast:409 +assert_malformed(() => instantiate(`(func (f32.const nan:1) drop) `), `unknown operator`); + +// ./test/core/const.wast:413 +assert_malformed(() => instantiate(`(func (f64.const nan:1) drop) `), `unknown operator`); + +// ./test/core/const.wast:418 +assert_malformed( + () => instantiate(`(func (f32.const nan:0x0) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:422 +assert_malformed( + () => instantiate(`(func (f64.const nan:0x0) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:427 +assert_malformed( + () => instantiate(`(func (f32.const nan:0x80_0000) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:431 +assert_malformed( + () => instantiate(`(func (f64.const nan:0x10_0000_0000_0000) drop) `), + `constant out of range`, +); + +// ./test/core/const.wast:440 +let $102 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000100000000000p-50)))`); + +// ./test/core/const.wast:441 +assert_return(() => invoke($102, `f`, []), [value("f32", 0.0000000000000008881784)]); + +// ./test/core/const.wast:442 +let $103 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000100000000000p-50)))`); + +// ./test/core/const.wast:443 +assert_return(() => invoke($103, `f`, []), [value("f32", -0.0000000000000008881784)]); + +// ./test/core/const.wast:444 +let $104 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000100000000001p-50)))`); + +// ./test/core/const.wast:445 +assert_return(() => invoke($104, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:446 +let $105 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000100000000001p-50)))`); + +// ./test/core/const.wast:447 +assert_return(() => invoke($105, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:448 +let $106 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.000001fffffffffffp-50)))`); + +// ./test/core/const.wast:449 +assert_return(() => invoke($106, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:450 +let $107 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.000001fffffffffffp-50)))`); + +// ./test/core/const.wast:451 +assert_return(() => invoke($107, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:452 +let $108 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000200000000000p-50)))`); + +// ./test/core/const.wast:453 +assert_return(() => invoke($108, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:454 +let $109 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000200000000000p-50)))`); + +// ./test/core/const.wast:455 +assert_return(() => invoke($109, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:456 +let $110 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000200000000001p-50)))`); + +// ./test/core/const.wast:457 +assert_return(() => invoke($110, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:458 +let $111 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000200000000001p-50)))`); + +// ./test/core/const.wast:459 +assert_return(() => invoke($111, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:460 +let $112 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.000002fffffffffffp-50)))`); + +// ./test/core/const.wast:461 +assert_return(() => invoke($112, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:462 +let $113 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.000002fffffffffffp-50)))`); + +// ./test/core/const.wast:463 +assert_return(() => invoke($113, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:464 +let $114 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000300000000000p-50)))`); + +// ./test/core/const.wast:465 +assert_return(() => invoke($114, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:466 +let $115 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000300000000000p-50)))`); + +// ./test/core/const.wast:467 +assert_return(() => invoke($115, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:468 +let $116 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000300000000001p-50)))`); + +// ./test/core/const.wast:469 +assert_return(() => invoke($116, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:470 +let $117 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000300000000001p-50)))`); + +// ./test/core/const.wast:471 +assert_return(() => invoke($117, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:472 +let $118 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.000003fffffffffffp-50)))`); + +// ./test/core/const.wast:473 +assert_return(() => invoke($118, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:474 +let $119 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.000003fffffffffffp-50)))`); + +// ./test/core/const.wast:475 +assert_return(() => invoke($119, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:476 +let $120 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000400000000000p-50)))`); + +// ./test/core/const.wast:477 +assert_return(() => invoke($120, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:478 +let $121 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000400000000000p-50)))`); + +// ./test/core/const.wast:479 +assert_return(() => invoke($121, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:480 +let $122 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000400000000001p-50)))`); + +// ./test/core/const.wast:481 +assert_return(() => invoke($122, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:482 +let $123 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000400000000001p-50)))`); + +// ./test/core/const.wast:483 +assert_return(() => invoke($123, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:484 +let $124 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.000004fffffffffffp-50)))`); + +// ./test/core/const.wast:485 +assert_return(() => invoke($124, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:486 +let $125 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.000004fffffffffffp-50)))`); + +// ./test/core/const.wast:487 +assert_return(() => invoke($125, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:488 +let $126 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000500000000000p-50)))`); + +// ./test/core/const.wast:489 +assert_return(() => invoke($126, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:490 +let $127 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000500000000000p-50)))`); + +// ./test/core/const.wast:491 +assert_return(() => invoke($127, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:492 +let $128 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000500000000001p-50)))`); + +// ./test/core/const.wast:493 +assert_return(() => invoke($128, `f`, []), [value("f32", 0.0000000000000008881787)]); + +// ./test/core/const.wast:494 +let $129 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000500000000001p-50)))`); + +// ./test/core/const.wast:495 +assert_return(() => invoke($129, `f`, []), [value("f32", -0.0000000000000008881787)]); + +// ./test/core/const.wast:497 +let $130 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.004000000p-64)))`); + +// ./test/core/const.wast:498 +assert_return(() => invoke($130, `f`, []), [value("f32", 0.0000000000000008881784)]); + +// ./test/core/const.wast:499 +let $131 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.004000000p-64)))`); + +// ./test/core/const.wast:500 +assert_return(() => invoke($131, `f`, []), [value("f32", -0.0000000000000008881784)]); + +// ./test/core/const.wast:501 +let $132 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.004000001p-64)))`); + +// ./test/core/const.wast:502 +assert_return(() => invoke($132, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:503 +let $133 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.004000001p-64)))`); + +// ./test/core/const.wast:504 +assert_return(() => invoke($133, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:505 +let $134 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.007ffffffp-64)))`); + +// ./test/core/const.wast:506 +assert_return(() => invoke($134, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:507 +let $135 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.007ffffffp-64)))`); + +// ./test/core/const.wast:508 +assert_return(() => invoke($135, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:509 +let $136 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.008000000p-64)))`); + +// ./test/core/const.wast:510 +assert_return(() => invoke($136, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:511 +let $137 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.008000000p-64)))`); + +// ./test/core/const.wast:512 +assert_return(() => invoke($137, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:513 +let $138 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.008000001p-64)))`); + +// ./test/core/const.wast:514 +assert_return(() => invoke($138, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:515 +let $139 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.008000001p-64)))`); + +// ./test/core/const.wast:516 +assert_return(() => invoke($139, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:517 +let $140 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.00bffffffp-64)))`); + +// ./test/core/const.wast:518 +assert_return(() => invoke($140, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:519 +let $141 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.00bffffffp-64)))`); + +// ./test/core/const.wast:520 +assert_return(() => invoke($141, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:521 +let $142 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.00c000000p-64)))`); + +// ./test/core/const.wast:522 +assert_return(() => invoke($142, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:523 +let $143 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.00c000000p-64)))`); + +// ./test/core/const.wast:524 +assert_return(() => invoke($143, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:525 +let $144 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.00c000001p-64)))`); + +// ./test/core/const.wast:526 +assert_return(() => invoke($144, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:527 +let $145 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.00c000001p-64)))`); + +// ./test/core/const.wast:528 +assert_return(() => invoke($145, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:529 +let $146 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.00fffffffp-64)))`); + +// ./test/core/const.wast:530 +assert_return(() => invoke($146, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:531 +let $147 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.00fffffffp-64)))`); + +// ./test/core/const.wast:532 +assert_return(() => invoke($147, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:533 +let $148 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.010000001p-64)))`); + +// ./test/core/const.wast:534 +assert_return(() => invoke($148, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:535 +let $149 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.010000001p-64)))`); + +// ./test/core/const.wast:536 +assert_return(() => invoke($149, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:537 +let $150 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.013ffffffp-64)))`); + +// ./test/core/const.wast:538 +assert_return(() => invoke($150, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:539 +let $151 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.013ffffffp-64)))`); + +// ./test/core/const.wast:540 +assert_return(() => invoke($151, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:541 +let $152 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000.014000001p-64)))`); + +// ./test/core/const.wast:542 +assert_return(() => invoke($152, `f`, []), [value("f32", 0.0000000000000008881787)]); + +// ./test/core/const.wast:543 +let $153 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000.014000001p-64)))`); + +// ./test/core/const.wast:544 +assert_return(() => invoke($153, `f`, []), [value("f32", -0.0000000000000008881787)]); + +// ./test/core/const.wast:546 +let $154 = instantiate(`(module (func (export "f") (result f32) (f32.const +8.8817847263968443573e-16)))`); + +// ./test/core/const.wast:547 +assert_return(() => invoke($154, `f`, []), [value("f32", 0.0000000000000008881784)]); + +// ./test/core/const.wast:548 +let $155 = instantiate(`(module (func (export "f") (result f32) (f32.const -8.8817847263968443573e-16)))`); + +// ./test/core/const.wast:549 +assert_return(() => invoke($155, `f`, []), [value("f32", -0.0000000000000008881784)]); + +// ./test/core/const.wast:550 +let $156 = instantiate(`(module (func (export "f") (result f32) (f32.const +8.8817847263968443574e-16)))`); + +// ./test/core/const.wast:551 +assert_return(() => invoke($156, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:552 +let $157 = instantiate(`(module (func (export "f") (result f32) (f32.const -8.8817847263968443574e-16)))`); + +// ./test/core/const.wast:553 +assert_return(() => invoke($157, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:554 +let $158 = instantiate(`(module (func (export "f") (result f32) (f32.const +8.8817857851880284252e-16)))`); + +// ./test/core/const.wast:555 +assert_return(() => invoke($158, `f`, []), [value("f32", 0.0000000000000008881785)]); + +// ./test/core/const.wast:556 +let $159 = instantiate(`(module (func (export "f") (result f32) (f32.const -8.8817857851880284252e-16)))`); + +// ./test/core/const.wast:557 +assert_return(() => invoke($159, `f`, []), [value("f32", -0.0000000000000008881785)]); + +// ./test/core/const.wast:558 +let $160 = instantiate(`(module (func (export "f") (result f32) (f32.const +8.8817857851880284253e-16)))`); + +// ./test/core/const.wast:559 +assert_return(() => invoke($160, `f`, []), [value("f32", 0.0000000000000008881786)]); + +// ./test/core/const.wast:560 +let $161 = instantiate(`(module (func (export "f") (result f32) (f32.const -8.8817857851880284253e-16)))`); + +// ./test/core/const.wast:561 +assert_return(() => invoke($161, `f`, []), [value("f32", -0.0000000000000008881786)]); + +// ./test/core/const.wast:564 +let $162 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000100000000000p+50)))`); + +// ./test/core/const.wast:565 +assert_return(() => invoke($162, `f`, []), [value("f32", 1125899900000000)]); + +// ./test/core/const.wast:566 +let $163 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000100000000000p+50)))`); + +// ./test/core/const.wast:567 +assert_return(() => invoke($163, `f`, []), [value("f32", -1125899900000000)]); + +// ./test/core/const.wast:568 +let $164 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000100000000001p+50)))`); + +// ./test/core/const.wast:569 +assert_return(() => invoke($164, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:570 +let $165 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000100000000001p+50)))`); + +// ./test/core/const.wast:571 +assert_return(() => invoke($165, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:572 +let $166 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.000001fffffffffffp+50)))`); + +// ./test/core/const.wast:573 +assert_return(() => invoke($166, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:574 +let $167 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.000001fffffffffffp+50)))`); + +// ./test/core/const.wast:575 +assert_return(() => invoke($167, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:576 +let $168 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000200000000000p+50)))`); + +// ./test/core/const.wast:577 +assert_return(() => invoke($168, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:578 +let $169 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000200000000000p+50)))`); + +// ./test/core/const.wast:579 +assert_return(() => invoke($169, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:580 +let $170 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000200000000001p+50)))`); + +// ./test/core/const.wast:581 +assert_return(() => invoke($170, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:582 +let $171 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000200000000001p+50)))`); + +// ./test/core/const.wast:583 +assert_return(() => invoke($171, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:584 +let $172 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.000002fffffffffffp+50)))`); + +// ./test/core/const.wast:585 +assert_return(() => invoke($172, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:586 +let $173 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.000002fffffffffffp+50)))`); + +// ./test/core/const.wast:587 +assert_return(() => invoke($173, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:588 +let $174 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000300000000000p+50)))`); + +// ./test/core/const.wast:589 +assert_return(() => invoke($174, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:590 +let $175 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000300000000000p+50)))`); + +// ./test/core/const.wast:591 +assert_return(() => invoke($175, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:592 +let $176 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000300000000001p+50)))`); + +// ./test/core/const.wast:593 +assert_return(() => invoke($176, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:594 +let $177 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000300000000001p+50)))`); + +// ./test/core/const.wast:595 +assert_return(() => invoke($177, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:596 +let $178 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.000003fffffffffffp+50)))`); + +// ./test/core/const.wast:597 +assert_return(() => invoke($178, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:598 +let $179 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.000003fffffffffffp+50)))`); + +// ./test/core/const.wast:599 +assert_return(() => invoke($179, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:600 +let $180 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000400000000000p+50)))`); + +// ./test/core/const.wast:601 +assert_return(() => invoke($180, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:602 +let $181 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000400000000000p+50)))`); + +// ./test/core/const.wast:603 +assert_return(() => invoke($181, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:604 +let $182 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000400000000001p+50)))`); + +// ./test/core/const.wast:605 +assert_return(() => invoke($182, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:606 +let $183 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000400000000001p+50)))`); + +// ./test/core/const.wast:607 +assert_return(() => invoke($183, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:608 +let $184 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.000004fffffffffffp+50)))`); + +// ./test/core/const.wast:609 +assert_return(() => invoke($184, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:610 +let $185 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.000004fffffffffffp+50)))`); + +// ./test/core/const.wast:611 +assert_return(() => invoke($185, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:612 +let $186 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000500000000000p+50)))`); + +// ./test/core/const.wast:613 +assert_return(() => invoke($186, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:614 +let $187 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000500000000000p+50)))`); + +// ./test/core/const.wast:615 +assert_return(() => invoke($187, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:616 +let $188 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.00000500000000001p+50)))`); + +// ./test/core/const.wast:617 +assert_return(() => invoke($188, `f`, []), [value("f32", 1125900300000000)]); + +// ./test/core/const.wast:618 +let $189 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.00000500000000001p+50)))`); + +// ./test/core/const.wast:619 +assert_return(() => invoke($189, `f`, []), [value("f32", -1125900300000000)]); + +// ./test/core/const.wast:621 +let $190 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000004000000)))`); + +// ./test/core/const.wast:622 +assert_return(() => invoke($190, `f`, []), [value("f32", 1125899900000000)]); + +// ./test/core/const.wast:623 +let $191 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000004000000)))`); + +// ./test/core/const.wast:624 +assert_return(() => invoke($191, `f`, []), [value("f32", -1125899900000000)]); + +// ./test/core/const.wast:625 +let $192 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000004000001)))`); + +// ./test/core/const.wast:626 +assert_return(() => invoke($192, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:627 +let $193 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000004000001)))`); + +// ./test/core/const.wast:628 +assert_return(() => invoke($193, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:629 +let $194 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000007ffffff)))`); + +// ./test/core/const.wast:630 +assert_return(() => invoke($194, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:631 +let $195 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000007ffffff)))`); + +// ./test/core/const.wast:632 +assert_return(() => invoke($195, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:633 +let $196 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000008000000)))`); + +// ./test/core/const.wast:634 +assert_return(() => invoke($196, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:635 +let $197 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000008000000)))`); + +// ./test/core/const.wast:636 +assert_return(() => invoke($197, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:637 +let $198 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x4000008000001)))`); + +// ./test/core/const.wast:638 +assert_return(() => invoke($198, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:639 +let $199 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x4000008000001)))`); + +// ./test/core/const.wast:640 +assert_return(() => invoke($199, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:641 +let $200 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x400000bffffff)))`); + +// ./test/core/const.wast:642 +assert_return(() => invoke($200, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:643 +let $201 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x400000bffffff)))`); + +// ./test/core/const.wast:644 +assert_return(() => invoke($201, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:645 +let $202 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x400000c000000)))`); + +// ./test/core/const.wast:646 +assert_return(() => invoke($202, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:647 +let $203 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x400000c000000)))`); + +// ./test/core/const.wast:648 +assert_return(() => invoke($203, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:650 +let $204 = instantiate(`(module (func (export "f") (result f32) (f32.const +1125899973951488)))`); + +// ./test/core/const.wast:651 +assert_return(() => invoke($204, `f`, []), [value("f32", 1125899900000000)]); + +// ./test/core/const.wast:652 +let $205 = instantiate(`(module (func (export "f") (result f32) (f32.const -1125899973951488)))`); + +// ./test/core/const.wast:653 +assert_return(() => invoke($205, `f`, []), [value("f32", -1125899900000000)]); + +// ./test/core/const.wast:654 +let $206 = instantiate(`(module (func (export "f") (result f32) (f32.const +1125899973951489)))`); + +// ./test/core/const.wast:655 +assert_return(() => invoke($206, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:656 +let $207 = instantiate(`(module (func (export "f") (result f32) (f32.const -1125899973951489)))`); + +// ./test/core/const.wast:657 +assert_return(() => invoke($207, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:658 +let $208 = instantiate(`(module (func (export "f") (result f32) (f32.const +1125900108169215)))`); + +// ./test/core/const.wast:659 +assert_return(() => invoke($208, `f`, []), [value("f32", 1125900000000000)]); + +// ./test/core/const.wast:660 +let $209 = instantiate(`(module (func (export "f") (result f32) (f32.const -1125900108169215)))`); + +// ./test/core/const.wast:661 +assert_return(() => invoke($209, `f`, []), [value("f32", -1125900000000000)]); + +// ./test/core/const.wast:662 +let $210 = instantiate(`(module (func (export "f") (result f32) (f32.const +1125900108169216)))`); + +// ./test/core/const.wast:663 +assert_return(() => invoke($210, `f`, []), [value("f32", 1125900200000000)]); + +// ./test/core/const.wast:664 +let $211 = instantiate(`(module (func (export "f") (result f32) (f32.const -1125900108169216)))`); + +// ./test/core/const.wast:665 +assert_return(() => invoke($211, `f`, []), [value("f32", -1125900200000000)]); + +// ./test/core/const.wast:668 +let $212 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000100000000000p-126)))`); + +// ./test/core/const.wast:669 +assert_return(() => invoke($212, `f`, []), [value("f32", 0)]); + +// ./test/core/const.wast:670 +let $213 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000100000000000p-126)))`); + +// ./test/core/const.wast:671 +assert_return(() => invoke($213, `f`, []), [value("f32", -0)]); + +// ./test/core/const.wast:672 +let $214 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000100000000001p-126)))`); + +// ./test/core/const.wast:673 +assert_return( + () => invoke($214, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:674 +let $215 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000100000000001p-126)))`); + +// ./test/core/const.wast:675 +assert_return( + () => invoke($215, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:676 +let $216 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.000001fffffffffffp-126)))`); + +// ./test/core/const.wast:677 +assert_return( + () => invoke($216, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:678 +let $217 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.000001fffffffffffp-126)))`); + +// ./test/core/const.wast:679 +assert_return( + () => invoke($217, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:680 +let $218 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000200000000000p-126)))`); + +// ./test/core/const.wast:681 +assert_return( + () => invoke($218, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:682 +let $219 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000200000000000p-126)))`); + +// ./test/core/const.wast:683 +assert_return( + () => invoke($219, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:684 +let $220 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000200000000001p-126)))`); + +// ./test/core/const.wast:685 +assert_return( + () => invoke($220, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:686 +let $221 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000200000000001p-126)))`); + +// ./test/core/const.wast:687 +assert_return( + () => invoke($221, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:688 +let $222 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.000002fffffffffffp-126)))`); + +// ./test/core/const.wast:689 +assert_return( + () => invoke($222, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:690 +let $223 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.000002fffffffffffp-126)))`); + +// ./test/core/const.wast:691 +assert_return( + () => invoke($223, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/const.wast:692 +let $224 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000300000000000p-126)))`); + +// ./test/core/const.wast:693 +assert_return( + () => invoke($224, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:694 +let $225 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000300000000000p-126)))`); + +// ./test/core/const.wast:695 +assert_return( + () => invoke($225, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:696 +let $226 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000300000000001p-126)))`); + +// ./test/core/const.wast:697 +assert_return( + () => invoke($226, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:698 +let $227 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000300000000001p-126)))`); + +// ./test/core/const.wast:699 +assert_return( + () => invoke($227, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:700 +let $228 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.000003fffffffffffp-126)))`); + +// ./test/core/const.wast:701 +assert_return( + () => invoke($228, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:702 +let $229 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.000003fffffffffffp-126)))`); + +// ./test/core/const.wast:703 +assert_return( + () => invoke($229, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:704 +let $230 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000400000000000p-126)))`); + +// ./test/core/const.wast:705 +assert_return( + () => invoke($230, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:706 +let $231 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000400000000000p-126)))`); + +// ./test/core/const.wast:707 +assert_return( + () => invoke($231, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:708 +let $232 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000400000000001p-126)))`); + +// ./test/core/const.wast:709 +assert_return( + () => invoke($232, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:710 +let $233 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000400000000001p-126)))`); + +// ./test/core/const.wast:711 +assert_return( + () => invoke($233, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:712 +let $234 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.000004fffffffffffp-126)))`); + +// ./test/core/const.wast:713 +assert_return( + () => invoke($234, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:714 +let $235 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.000004fffffffffffp-126)))`); + +// ./test/core/const.wast:715 +assert_return( + () => invoke($235, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:716 +let $236 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000500000000000p-126)))`); + +// ./test/core/const.wast:717 +assert_return( + () => invoke($236, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:718 +let $237 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000500000000000p-126)))`); + +// ./test/core/const.wast:719 +assert_return( + () => invoke($237, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/const.wast:720 +let $238 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x0.00000500000000001p-126)))`); + +// ./test/core/const.wast:721 +assert_return( + () => invoke($238, `f`, []), + [value("f32", 0.000000000000000000000000000000000000000000004)], +); + +// ./test/core/const.wast:722 +let $239 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x0.00000500000000001p-126)))`); + +// ./test/core/const.wast:723 +assert_return( + () => invoke($239, `f`, []), + [value("f32", -0.000000000000000000000000000000000000000000004)], +); + +// ./test/core/const.wast:726 +let $240 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.fffffe8p127)))`); + +// ./test/core/const.wast:727 +assert_return(() => invoke($240, `f`, []), [value("f32", 340282350000000000000000000000000000000)]); + +// ./test/core/const.wast:728 +let $241 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.fffffe8p127)))`); + +// ./test/core/const.wast:729 +assert_return(() => invoke($241, `f`, []), [value("f32", -340282350000000000000000000000000000000)]); + +// ./test/core/const.wast:730 +let $242 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.fffffefffffff8p127)))`); + +// ./test/core/const.wast:731 +assert_return(() => invoke($242, `f`, []), [value("f32", 340282350000000000000000000000000000000)]); + +// ./test/core/const.wast:732 +let $243 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.fffffefffffff8p127)))`); + +// ./test/core/const.wast:733 +assert_return(() => invoke($243, `f`, []), [value("f32", -340282350000000000000000000000000000000)]); + +// ./test/core/const.wast:734 +let $244 = instantiate(`(module (func (export "f") (result f32) (f32.const +0x1.fffffefffffffffffp127)))`); + +// ./test/core/const.wast:735 +assert_return(() => invoke($244, `f`, []), [value("f32", 340282350000000000000000000000000000000)]); + +// ./test/core/const.wast:736 +let $245 = instantiate(`(module (func (export "f") (result f32) (f32.const -0x1.fffffefffffffffffp127)))`); + +// ./test/core/const.wast:737 +assert_return(() => invoke($245, `f`, []), [value("f32", -340282350000000000000000000000000000000)]); + +// ./test/core/const.wast:740 +let $246 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000000p-600)))`); + +// ./test/core/const.wast:741 +assert_return( + () => invoke($246, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102884), + ], +); + +// ./test/core/const.wast:742 +let $247 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000000p-600)))`); + +// ./test/core/const.wast:743 +assert_return( + () => invoke($247, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102884), + ], +); + +// ./test/core/const.wast:744 +let $248 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000001p-600)))`); + +// ./test/core/const.wast:745 +assert_return( + () => invoke($248, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:746 +let $249 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000001p-600)))`); + +// ./test/core/const.wast:747 +assert_return( + () => invoke($249, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:748 +let $250 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.0000000000000fffffffffffp-600)))`); + +// ./test/core/const.wast:749 +assert_return( + () => invoke($250, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:750 +let $251 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.0000000000000fffffffffffp-600)))`); + +// ./test/core/const.wast:751 +assert_return( + () => invoke($251, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:752 +let $252 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000000p-600)))`); + +// ./test/core/const.wast:753 +assert_return( + () => invoke($252, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:754 +let $253 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000000p-600)))`); + +// ./test/core/const.wast:755 +assert_return( + () => invoke($253, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:756 +let $254 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000001p-600)))`); + +// ./test/core/const.wast:757 +assert_return( + () => invoke($254, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:758 +let $255 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000001p-600)))`); + +// ./test/core/const.wast:759 +assert_return( + () => invoke($255, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:760 +let $256 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.00000000000017ffffffffffp-600)))`); + +// ./test/core/const.wast:761 +assert_return( + () => invoke($256, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:762 +let $257 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.00000000000017ffffffffffp-600)))`); + +// ./test/core/const.wast:763 +assert_return( + () => invoke($257, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:764 +let $258 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000000p-600)))`); + +// ./test/core/const.wast:765 +assert_return( + () => invoke($258, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:766 +let $259 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000000p-600)))`); + +// ./test/core/const.wast:767 +assert_return( + () => invoke($259, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:768 +let $260 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000001p-600)))`); + +// ./test/core/const.wast:769 +assert_return( + () => invoke($260, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:770 +let $261 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000001p-600)))`); + +// ./test/core/const.wast:771 +assert_return( + () => invoke($261, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:772 +let $262 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.0000000000001fffffffffffp-600)))`); + +// ./test/core/const.wast:773 +assert_return( + () => invoke($262, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:774 +let $263 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.0000000000001fffffffffffp-600)))`); + +// ./test/core/const.wast:775 +assert_return( + () => invoke($263, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:776 +let $264 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000000p-600)))`); + +// ./test/core/const.wast:777 +assert_return( + () => invoke($264, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:778 +let $265 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000000p-600)))`); + +// ./test/core/const.wast:779 +assert_return( + () => invoke($265, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:780 +let $266 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000001p-600)))`); + +// ./test/core/const.wast:781 +assert_return( + () => invoke($266, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:782 +let $267 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000001p-600)))`); + +// ./test/core/const.wast:783 +assert_return( + () => invoke($267, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:784 +let $268 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.00000000000027ffffffffffp-600)))`); + +// ./test/core/const.wast:785 +assert_return( + () => invoke($268, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:786 +let $269 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.00000000000027ffffffffffp-600)))`); + +// ./test/core/const.wast:787 +assert_return( + () => invoke($269, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:788 +let $270 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000001p-600)))`); + +// ./test/core/const.wast:789 +assert_return( + () => invoke($270, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028857), + ], +); + +// ./test/core/const.wast:790 +let $271 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000001p-600)))`); + +// ./test/core/const.wast:791 +assert_return( + () => invoke($271, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028857), + ], +); + +// ./test/core/const.wast:793 +let $272 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000400000000000p-627)))`); + +// ./test/core/const.wast:794 +assert_return( + () => invoke($272, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102884), + ], +); + +// ./test/core/const.wast:795 +let $273 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000400000000000p-627)))`); + +// ./test/core/const.wast:796 +assert_return( + () => invoke($273, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102884), + ], +); + +// ./test/core/const.wast:797 +let $274 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000400000000001p-627)))`); + +// ./test/core/const.wast:798 +assert_return( + () => invoke($274, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:799 +let $275 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000400000000001p-627)))`); + +// ./test/core/const.wast:800 +assert_return( + () => invoke($275, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:801 +let $276 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.0000007fffffffffffp-627)))`); + +// ./test/core/const.wast:802 +assert_return( + () => invoke($276, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:803 +let $277 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.0000007fffffffffffp-627)))`); + +// ./test/core/const.wast:804 +assert_return( + () => invoke($277, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:805 +let $278 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000800000000000p-627)))`); + +// ./test/core/const.wast:806 +assert_return( + () => invoke($278, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:807 +let $279 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000800000000000p-627)))`); + +// ./test/core/const.wast:808 +assert_return( + () => invoke($279, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:809 +let $280 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000800000000001p-627)))`); + +// ./test/core/const.wast:810 +assert_return( + () => invoke($280, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:811 +let $281 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000800000000001p-627)))`); + +// ./test/core/const.wast:812 +assert_return( + () => invoke($281, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:813 +let $282 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000bfffffffffffp-627)))`); + +// ./test/core/const.wast:814 +assert_return( + () => invoke($282, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:815 +let $283 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000bfffffffffffp-627)))`); + +// ./test/core/const.wast:816 +assert_return( + () => invoke($283, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/const.wast:817 +let $284 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000c00000000000p-627)))`); + +// ./test/core/const.wast:818 +assert_return( + () => invoke($284, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:819 +let $285 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000c00000000000p-627)))`); + +// ./test/core/const.wast:820 +assert_return( + () => invoke($285, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:821 +let $286 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000c00000000001p-627)))`); + +// ./test/core/const.wast:822 +assert_return( + () => invoke($286, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:823 +let $287 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000c00000000001p-627)))`); + +// ./test/core/const.wast:824 +assert_return( + () => invoke($287, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:825 +let $288 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000ffffffffffffp-627)))`); + +// ./test/core/const.wast:826 +assert_return( + () => invoke($288, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:827 +let $289 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000ffffffffffffp-627)))`); + +// ./test/core/const.wast:828 +assert_return( + () => invoke($289, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:829 +let $290 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000001000000000000p-627)))`); + +// ./test/core/const.wast:830 +assert_return( + () => invoke($290, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:831 +let $291 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000001000000000000p-627)))`); + +// ./test/core/const.wast:832 +assert_return( + () => invoke($291, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:833 +let $292 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000001000000000001p-627)))`); + +// ./test/core/const.wast:834 +assert_return( + () => invoke($292, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:835 +let $293 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000001000000000001p-627)))`); + +// ./test/core/const.wast:836 +assert_return( + () => invoke($293, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:837 +let $294 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.0000013fffffffffffp-627)))`); + +// ./test/core/const.wast:838 +assert_return( + () => invoke($294, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:839 +let $295 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.0000013fffffffffffp-627)))`); + +// ./test/core/const.wast:840 +assert_return( + () => invoke($295, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/const.wast:841 +let $296 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000001400000000001p-627)))`); + +// ./test/core/const.wast:842 +assert_return( + () => invoke($296, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028857), + ], +); + +// ./test/core/const.wast:843 +let $297 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000001400000000001p-627)))`); + +// ./test/core/const.wast:844 +assert_return( + () => invoke($297, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028857), + ], +); + +// ./test/core/const.wast:846 +let $298 = instantiate(`(module (func (export "f") (result f64) (f64.const +5.3575430359313371995e+300)))`); + +// ./test/core/const.wast:847 +assert_return( + () => invoke($298, `f`, []), + [ + value("f64", 5357543035931337000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:848 +let $299 = instantiate(`(module (func (export "f") (result f64) (f64.const -5.3575430359313371995e+300)))`); + +// ./test/core/const.wast:849 +assert_return( + () => invoke($299, `f`, []), + [ + value("f64", -5357543035931337000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:850 +let $300 = instantiate(`(module (func (export "f") (result f64) (f64.const +5.3575430359313371996e+300)))`); + +// ./test/core/const.wast:851 +assert_return( + () => invoke($300, `f`, []), + [ + value("f64", 5357543035931338000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:852 +let $301 = instantiate(`(module (func (export "f") (result f64) (f64.const -5.3575430359313371996e+300)))`); + +// ./test/core/const.wast:853 +assert_return( + () => invoke($301, `f`, []), + [ + value("f64", -5357543035931338000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:854 +let $302 = instantiate(`(module (func (export "f") (result f64) (f64.const +5.3575430359313383891e+300)))`); + +// ./test/core/const.wast:855 +assert_return( + () => invoke($302, `f`, []), + [ + value("f64", 5357543035931338000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:856 +let $303 = instantiate(`(module (func (export "f") (result f64) (f64.const -5.3575430359313383891e+300)))`); + +// ./test/core/const.wast:857 +assert_return( + () => invoke($303, `f`, []), + [ + value("f64", -5357543035931338000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:858 +let $304 = instantiate(`(module (func (export "f") (result f64) (f64.const +5.3575430359313383892e+300)))`); + +// ./test/core/const.wast:859 +assert_return( + () => invoke($304, `f`, []), + [ + value("f64", 5357543035931339000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:860 +let $305 = instantiate(`(module (func (export "f") (result f64) (f64.const -5.3575430359313383892e+300)))`); + +// ./test/core/const.wast:861 +assert_return( + () => invoke($305, `f`, []), + [ + value("f64", -5357543035931339000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:864 +let $306 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000000p+600)))`); + +// ./test/core/const.wast:865 +assert_return( + () => invoke($306, `f`, []), + [ + value("f64", 4149515568880993000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:866 +let $307 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000000p+600)))`); + +// ./test/core/const.wast:867 +assert_return( + () => invoke($307, `f`, []), + [ + value("f64", -4149515568880993000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:868 +let $308 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000001p+600)))`); + +// ./test/core/const.wast:869 +assert_return( + () => invoke($308, `f`, []), + [ + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:870 +let $309 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000001p+600)))`); + +// ./test/core/const.wast:871 +assert_return( + () => invoke($309, `f`, []), + [ + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:872 +let $310 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.0000000000000fffffffffffp+600)))`); + +// ./test/core/const.wast:873 +assert_return( + () => invoke($310, `f`, []), + [ + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:874 +let $311 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.0000000000000fffffffffffp+600)))`); + +// ./test/core/const.wast:875 +assert_return( + () => invoke($311, `f`, []), + [ + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:876 +let $312 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000000p+600)))`); + +// ./test/core/const.wast:877 +assert_return( + () => invoke($312, `f`, []), + [ + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:878 +let $313 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000000p+600)))`); + +// ./test/core/const.wast:879 +assert_return( + () => invoke($313, `f`, []), + [ + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:880 +let $314 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000001p+600)))`); + +// ./test/core/const.wast:881 +assert_return( + () => invoke($314, `f`, []), + [ + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:882 +let $315 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000001p+600)))`); + +// ./test/core/const.wast:883 +assert_return( + () => invoke($315, `f`, []), + [ + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:884 +let $316 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.00000000000017ffffffffffp+600)))`); + +// ./test/core/const.wast:885 +assert_return( + () => invoke($316, `f`, []), + [ + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:886 +let $317 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.00000000000017ffffffffffp+600)))`); + +// ./test/core/const.wast:887 +assert_return( + () => invoke($317, `f`, []), + [ + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:888 +let $318 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000000p+600)))`); + +// ./test/core/const.wast:889 +assert_return( + () => invoke($318, `f`, []), + [ + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:890 +let $319 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000000p+600)))`); + +// ./test/core/const.wast:891 +assert_return( + () => invoke($319, `f`, []), + [ + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:892 +let $320 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000001p+600)))`); + +// ./test/core/const.wast:893 +assert_return( + () => invoke($320, `f`, []), + [ + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:894 +let $321 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000001p+600)))`); + +// ./test/core/const.wast:895 +assert_return( + () => invoke($321, `f`, []), + [ + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:896 +let $322 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.0000000000001fffffffffffp+600)))`); + +// ./test/core/const.wast:897 +assert_return( + () => invoke($322, `f`, []), + [ + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:898 +let $323 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.0000000000001fffffffffffp+600)))`); + +// ./test/core/const.wast:899 +assert_return( + () => invoke($323, `f`, []), + [ + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:900 +let $324 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000000p+600)))`); + +// ./test/core/const.wast:901 +assert_return( + () => invoke($324, `f`, []), + [ + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:902 +let $325 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000000p+600)))`); + +// ./test/core/const.wast:903 +assert_return( + () => invoke($325, `f`, []), + [ + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:904 +let $326 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000001p+600)))`); + +// ./test/core/const.wast:905 +assert_return( + () => invoke($326, `f`, []), + [ + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:906 +let $327 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000001p+600)))`); + +// ./test/core/const.wast:907 +assert_return( + () => invoke($327, `f`, []), + [ + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:908 +let $328 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.00000000000027ffffffffffp+600)))`); + +// ./test/core/const.wast:909 +assert_return( + () => invoke($328, `f`, []), + [ + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:910 +let $329 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.00000000000027ffffffffffp+600)))`); + +// ./test/core/const.wast:911 +assert_return( + () => invoke($329, `f`, []), + [ + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:912 +let $330 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000000p+600)))`); + +// ./test/core/const.wast:913 +assert_return( + () => invoke($330, `f`, []), + [ + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:914 +let $331 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000000p+600)))`); + +// ./test/core/const.wast:915 +assert_return( + () => invoke($331, `f`, []), + [ + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:916 +let $332 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000001p+600)))`); + +// ./test/core/const.wast:917 +assert_return( + () => invoke($332, `f`, []), + [ + value("f64", 4149515568880996000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:918 +let $333 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000001p+600)))`); + +// ./test/core/const.wast:919 +assert_return( + () => invoke($333, `f`, []), + [ + value("f64", -4149515568880996000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:921 +let $334 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000100000000000)))`); + +// ./test/core/const.wast:922 +assert_return(() => invoke($334, `f`, []), [value("f64", 158456325028528680000000000000)]); + +// ./test/core/const.wast:923 +let $335 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000100000000000)))`); + +// ./test/core/const.wast:924 +assert_return(() => invoke($335, `f`, []), [value("f64", -158456325028528680000000000000)]); + +// ./test/core/const.wast:925 +let $336 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000100000000001)))`); + +// ./test/core/const.wast:926 +assert_return(() => invoke($336, `f`, []), [value("f64", 158456325028528700000000000000)]); + +// ./test/core/const.wast:927 +let $337 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000100000000001)))`); + +// ./test/core/const.wast:928 +assert_return(() => invoke($337, `f`, []), [value("f64", -158456325028528700000000000000)]); + +// ./test/core/const.wast:929 +let $338 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x20000000000001fffffffffff)))`); + +// ./test/core/const.wast:930 +assert_return(() => invoke($338, `f`, []), [value("f64", 158456325028528700000000000000)]); + +// ./test/core/const.wast:931 +let $339 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x20000000000001fffffffffff)))`); + +// ./test/core/const.wast:932 +assert_return(() => invoke($339, `f`, []), [value("f64", -158456325028528700000000000000)]); + +// ./test/core/const.wast:933 +let $340 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000200000000000)))`); + +// ./test/core/const.wast:934 +assert_return(() => invoke($340, `f`, []), [value("f64", 158456325028528700000000000000)]); + +// ./test/core/const.wast:935 +let $341 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000200000000000)))`); + +// ./test/core/const.wast:936 +assert_return(() => invoke($341, `f`, []), [value("f64", -158456325028528700000000000000)]); + +// ./test/core/const.wast:937 +let $342 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000200000000001)))`); + +// ./test/core/const.wast:938 +assert_return(() => invoke($342, `f`, []), [value("f64", 158456325028528700000000000000)]); + +// ./test/core/const.wast:939 +let $343 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000200000000001)))`); + +// ./test/core/const.wast:940 +assert_return(() => invoke($343, `f`, []), [value("f64", -158456325028528700000000000000)]); + +// ./test/core/const.wast:941 +let $344 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x20000000000002fffffffffff)))`); + +// ./test/core/const.wast:942 +assert_return(() => invoke($344, `f`, []), [value("f64", 158456325028528700000000000000)]); + +// ./test/core/const.wast:943 +let $345 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x20000000000002fffffffffff)))`); + +// ./test/core/const.wast:944 +assert_return(() => invoke($345, `f`, []), [value("f64", -158456325028528700000000000000)]); + +// ./test/core/const.wast:945 +let $346 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000300000000000)))`); + +// ./test/core/const.wast:946 +assert_return(() => invoke($346, `f`, []), [value("f64", 158456325028528750000000000000)]); + +// ./test/core/const.wast:947 +let $347 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000300000000000)))`); + +// ./test/core/const.wast:948 +assert_return(() => invoke($347, `f`, []), [value("f64", -158456325028528750000000000000)]); + +// ./test/core/const.wast:949 +let $348 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000300000000001)))`); + +// ./test/core/const.wast:950 +assert_return(() => invoke($348, `f`, []), [value("f64", 158456325028528750000000000000)]); + +// ./test/core/const.wast:951 +let $349 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000300000000001)))`); + +// ./test/core/const.wast:952 +assert_return(() => invoke($349, `f`, []), [value("f64", -158456325028528750000000000000)]); + +// ./test/core/const.wast:953 +let $350 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x20000000000003fffffffffff)))`); + +// ./test/core/const.wast:954 +assert_return(() => invoke($350, `f`, []), [value("f64", 158456325028528750000000000000)]); + +// ./test/core/const.wast:955 +let $351 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x20000000000003fffffffffff)))`); + +// ./test/core/const.wast:956 +assert_return(() => invoke($351, `f`, []), [value("f64", -158456325028528750000000000000)]); + +// ./test/core/const.wast:957 +let $352 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000400000000000)))`); + +// ./test/core/const.wast:958 +assert_return(() => invoke($352, `f`, []), [value("f64", 158456325028528750000000000000)]); + +// ./test/core/const.wast:959 +let $353 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000400000000000)))`); + +// ./test/core/const.wast:960 +assert_return(() => invoke($353, `f`, []), [value("f64", -158456325028528750000000000000)]); + +// ./test/core/const.wast:961 +let $354 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000400000000001)))`); + +// ./test/core/const.wast:962 +assert_return(() => invoke($354, `f`, []), [value("f64", 158456325028528750000000000000)]); + +// ./test/core/const.wast:963 +let $355 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000400000000001)))`); + +// ./test/core/const.wast:964 +assert_return(() => invoke($355, `f`, []), [value("f64", -158456325028528750000000000000)]); + +// ./test/core/const.wast:965 +let $356 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x20000000000004fffffffffff)))`); + +// ./test/core/const.wast:966 +assert_return(() => invoke($356, `f`, []), [value("f64", 158456325028528750000000000000)]); + +// ./test/core/const.wast:967 +let $357 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x20000000000004fffffffffff)))`); + +// ./test/core/const.wast:968 +assert_return(() => invoke($357, `f`, []), [value("f64", -158456325028528750000000000000)]); + +// ./test/core/const.wast:969 +let $358 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000500000000000)))`); + +// ./test/core/const.wast:970 +assert_return(() => invoke($358, `f`, []), [value("f64", 158456325028528750000000000000)]); + +// ./test/core/const.wast:971 +let $359 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000500000000000)))`); + +// ./test/core/const.wast:972 +assert_return(() => invoke($359, `f`, []), [value("f64", -158456325028528750000000000000)]); + +// ./test/core/const.wast:973 +let $360 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x2000000000000500000000001)))`); + +// ./test/core/const.wast:974 +assert_return(() => invoke($360, `f`, []), [value("f64", 158456325028528780000000000000)]); + +// ./test/core/const.wast:975 +let $361 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x2000000000000500000000001)))`); + +// ./test/core/const.wast:976 +assert_return(() => invoke($361, `f`, []), [value("f64", -158456325028528780000000000000)]); + +// ./test/core/const.wast:978 +let $362 = instantiate(`(module (func (export "f") (result f64) (f64.const +1152921504606847104)))`); + +// ./test/core/const.wast:979 +assert_return(() => invoke($362, `f`, []), [value("f64", 1152921504606847000)]); + +// ./test/core/const.wast:980 +let $363 = instantiate(`(module (func (export "f") (result f64) (f64.const -1152921504606847104)))`); + +// ./test/core/const.wast:981 +assert_return(() => invoke($363, `f`, []), [value("f64", -1152921504606847000)]); + +// ./test/core/const.wast:982 +let $364 = instantiate(`(module (func (export "f") (result f64) (f64.const +1152921504606847105)))`); + +// ./test/core/const.wast:983 +assert_return(() => invoke($364, `f`, []), [value("f64", 1152921504606847200)]); + +// ./test/core/const.wast:984 +let $365 = instantiate(`(module (func (export "f") (result f64) (f64.const -1152921504606847105)))`); + +// ./test/core/const.wast:985 +assert_return(() => invoke($365, `f`, []), [value("f64", -1152921504606847200)]); + +// ./test/core/const.wast:986 +let $366 = instantiate(`(module (func (export "f") (result f64) (f64.const +1152921504606847359)))`); + +// ./test/core/const.wast:987 +assert_return(() => invoke($366, `f`, []), [value("f64", 1152921504606847200)]); + +// ./test/core/const.wast:988 +let $367 = instantiate(`(module (func (export "f") (result f64) (f64.const -1152921504606847359)))`); + +// ./test/core/const.wast:989 +assert_return(() => invoke($367, `f`, []), [value("f64", -1152921504606847200)]); + +// ./test/core/const.wast:990 +let $368 = instantiate(`(module (func (export "f") (result f64) (f64.const +1152921504606847360)))`); + +// ./test/core/const.wast:991 +assert_return(() => invoke($368, `f`, []), [value("f64", 1152921504606847500)]); + +// ./test/core/const.wast:992 +let $369 = instantiate(`(module (func (export "f") (result f64) (f64.const -1152921504606847360)))`); + +// ./test/core/const.wast:993 +assert_return(() => invoke($369, `f`, []), [value("f64", -1152921504606847500)]); + +// ./test/core/const.wast:996 +let $370 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000080000000000p-1022)))`); + +// ./test/core/const.wast:997 +assert_return(() => invoke($370, `f`, []), [value("f64", 0)]); + +// ./test/core/const.wast:998 +let $371 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000080000000000p-1022)))`); + +// ./test/core/const.wast:999 +assert_return(() => invoke($371, `f`, []), [value("f64", -0)]); + +// ./test/core/const.wast:1000 +let $372 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000080000000001p-1022)))`); + +// ./test/core/const.wast:1001 +assert_return( + () => invoke($372, `f`, []), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1002 +let $373 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000080000000001p-1022)))`); + +// ./test/core/const.wast:1003 +assert_return( + () => invoke($373, `f`, []), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1004 +let $374 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.0000000000000fffffffffffp-1022)))`); + +// ./test/core/const.wast:1005 +assert_return( + () => invoke($374, `f`, []), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1006 +let $375 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.0000000000000fffffffffffp-1022)))`); + +// ./test/core/const.wast:1007 +assert_return( + () => invoke($375, `f`, []), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1008 +let $376 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000100000000000p-1022)))`); + +// ./test/core/const.wast:1009 +assert_return( + () => invoke($376, `f`, []), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1010 +let $377 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000100000000000p-1022)))`); + +// ./test/core/const.wast:1011 +assert_return( + () => invoke($377, `f`, []), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1012 +let $378 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000100000000001p-1022)))`); + +// ./test/core/const.wast:1013 +assert_return( + () => invoke($378, `f`, []), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1014 +let $379 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000100000000001p-1022)))`); + +// ./test/core/const.wast:1015 +assert_return( + () => invoke($379, `f`, []), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1016 +let $380 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.00000000000017ffffffffffp-1022)))`); + +// ./test/core/const.wast:1017 +assert_return( + () => invoke($380, `f`, []), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1018 +let $381 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.00000000000017ffffffffffp-1022)))`); + +// ./test/core/const.wast:1019 +assert_return( + () => invoke($381, `f`, []), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/const.wast:1020 +let $382 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000180000000000p-1022)))`); + +// ./test/core/const.wast:1021 +assert_return( + () => invoke($382, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1022 +let $383 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000180000000000p-1022)))`); + +// ./test/core/const.wast:1023 +assert_return( + () => invoke($383, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1024 +let $384 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000180000000001p-1022)))`); + +// ./test/core/const.wast:1025 +assert_return( + () => invoke($384, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1026 +let $385 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000180000000001p-1022)))`); + +// ./test/core/const.wast:1027 +assert_return( + () => invoke($385, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1028 +let $386 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.0000000000001fffffffffffp-1022)))`); + +// ./test/core/const.wast:1029 +assert_return( + () => invoke($386, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1030 +let $387 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.0000000000001fffffffffffp-1022)))`); + +// ./test/core/const.wast:1031 +assert_return( + () => invoke($387, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1032 +let $388 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000200000000000p-1022)))`); + +// ./test/core/const.wast:1033 +assert_return( + () => invoke($388, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1034 +let $389 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000200000000000p-1022)))`); + +// ./test/core/const.wast:1035 +assert_return( + () => invoke($389, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1036 +let $390 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000200000000001p-1022)))`); + +// ./test/core/const.wast:1037 +assert_return( + () => invoke($390, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1038 +let $391 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000200000000001p-1022)))`); + +// ./test/core/const.wast:1039 +assert_return( + () => invoke($391, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1040 +let $392 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.00000000000027ffffffffffp-1022)))`); + +// ./test/core/const.wast:1041 +assert_return( + () => invoke($392, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1042 +let $393 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.00000000000027ffffffffffp-1022)))`); + +// ./test/core/const.wast:1043 +assert_return( + () => invoke($393, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1044 +let $394 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x0.000000000000280000000000p-1022)))`); + +// ./test/core/const.wast:1045 +assert_return( + () => invoke($394, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1046 +let $395 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x0.000000000000280000000000p-1022)))`); + +// ./test/core/const.wast:1047 +assert_return( + () => invoke($395, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/const.wast:1048 +let $396 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000001p-1022)))`); + +// ./test/core/const.wast:1049 +assert_return( + () => invoke($396, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507203), + ], +); + +// ./test/core/const.wast:1050 +let $397 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000001p-1022)))`); + +// ./test/core/const.wast:1051 +assert_return( + () => invoke($397, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507203), + ], +); + +// ./test/core/const.wast:1054 +let $398 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.fffffffffffff4p1023)))`); + +// ./test/core/const.wast:1055 +assert_return( + () => invoke($398, `f`, []), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:1056 +let $399 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.fffffffffffff4p1023)))`); + +// ./test/core/const.wast:1057 +assert_return( + () => invoke($399, `f`, []), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:1058 +let $400 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.fffffffffffff7ffffffp1023)))`); + +// ./test/core/const.wast:1059 +assert_return( + () => invoke($400, `f`, []), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/const.wast:1060 +let $401 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.fffffffffffff7ffffffp1023)))`); + +// ./test/core/const.wast:1061 +assert_return( + () => invoke($401, `f`, []), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/conversions.wast.js b/js/src/jit-test/tests/wasm/spec/spec/conversions.wast.js new file mode 100644 index 0000000000..b845545c23 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/conversions.wast.js @@ -0,0 +1,3109 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/conversions.wast + +// ./test/core/conversions.wast:1 +let $0 = instantiate(`(module + (func (export "i64.extend_i32_s") (param $$x i32) (result i64) (i64.extend_i32_s (local.get $$x))) + (func (export "i64.extend_i32_u") (param $$x i32) (result i64) (i64.extend_i32_u (local.get $$x))) + (func (export "i32.wrap_i64") (param $$x i64) (result i32) (i32.wrap_i64 (local.get $$x))) + (func (export "i32.trunc_f32_s") (param $$x f32) (result i32) (i32.trunc_f32_s (local.get $$x))) + (func (export "i32.trunc_f32_u") (param $$x f32) (result i32) (i32.trunc_f32_u (local.get $$x))) + (func (export "i32.trunc_f64_s") (param $$x f64) (result i32) (i32.trunc_f64_s (local.get $$x))) + (func (export "i32.trunc_f64_u") (param $$x f64) (result i32) (i32.trunc_f64_u (local.get $$x))) + (func (export "i64.trunc_f32_s") (param $$x f32) (result i64) (i64.trunc_f32_s (local.get $$x))) + (func (export "i64.trunc_f32_u") (param $$x f32) (result i64) (i64.trunc_f32_u (local.get $$x))) + (func (export "i64.trunc_f64_s") (param $$x f64) (result i64) (i64.trunc_f64_s (local.get $$x))) + (func (export "i64.trunc_f64_u") (param $$x f64) (result i64) (i64.trunc_f64_u (local.get $$x))) + (func (export "i32.trunc_sat_f32_s") (param $$x f32) (result i32) (i32.trunc_sat_f32_s (local.get $$x))) + (func (export "i32.trunc_sat_f32_u") (param $$x f32) (result i32) (i32.trunc_sat_f32_u (local.get $$x))) + (func (export "i32.trunc_sat_f64_s") (param $$x f64) (result i32) (i32.trunc_sat_f64_s (local.get $$x))) + (func (export "i32.trunc_sat_f64_u") (param $$x f64) (result i32) (i32.trunc_sat_f64_u (local.get $$x))) + (func (export "i64.trunc_sat_f32_s") (param $$x f32) (result i64) (i64.trunc_sat_f32_s (local.get $$x))) + (func (export "i64.trunc_sat_f32_u") (param $$x f32) (result i64) (i64.trunc_sat_f32_u (local.get $$x))) + (func (export "i64.trunc_sat_f64_s") (param $$x f64) (result i64) (i64.trunc_sat_f64_s (local.get $$x))) + (func (export "i64.trunc_sat_f64_u") (param $$x f64) (result i64) (i64.trunc_sat_f64_u (local.get $$x))) + (func (export "f32.convert_i32_s") (param $$x i32) (result f32) (f32.convert_i32_s (local.get $$x))) + (func (export "f32.convert_i64_s") (param $$x i64) (result f32) (f32.convert_i64_s (local.get $$x))) + (func (export "f64.convert_i32_s") (param $$x i32) (result f64) (f64.convert_i32_s (local.get $$x))) + (func (export "f64.convert_i64_s") (param $$x i64) (result f64) (f64.convert_i64_s (local.get $$x))) + (func (export "f32.convert_i32_u") (param $$x i32) (result f32) (f32.convert_i32_u (local.get $$x))) + (func (export "f32.convert_i64_u") (param $$x i64) (result f32) (f32.convert_i64_u (local.get $$x))) + (func (export "f64.convert_i32_u") (param $$x i32) (result f64) (f64.convert_i32_u (local.get $$x))) + (func (export "f64.convert_i64_u") (param $$x i64) (result f64) (f64.convert_i64_u (local.get $$x))) + (func (export "f64.promote_f32") (param $$x f32) (result f64) (f64.promote_f32 (local.get $$x))) + (func (export "f32.demote_f64") (param $$x f64) (result f32) (f32.demote_f64 (local.get $$x))) + (func (export "f32.reinterpret_i32") (param $$x i32) (result f32) (f32.reinterpret_i32 (local.get $$x))) + (func (export "f64.reinterpret_i64") (param $$x i64) (result f64) (f64.reinterpret_i64 (local.get $$x))) + (func (export "i32.reinterpret_f32") (param $$x f32) (result i32) (i32.reinterpret_f32 (local.get $$x))) + (func (export "i64.reinterpret_f64") (param $$x f64) (result i64) (i64.reinterpret_f64 (local.get $$x))) +)`); + +// ./test/core/conversions.wast:37 +assert_return(() => invoke($0, `i64.extend_i32_s`, [0]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:38 +assert_return(() => invoke($0, `i64.extend_i32_s`, [10000]), [value("i64", 10000n)]); + +// ./test/core/conversions.wast:39 +assert_return(() => invoke($0, `i64.extend_i32_s`, [-10000]), [value("i64", -10000n)]); + +// ./test/core/conversions.wast:40 +assert_return(() => invoke($0, `i64.extend_i32_s`, [-1]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:41 +assert_return(() => invoke($0, `i64.extend_i32_s`, [2147483647]), [value("i64", 2147483647n)]); + +// ./test/core/conversions.wast:42 +assert_return(() => invoke($0, `i64.extend_i32_s`, [-2147483648]), [value("i64", -2147483648n)]); + +// ./test/core/conversions.wast:44 +assert_return(() => invoke($0, `i64.extend_i32_u`, [0]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:45 +assert_return(() => invoke($0, `i64.extend_i32_u`, [10000]), [value("i64", 10000n)]); + +// ./test/core/conversions.wast:46 +assert_return(() => invoke($0, `i64.extend_i32_u`, [-10000]), [value("i64", 4294957296n)]); + +// ./test/core/conversions.wast:47 +assert_return(() => invoke($0, `i64.extend_i32_u`, [-1]), [value("i64", 4294967295n)]); + +// ./test/core/conversions.wast:48 +assert_return(() => invoke($0, `i64.extend_i32_u`, [2147483647]), [value("i64", 2147483647n)]); + +// ./test/core/conversions.wast:49 +assert_return(() => invoke($0, `i64.extend_i32_u`, [-2147483648]), [value("i64", 2147483648n)]); + +// ./test/core/conversions.wast:51 +assert_return(() => invoke($0, `i32.wrap_i64`, [-1n]), [value("i32", -1)]); + +// ./test/core/conversions.wast:52 +assert_return(() => invoke($0, `i32.wrap_i64`, [-100000n]), [value("i32", -100000)]); + +// ./test/core/conversions.wast:53 +assert_return(() => invoke($0, `i32.wrap_i64`, [2147483648n]), [value("i32", -2147483648)]); + +// ./test/core/conversions.wast:54 +assert_return(() => invoke($0, `i32.wrap_i64`, [-2147483649n]), [value("i32", 2147483647)]); + +// ./test/core/conversions.wast:55 +assert_return(() => invoke($0, `i32.wrap_i64`, [-4294967296n]), [value("i32", 0)]); + +// ./test/core/conversions.wast:56 +assert_return(() => invoke($0, `i32.wrap_i64`, [-4294967297n]), [value("i32", -1)]); + +// ./test/core/conversions.wast:57 +assert_return(() => invoke($0, `i32.wrap_i64`, [-4294967295n]), [value("i32", 1)]); + +// ./test/core/conversions.wast:58 +assert_return(() => invoke($0, `i32.wrap_i64`, [0n]), [value("i32", 0)]); + +// ./test/core/conversions.wast:59 +assert_return(() => invoke($0, `i32.wrap_i64`, [1311768467463790320n]), [value("i32", -1698898192)]); + +// ./test/core/conversions.wast:60 +assert_return(() => invoke($0, `i32.wrap_i64`, [4294967295n]), [value("i32", -1)]); + +// ./test/core/conversions.wast:61 +assert_return(() => invoke($0, `i32.wrap_i64`, [4294967296n]), [value("i32", 0)]); + +// ./test/core/conversions.wast:62 +assert_return(() => invoke($0, `i32.wrap_i64`, [4294967297n]), [value("i32", 1)]); + +// ./test/core/conversions.wast:64 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:65 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:66 +assert_return( + () => invoke($0, `i32.trunc_f32_s`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:67 +assert_return( + () => invoke($0, `i32.trunc_f32_s`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:68 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:69 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", 1.1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:70 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", 1.5)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:71 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", -1)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:72 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", -1.1)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:73 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", -1.5)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:74 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", -1.9)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:75 +assert_return(() => invoke($0, `i32.trunc_f32_s`, [value("f32", -2)]), [value("i32", -2)]); + +// ./test/core/conversions.wast:76 +assert_return( + () => invoke($0, `i32.trunc_f32_s`, [value("f32", 2147483500)]), + [value("i32", 2147483520)], +); + +// ./test/core/conversions.wast:77 +assert_return( + () => invoke($0, `i32.trunc_f32_s`, [value("f32", -2147483600)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:78 +assert_trap(() => invoke($0, `i32.trunc_f32_s`, [value("f32", 2147483600)]), `integer overflow`); + +// ./test/core/conversions.wast:79 +assert_trap(() => invoke($0, `i32.trunc_f32_s`, [value("f32", -2147484000)]), `integer overflow`); + +// ./test/core/conversions.wast:80 +assert_trap(() => invoke($0, `i32.trunc_f32_s`, [value("f32", Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:81 +assert_trap(() => invoke($0, `i32.trunc_f32_s`, [value("f32", -Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:82 +assert_trap( + () => invoke($0, `i32.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:83 +assert_trap( + () => invoke($0, `i32.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:84 +assert_trap( + () => invoke($0, `i32.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:85 +assert_trap( + () => invoke($0, `i32.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:87 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:88 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:89 +assert_return( + () => invoke($0, `i32.trunc_f32_u`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:90 +assert_return( + () => invoke($0, `i32.trunc_f32_u`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:91 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:92 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", 1.1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:93 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", 1.5)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:94 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", 1.9)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:95 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", 2)]), [value("i32", 2)]); + +// ./test/core/conversions.wast:96 +assert_return( + () => invoke($0, `i32.trunc_f32_u`, [value("f32", 2147483600)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:97 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", 4294967000)]), [value("i32", -256)]); + +// ./test/core/conversions.wast:98 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", -0.9)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:99 +assert_return(() => invoke($0, `i32.trunc_f32_u`, [value("f32", -0.99999994)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:100 +assert_trap(() => invoke($0, `i32.trunc_f32_u`, [value("f32", 4294967300)]), `integer overflow`); + +// ./test/core/conversions.wast:101 +assert_trap(() => invoke($0, `i32.trunc_f32_u`, [value("f32", -1)]), `integer overflow`); + +// ./test/core/conversions.wast:102 +assert_trap(() => invoke($0, `i32.trunc_f32_u`, [value("f32", Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:103 +assert_trap(() => invoke($0, `i32.trunc_f32_u`, [value("f32", -Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:104 +assert_trap( + () => invoke($0, `i32.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:105 +assert_trap( + () => invoke($0, `i32.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:106 +assert_trap( + () => invoke($0, `i32.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:107 +assert_trap( + () => invoke($0, `i32.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:109 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:110 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:111 +assert_return( + () => invoke($0, `i32.trunc_f64_s`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:112 +assert_return( + () => invoke($0, `i32.trunc_f64_s`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:113 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:114 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", 1.1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:115 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", 1.5)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:116 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", -1)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:117 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", -1.1)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:118 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", -1.5)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:119 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", -1.9)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:120 +assert_return(() => invoke($0, `i32.trunc_f64_s`, [value("f64", -2)]), [value("i32", -2)]); + +// ./test/core/conversions.wast:121 +assert_return( + () => invoke($0, `i32.trunc_f64_s`, [value("f64", 2147483647)]), + [value("i32", 2147483647)], +); + +// ./test/core/conversions.wast:122 +assert_return( + () => invoke($0, `i32.trunc_f64_s`, [value("f64", -2147483648)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:123 +assert_return( + () => invoke($0, `i32.trunc_f64_s`, [value("f64", -2147483648.9)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:124 +assert_return( + () => invoke($0, `i32.trunc_f64_s`, [value("f64", 2147483647.9)]), + [value("i32", 2147483647)], +); + +// ./test/core/conversions.wast:125 +assert_trap(() => invoke($0, `i32.trunc_f64_s`, [value("f64", 2147483648)]), `integer overflow`); + +// ./test/core/conversions.wast:126 +assert_trap(() => invoke($0, `i32.trunc_f64_s`, [value("f64", -2147483649)]), `integer overflow`); + +// ./test/core/conversions.wast:127 +assert_trap(() => invoke($0, `i32.trunc_f64_s`, [value("f64", Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:128 +assert_trap(() => invoke($0, `i32.trunc_f64_s`, [value("f64", -Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:129 +assert_trap( + () => invoke($0, `i32.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:130 +assert_trap( + () => invoke($0, `i32.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:131 +assert_trap( + () => invoke($0, `i32.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:132 +assert_trap( + () => invoke($0, `i32.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:134 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:135 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:136 +assert_return( + () => invoke($0, `i32.trunc_f64_u`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:137 +assert_return( + () => invoke($0, `i32.trunc_f64_u`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:138 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:139 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 1.1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:140 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 1.5)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:141 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 1.9)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:142 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 2)]), [value("i32", 2)]); + +// ./test/core/conversions.wast:143 +assert_return( + () => invoke($0, `i32.trunc_f64_u`, [value("f64", 2147483648)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:144 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 4294967295)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:145 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", -0.9)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:146 +assert_return( + () => invoke($0, `i32.trunc_f64_u`, [value("f64", -0.9999999999999999)]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:147 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 100000000)]), [value("i32", 100000000)]); + +// ./test/core/conversions.wast:148 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", -0.9)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:149 +assert_return(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 4294967295.9)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:150 +assert_trap(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 4294967296)]), `integer overflow`); + +// ./test/core/conversions.wast:151 +assert_trap(() => invoke($0, `i32.trunc_f64_u`, [value("f64", -1)]), `integer overflow`); + +// ./test/core/conversions.wast:152 +assert_trap(() => invoke($0, `i32.trunc_f64_u`, [value("f64", 10000000000000000)]), `integer overflow`); + +// ./test/core/conversions.wast:153 +assert_trap( + () => invoke($0, `i32.trunc_f64_u`, [value("f64", 1000000000000000000000000000000)]), + `integer overflow`, +); + +// ./test/core/conversions.wast:154 +assert_trap( + () => invoke($0, `i32.trunc_f64_u`, [value("f64", 9223372036854776000)]), + `integer overflow`, +); + +// ./test/core/conversions.wast:155 +assert_trap(() => invoke($0, `i32.trunc_f64_u`, [value("f64", Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:156 +assert_trap(() => invoke($0, `i32.trunc_f64_u`, [value("f64", -Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:157 +assert_trap( + () => invoke($0, `i32.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:158 +assert_trap( + () => invoke($0, `i32.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:159 +assert_trap( + () => invoke($0, `i32.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:160 +assert_trap( + () => invoke($0, `i32.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:162 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:163 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", -0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:164 +assert_return( + () => invoke($0, `i64.trunc_f32_s`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:165 +assert_return( + () => invoke($0, `i64.trunc_f32_s`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:166 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", 1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:167 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", 1.1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:168 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", 1.5)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:169 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", -1)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:170 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", -1.1)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:171 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", -1.5)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:172 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", -1.9)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:173 +assert_return(() => invoke($0, `i64.trunc_f32_s`, [value("f32", -2)]), [value("i64", -2n)]); + +// ./test/core/conversions.wast:174 +assert_return( + () => invoke($0, `i64.trunc_f32_s`, [value("f32", 4294967300)]), + [value("i64", 4294967296n)], +); + +// ./test/core/conversions.wast:175 +assert_return( + () => invoke($0, `i64.trunc_f32_s`, [value("f32", -4294967300)]), + [value("i64", -4294967296n)], +); + +// ./test/core/conversions.wast:176 +assert_return( + () => invoke($0, `i64.trunc_f32_s`, [value("f32", 9223371500000000000)]), + [value("i64", 9223371487098961920n)], +); + +// ./test/core/conversions.wast:177 +assert_return( + () => invoke($0, `i64.trunc_f32_s`, [value("f32", -9223372000000000000)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:178 +assert_trap( + () => invoke($0, `i64.trunc_f32_s`, [value("f32", 9223372000000000000)]), + `integer overflow`, +); + +// ./test/core/conversions.wast:179 +assert_trap( + () => invoke($0, `i64.trunc_f32_s`, [value("f32", -9223373000000000000)]), + `integer overflow`, +); + +// ./test/core/conversions.wast:180 +assert_trap(() => invoke($0, `i64.trunc_f32_s`, [value("f32", Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:181 +assert_trap(() => invoke($0, `i64.trunc_f32_s`, [value("f32", -Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:182 +assert_trap( + () => invoke($0, `i64.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:183 +assert_trap( + () => invoke($0, `i64.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:184 +assert_trap( + () => invoke($0, `i64.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:185 +assert_trap( + () => invoke($0, `i64.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:187 +assert_return(() => invoke($0, `i64.trunc_f32_u`, [value("f32", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:188 +assert_return(() => invoke($0, `i64.trunc_f32_u`, [value("f32", -0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:189 +assert_return( + () => invoke($0, `i64.trunc_f32_u`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:190 +assert_return( + () => invoke($0, `i64.trunc_f32_u`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:191 +assert_return(() => invoke($0, `i64.trunc_f32_u`, [value("f32", 1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:192 +assert_return(() => invoke($0, `i64.trunc_f32_u`, [value("f32", 1.1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:193 +assert_return(() => invoke($0, `i64.trunc_f32_u`, [value("f32", 1.5)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:194 +assert_return( + () => invoke($0, `i64.trunc_f32_u`, [value("f32", 4294967300)]), + [value("i64", 4294967296n)], +); + +// ./test/core/conversions.wast:195 +assert_return( + () => invoke($0, `i64.trunc_f32_u`, [value("f32", 18446743000000000000)]), + [value("i64", -1099511627776n)], +); + +// ./test/core/conversions.wast:196 +assert_return(() => invoke($0, `i64.trunc_f32_u`, [value("f32", -0.9)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:197 +assert_return(() => invoke($0, `i64.trunc_f32_u`, [value("f32", -0.99999994)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:198 +assert_trap( + () => invoke($0, `i64.trunc_f32_u`, [value("f32", 18446744000000000000)]), + `integer overflow`, +); + +// ./test/core/conversions.wast:199 +assert_trap(() => invoke($0, `i64.trunc_f32_u`, [value("f32", -1)]), `integer overflow`); + +// ./test/core/conversions.wast:200 +assert_trap(() => invoke($0, `i64.trunc_f32_u`, [value("f32", Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:201 +assert_trap(() => invoke($0, `i64.trunc_f32_u`, [value("f32", -Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:202 +assert_trap( + () => invoke($0, `i64.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:203 +assert_trap( + () => invoke($0, `i64.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:204 +assert_trap( + () => invoke($0, `i64.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:205 +assert_trap( + () => invoke($0, `i64.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:207 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:208 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", -0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:209 +assert_return( + () => invoke($0, `i64.trunc_f64_s`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:210 +assert_return( + () => invoke($0, `i64.trunc_f64_s`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:211 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", 1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:212 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", 1.1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:213 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", 1.5)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:214 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", -1)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:215 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", -1.1)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:216 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", -1.5)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:217 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", -1.9)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:218 +assert_return(() => invoke($0, `i64.trunc_f64_s`, [value("f64", -2)]), [value("i64", -2n)]); + +// ./test/core/conversions.wast:219 +assert_return( + () => invoke($0, `i64.trunc_f64_s`, [value("f64", 4294967296)]), + [value("i64", 4294967296n)], +); + +// ./test/core/conversions.wast:220 +assert_return( + () => invoke($0, `i64.trunc_f64_s`, [value("f64", -4294967296)]), + [value("i64", -4294967296n)], +); + +// ./test/core/conversions.wast:221 +assert_return( + () => invoke($0, `i64.trunc_f64_s`, [value("f64", 9223372036854775000)]), + [value("i64", 9223372036854774784n)], +); + +// ./test/core/conversions.wast:222 +assert_return( + () => invoke($0, `i64.trunc_f64_s`, [value("f64", -9223372036854776000)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:223 +assert_trap( + () => invoke($0, `i64.trunc_f64_s`, [value("f64", 9223372036854776000)]), + `integer overflow`, +); + +// ./test/core/conversions.wast:224 +assert_trap( + () => invoke($0, `i64.trunc_f64_s`, [value("f64", -9223372036854778000)]), + `integer overflow`, +); + +// ./test/core/conversions.wast:225 +assert_trap(() => invoke($0, `i64.trunc_f64_s`, [value("f64", Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:226 +assert_trap(() => invoke($0, `i64.trunc_f64_s`, [value("f64", -Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:227 +assert_trap( + () => invoke($0, `i64.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:228 +assert_trap( + () => invoke($0, `i64.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:229 +assert_trap( + () => invoke($0, `i64.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:230 +assert_trap( + () => invoke($0, `i64.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:232 +assert_return(() => invoke($0, `i64.trunc_f64_u`, [value("f64", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:233 +assert_return(() => invoke($0, `i64.trunc_f64_u`, [value("f64", -0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:234 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:235 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:236 +assert_return(() => invoke($0, `i64.trunc_f64_u`, [value("f64", 1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:237 +assert_return(() => invoke($0, `i64.trunc_f64_u`, [value("f64", 1.1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:238 +assert_return(() => invoke($0, `i64.trunc_f64_u`, [value("f64", 1.5)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:239 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [value("f64", 4294967295)]), + [value("i64", 4294967295n)], +); + +// ./test/core/conversions.wast:240 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [value("f64", 4294967296)]), + [value("i64", 4294967296n)], +); + +// ./test/core/conversions.wast:241 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [value("f64", 18446744073709550000)]), + [value("i64", -2048n)], +); + +// ./test/core/conversions.wast:242 +assert_return(() => invoke($0, `i64.trunc_f64_u`, [value("f64", -0.9)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:243 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [value("f64", -0.9999999999999999)]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:244 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [value("f64", 100000000)]), + [value("i64", 100000000n)], +); + +// ./test/core/conversions.wast:245 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [value("f64", 10000000000000000)]), + [value("i64", 10000000000000000n)], +); + +// ./test/core/conversions.wast:246 +assert_return( + () => invoke($0, `i64.trunc_f64_u`, [value("f64", 9223372036854776000)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:247 +assert_trap( + () => invoke($0, `i64.trunc_f64_u`, [value("f64", 18446744073709552000)]), + `integer overflow`, +); + +// ./test/core/conversions.wast:248 +assert_trap(() => invoke($0, `i64.trunc_f64_u`, [value("f64", -1)]), `integer overflow`); + +// ./test/core/conversions.wast:249 +assert_trap(() => invoke($0, `i64.trunc_f64_u`, [value("f64", Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:250 +assert_trap(() => invoke($0, `i64.trunc_f64_u`, [value("f64", -Infinity)]), `integer overflow`); + +// ./test/core/conversions.wast:251 +assert_trap( + () => invoke($0, `i64.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:252 +assert_trap( + () => invoke($0, `i64.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:253 +assert_trap( + () => invoke($0, `i64.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:254 +assert_trap( + () => invoke($0, `i64.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/conversions.wast:256 +assert_return(() => invoke($0, `f32.convert_i32_s`, [1]), [value("f32", 1)]); + +// ./test/core/conversions.wast:257 +assert_return(() => invoke($0, `f32.convert_i32_s`, [-1]), [value("f32", -1)]); + +// ./test/core/conversions.wast:258 +assert_return(() => invoke($0, `f32.convert_i32_s`, [0]), [value("f32", 0)]); + +// ./test/core/conversions.wast:259 +assert_return(() => invoke($0, `f32.convert_i32_s`, [2147483647]), [value("f32", 2147483600)]); + +// ./test/core/conversions.wast:260 +assert_return(() => invoke($0, `f32.convert_i32_s`, [-2147483648]), [value("f32", -2147483600)]); + +// ./test/core/conversions.wast:261 +assert_return(() => invoke($0, `f32.convert_i32_s`, [1234567890]), [value("f32", 1234568000)]); + +// ./test/core/conversions.wast:265 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:266 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:267 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:268 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:269 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:270 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", 1.1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:271 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", 1.5)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:272 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -1)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:273 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -1.1)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:274 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -1.5)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:275 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -1.9)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:276 +assert_return(() => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -2)]), [value("i32", -2)]); + +// ./test/core/conversions.wast:277 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", 2147483500)]), + [value("i32", 2147483520)], +); + +// ./test/core/conversions.wast:278 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -2147483600)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:279 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", 2147483600)]), + [value("i32", 2147483647)], +); + +// ./test/core/conversions.wast:280 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -2147484000)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:281 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", Infinity)]), + [value("i32", 2147483647)], +); + +// ./test/core/conversions.wast:282 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [value("f32", -Infinity)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:283 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:284 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:285 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:286 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_s`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:288 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:289 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:290 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_u`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:291 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_u`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:292 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:293 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 1.1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:294 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 1.5)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:295 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 1.9)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:296 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 2)]), [value("i32", 2)]); + +// ./test/core/conversions.wast:297 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 2147483600)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:298 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 4294967000)]), [value("i32", -256)]); + +// ./test/core/conversions.wast:299 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", -0.9)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:300 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", -0.99999994)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:301 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", 4294967300)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:302 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:303 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", Infinity)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:304 +assert_return(() => invoke($0, `i32.trunc_sat_f32_u`, [value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:305 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:306 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_u`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:307 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:308 +assert_return( + () => invoke($0, `i32.trunc_sat_f32_u`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:310 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:311 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:312 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:313 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:314 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:315 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", 1.1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:316 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", 1.5)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:317 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -1)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:318 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -1.1)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:319 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -1.5)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:320 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -1.9)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:321 +assert_return(() => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -2)]), [value("i32", -2)]); + +// ./test/core/conversions.wast:322 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", 2147483647)]), + [value("i32", 2147483647)], +); + +// ./test/core/conversions.wast:323 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -2147483648)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:324 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", 2147483648)]), + [value("i32", 2147483647)], +); + +// ./test/core/conversions.wast:325 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -2147483649)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:326 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", Infinity)]), + [value("i32", 2147483647)], +); + +// ./test/core/conversions.wast:327 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [value("f64", -Infinity)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:328 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:329 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:330 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:331 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:333 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:334 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:335 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:336 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:337 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:338 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 1.1)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:339 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 1.5)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:340 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 1.9)]), [value("i32", 1)]); + +// ./test/core/conversions.wast:341 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 2)]), [value("i32", 2)]); + +// ./test/core/conversions.wast:342 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 2147483648)]), + [value("i32", -2147483648)], +); + +// ./test/core/conversions.wast:343 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 4294967295)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:344 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", -0.9)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:345 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", -0.9999999999999999)]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:346 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 100000000)]), + [value("i32", 100000000)], +); + +// ./test/core/conversions.wast:347 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 4294967296)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:348 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:349 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 10000000000000000)]), + [value("i32", -1)], +); + +// ./test/core/conversions.wast:350 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [ + value("f64", 1000000000000000000000000000000), + ]), + [value("i32", -1)], +); + +// ./test/core/conversions.wast:351 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", 9223372036854776000)]), + [value("i32", -1)], +); + +// ./test/core/conversions.wast:352 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", Infinity)]), [value("i32", -1)]); + +// ./test/core/conversions.wast:353 +assert_return(() => invoke($0, `i32.trunc_sat_f64_u`, [value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:354 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:355 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:356 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:357 +assert_return( + () => invoke($0, `i32.trunc_sat_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/conversions.wast:359 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:360 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:361 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:362 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:363 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", 1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:364 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", 1.1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:365 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", 1.5)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:366 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -1)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:367 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -1.1)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:368 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -1.5)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:369 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -1.9)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:370 +assert_return(() => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -2)]), [value("i64", -2n)]); + +// ./test/core/conversions.wast:371 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", 4294967300)]), + [value("i64", 4294967296n)], +); + +// ./test/core/conversions.wast:372 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -4294967300)]), + [value("i64", -4294967296n)], +); + +// ./test/core/conversions.wast:373 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", 9223371500000000000)]), + [value("i64", 9223371487098961920n)], +); + +// ./test/core/conversions.wast:374 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -9223372000000000000)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:375 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", 9223372000000000000)]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/conversions.wast:376 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -9223373000000000000)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:377 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", Infinity)]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/conversions.wast:378 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [value("f32", -Infinity)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:379 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:380 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:381 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:382 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_s`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:384 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:385 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", -0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:386 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:387 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:388 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", 1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:389 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", 1.1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:390 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", 1.5)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:391 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", 4294967300)]), + [value("i64", 4294967296n)], +); + +// ./test/core/conversions.wast:392 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", 18446743000000000000)]), + [value("i64", -1099511627776n)], +); + +// ./test/core/conversions.wast:393 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", -0.9)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:394 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", -0.99999994)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:395 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", 18446744000000000000)]), + [value("i64", -1n)], +); + +// ./test/core/conversions.wast:396 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", -1)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:397 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", Infinity)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:398 +assert_return(() => invoke($0, `i64.trunc_sat_f32_u`, [value("f32", -Infinity)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:399 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:400 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:401 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:402 +assert_return( + () => invoke($0, `i64.trunc_sat_f32_u`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:404 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:405 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:406 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:407 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:408 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", 1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:409 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", 1.1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:410 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", 1.5)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:411 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -1)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:412 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -1.1)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:413 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -1.5)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:414 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -1.9)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:415 +assert_return(() => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -2)]), [value("i64", -2n)]); + +// ./test/core/conversions.wast:416 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", 4294967296)]), + [value("i64", 4294967296n)], +); + +// ./test/core/conversions.wast:417 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -4294967296)]), + [value("i64", -4294967296n)], +); + +// ./test/core/conversions.wast:418 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", 9223372036854775000)]), + [value("i64", 9223372036854774784n)], +); + +// ./test/core/conversions.wast:419 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -9223372036854776000)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:420 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", 9223372036854776000)]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/conversions.wast:421 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -9223372036854778000)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:422 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", Infinity)]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/conversions.wast:423 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [value("f64", -Infinity)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:424 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:425 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:426 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:427 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:429 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:430 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", -0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:431 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:432 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:433 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:434 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 1.1)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:435 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 1.5)]), [value("i64", 1n)]); + +// ./test/core/conversions.wast:436 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 4294967295)]), + [value("i64", 4294967295n)], +); + +// ./test/core/conversions.wast:437 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 4294967296)]), + [value("i64", 4294967296n)], +); + +// ./test/core/conversions.wast:438 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 18446744073709550000)]), + [value("i64", -2048n)], +); + +// ./test/core/conversions.wast:439 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", -0.9)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:440 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", -0.9999999999999999)]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:441 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 100000000)]), + [value("i64", 100000000n)], +); + +// ./test/core/conversions.wast:442 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 10000000000000000)]), + [value("i64", 10000000000000000n)], +); + +// ./test/core/conversions.wast:443 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 9223372036854776000)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:444 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", 18446744073709552000)]), + [value("i64", -1n)], +); + +// ./test/core/conversions.wast:445 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", -1)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:446 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", Infinity)]), [value("i64", -1n)]); + +// ./test/core/conversions.wast:447 +assert_return(() => invoke($0, `i64.trunc_sat_f64_u`, [value("f64", -Infinity)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:448 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:449 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:450 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:451 +assert_return( + () => invoke($0, `i64.trunc_sat_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i64", 0n)], +); + +// ./test/core/conversions.wast:454 +assert_return(() => invoke($0, `f32.convert_i32_s`, [16777217]), [value("f32", 16777216)]); + +// ./test/core/conversions.wast:455 +assert_return(() => invoke($0, `f32.convert_i32_s`, [-16777217]), [value("f32", -16777216)]); + +// ./test/core/conversions.wast:456 +assert_return(() => invoke($0, `f32.convert_i32_s`, [16777219]), [value("f32", 16777220)]); + +// ./test/core/conversions.wast:457 +assert_return(() => invoke($0, `f32.convert_i32_s`, [-16777219]), [value("f32", -16777220)]); + +// ./test/core/conversions.wast:459 +assert_return(() => invoke($0, `f32.convert_i64_s`, [1n]), [value("f32", 1)]); + +// ./test/core/conversions.wast:460 +assert_return(() => invoke($0, `f32.convert_i64_s`, [-1n]), [value("f32", -1)]); + +// ./test/core/conversions.wast:461 +assert_return(() => invoke($0, `f32.convert_i64_s`, [0n]), [value("f32", 0)]); + +// ./test/core/conversions.wast:462 +assert_return( + () => invoke($0, `f32.convert_i64_s`, [9223372036854775807n]), + [value("f32", 9223372000000000000)], +); + +// ./test/core/conversions.wast:463 +assert_return( + () => invoke($0, `f32.convert_i64_s`, [-9223372036854775808n]), + [value("f32", -9223372000000000000)], +); + +// ./test/core/conversions.wast:464 +assert_return( + () => invoke($0, `f32.convert_i64_s`, [314159265358979n]), + [value("f32", 314159280000000)], +); + +// ./test/core/conversions.wast:466 +assert_return(() => invoke($0, `f32.convert_i64_s`, [16777217n]), [value("f32", 16777216)]); + +// ./test/core/conversions.wast:467 +assert_return(() => invoke($0, `f32.convert_i64_s`, [-16777217n]), [value("f32", -16777216)]); + +// ./test/core/conversions.wast:468 +assert_return(() => invoke($0, `f32.convert_i64_s`, [16777219n]), [value("f32", 16777220)]); + +// ./test/core/conversions.wast:469 +assert_return(() => invoke($0, `f32.convert_i64_s`, [-16777219n]), [value("f32", -16777220)]); + +// ./test/core/conversions.wast:471 +assert_return( + () => invoke($0, `f32.convert_i64_s`, [9223371212221054977n]), + [value("f32", 9223371500000000000)], +); + +// ./test/core/conversions.wast:472 +assert_return( + () => invoke($0, `f32.convert_i64_s`, [-9223371761976868863n]), + [value("f32", -9223371500000000000)], +); + +// ./test/core/conversions.wast:473 +assert_return( + () => invoke($0, `f32.convert_i64_s`, [9007199791611905n]), + [value("f32", 9007200000000000)], +); + +// ./test/core/conversions.wast:474 +assert_return( + () => invoke($0, `f32.convert_i64_s`, [-9007199791611905n]), + [value("f32", -9007200000000000)], +); + +// ./test/core/conversions.wast:476 +assert_return(() => invoke($0, `f64.convert_i32_s`, [1]), [value("f64", 1)]); + +// ./test/core/conversions.wast:477 +assert_return(() => invoke($0, `f64.convert_i32_s`, [-1]), [value("f64", -1)]); + +// ./test/core/conversions.wast:478 +assert_return(() => invoke($0, `f64.convert_i32_s`, [0]), [value("f64", 0)]); + +// ./test/core/conversions.wast:479 +assert_return(() => invoke($0, `f64.convert_i32_s`, [2147483647]), [value("f64", 2147483647)]); + +// ./test/core/conversions.wast:480 +assert_return(() => invoke($0, `f64.convert_i32_s`, [-2147483648]), [value("f64", -2147483648)]); + +// ./test/core/conversions.wast:481 +assert_return(() => invoke($0, `f64.convert_i32_s`, [987654321]), [value("f64", 987654321)]); + +// ./test/core/conversions.wast:483 +assert_return(() => invoke($0, `f64.convert_i64_s`, [1n]), [value("f64", 1)]); + +// ./test/core/conversions.wast:484 +assert_return(() => invoke($0, `f64.convert_i64_s`, [-1n]), [value("f64", -1)]); + +// ./test/core/conversions.wast:485 +assert_return(() => invoke($0, `f64.convert_i64_s`, [0n]), [value("f64", 0)]); + +// ./test/core/conversions.wast:486 +assert_return( + () => invoke($0, `f64.convert_i64_s`, [9223372036854775807n]), + [value("f64", 9223372036854776000)], +); + +// ./test/core/conversions.wast:487 +assert_return( + () => invoke($0, `f64.convert_i64_s`, [-9223372036854775808n]), + [value("f64", -9223372036854776000)], +); + +// ./test/core/conversions.wast:488 +assert_return( + () => invoke($0, `f64.convert_i64_s`, [4669201609102990n]), + [value("f64", 4669201609102990)], +); + +// ./test/core/conversions.wast:490 +assert_return( + () => invoke($0, `f64.convert_i64_s`, [9007199254740993n]), + [value("f64", 9007199254740992)], +); + +// ./test/core/conversions.wast:491 +assert_return( + () => invoke($0, `f64.convert_i64_s`, [-9007199254740993n]), + [value("f64", -9007199254740992)], +); + +// ./test/core/conversions.wast:492 +assert_return( + () => invoke($0, `f64.convert_i64_s`, [9007199254740995n]), + [value("f64", 9007199254740996)], +); + +// ./test/core/conversions.wast:493 +assert_return( + () => invoke($0, `f64.convert_i64_s`, [-9007199254740995n]), + [value("f64", -9007199254740996)], +); + +// ./test/core/conversions.wast:495 +assert_return(() => invoke($0, `f32.convert_i32_u`, [1]), [value("f32", 1)]); + +// ./test/core/conversions.wast:496 +assert_return(() => invoke($0, `f32.convert_i32_u`, [0]), [value("f32", 0)]); + +// ./test/core/conversions.wast:497 +assert_return(() => invoke($0, `f32.convert_i32_u`, [2147483647]), [value("f32", 2147483600)]); + +// ./test/core/conversions.wast:498 +assert_return(() => invoke($0, `f32.convert_i32_u`, [-2147483648]), [value("f32", 2147483600)]); + +// ./test/core/conversions.wast:499 +assert_return(() => invoke($0, `f32.convert_i32_u`, [305419896]), [value("f32", 305419900)]); + +// ./test/core/conversions.wast:500 +assert_return(() => invoke($0, `f32.convert_i32_u`, [-1]), [value("f32", 4294967300)]); + +// ./test/core/conversions.wast:501 +assert_return(() => invoke($0, `f32.convert_i32_u`, [-2147483520]), [value("f32", 2147483600)]); + +// ./test/core/conversions.wast:502 +assert_return(() => invoke($0, `f32.convert_i32_u`, [-2147483519]), [value("f32", 2147484000)]); + +// ./test/core/conversions.wast:503 +assert_return(() => invoke($0, `f32.convert_i32_u`, [-2147483518]), [value("f32", 2147484000)]); + +// ./test/core/conversions.wast:504 +assert_return(() => invoke($0, `f32.convert_i32_u`, [-384]), [value("f32", 4294966800)]); + +// ./test/core/conversions.wast:505 +assert_return(() => invoke($0, `f32.convert_i32_u`, [-383]), [value("f32", 4294967000)]); + +// ./test/core/conversions.wast:506 +assert_return(() => invoke($0, `f32.convert_i32_u`, [-382]), [value("f32", 4294967000)]); + +// ./test/core/conversions.wast:508 +assert_return(() => invoke($0, `f32.convert_i32_u`, [16777217]), [value("f32", 16777216)]); + +// ./test/core/conversions.wast:509 +assert_return(() => invoke($0, `f32.convert_i32_u`, [16777219]), [value("f32", 16777220)]); + +// ./test/core/conversions.wast:511 +assert_return(() => invoke($0, `f32.convert_i64_u`, [1n]), [value("f32", 1)]); + +// ./test/core/conversions.wast:512 +assert_return(() => invoke($0, `f32.convert_i64_u`, [0n]), [value("f32", 0)]); + +// ./test/core/conversions.wast:513 +assert_return( + () => invoke($0, `f32.convert_i64_u`, [9223372036854775807n]), + [value("f32", 9223372000000000000)], +); + +// ./test/core/conversions.wast:514 +assert_return( + () => invoke($0, `f32.convert_i64_u`, [-9223372036854775808n]), + [value("f32", 9223372000000000000)], +); + +// ./test/core/conversions.wast:515 +assert_return(() => invoke($0, `f32.convert_i64_u`, [-1n]), [value("f32", 18446744000000000000)]); + +// ./test/core/conversions.wast:517 +assert_return(() => invoke($0, `f32.convert_i64_u`, [16777217n]), [value("f32", 16777216)]); + +// ./test/core/conversions.wast:518 +assert_return(() => invoke($0, `f32.convert_i64_u`, [16777219n]), [value("f32", 16777220)]); + +// ./test/core/conversions.wast:520 +assert_return( + () => invoke($0, `f32.convert_i64_u`, [9007199791611905n]), + [value("f32", 9007200000000000)], +); + +// ./test/core/conversions.wast:521 +assert_return( + () => invoke($0, `f32.convert_i64_u`, [9223371761976868863n]), + [value("f32", 9223371500000000000)], +); + +// ./test/core/conversions.wast:522 +assert_return( + () => invoke($0, `f32.convert_i64_u`, [-9223371487098961919n]), + [value("f32", 9223373000000000000)], +); + +// ./test/core/conversions.wast:523 +assert_return( + () => invoke($0, `f32.convert_i64_u`, [-1649267441663n]), + [value("f32", 18446743000000000000)], +); + +// ./test/core/conversions.wast:525 +assert_return(() => invoke($0, `f64.convert_i32_u`, [1]), [value("f64", 1)]); + +// ./test/core/conversions.wast:526 +assert_return(() => invoke($0, `f64.convert_i32_u`, [0]), [value("f64", 0)]); + +// ./test/core/conversions.wast:527 +assert_return(() => invoke($0, `f64.convert_i32_u`, [2147483647]), [value("f64", 2147483647)]); + +// ./test/core/conversions.wast:528 +assert_return(() => invoke($0, `f64.convert_i32_u`, [-2147483648]), [value("f64", 2147483648)]); + +// ./test/core/conversions.wast:529 +assert_return(() => invoke($0, `f64.convert_i32_u`, [-1]), [value("f64", 4294967295)]); + +// ./test/core/conversions.wast:531 +assert_return(() => invoke($0, `f64.convert_i64_u`, [1n]), [value("f64", 1)]); + +// ./test/core/conversions.wast:532 +assert_return(() => invoke($0, `f64.convert_i64_u`, [0n]), [value("f64", 0)]); + +// ./test/core/conversions.wast:533 +assert_return( + () => invoke($0, `f64.convert_i64_u`, [9223372036854775807n]), + [value("f64", 9223372036854776000)], +); + +// ./test/core/conversions.wast:534 +assert_return( + () => invoke($0, `f64.convert_i64_u`, [-9223372036854775808n]), + [value("f64", 9223372036854776000)], +); + +// ./test/core/conversions.wast:535 +assert_return(() => invoke($0, `f64.convert_i64_u`, [-1n]), [value("f64", 18446744073709552000)]); + +// ./test/core/conversions.wast:536 +assert_return( + () => invoke($0, `f64.convert_i64_u`, [-9223372036854774784n]), + [value("f64", 9223372036854776000)], +); + +// ./test/core/conversions.wast:537 +assert_return( + () => invoke($0, `f64.convert_i64_u`, [-9223372036854774783n]), + [value("f64", 9223372036854778000)], +); + +// ./test/core/conversions.wast:538 +assert_return( + () => invoke($0, `f64.convert_i64_u`, [-9223372036854774782n]), + [value("f64", 9223372036854778000)], +); + +// ./test/core/conversions.wast:539 +assert_return(() => invoke($0, `f64.convert_i64_u`, [-3072n]), [value("f64", 18446744073709548000)]); + +// ./test/core/conversions.wast:540 +assert_return(() => invoke($0, `f64.convert_i64_u`, [-3071n]), [value("f64", 18446744073709550000)]); + +// ./test/core/conversions.wast:541 +assert_return(() => invoke($0, `f64.convert_i64_u`, [-3070n]), [value("f64", 18446744073709550000)]); + +// ./test/core/conversions.wast:543 +assert_return( + () => invoke($0, `f64.convert_i64_u`, [9007199254740993n]), + [value("f64", 9007199254740992)], +); + +// ./test/core/conversions.wast:544 +assert_return( + () => invoke($0, `f64.convert_i64_u`, [9007199254740995n]), + [value("f64", 9007199254740996)], +); + +// ./test/core/conversions.wast:546 +assert_return(() => invoke($0, `f64.promote_f32`, [value("f32", 0)]), [value("f64", 0)]); + +// ./test/core/conversions.wast:547 +assert_return(() => invoke($0, `f64.promote_f32`, [value("f32", -0)]), [value("f64", -0)]); + +// ./test/core/conversions.wast:548 +assert_return( + () => invoke($0, `f64.promote_f32`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f64", 0.000000000000000000000000000000000000000000001401298464324817)], +); + +// ./test/core/conversions.wast:549 +assert_return( + () => invoke($0, `f64.promote_f32`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000001401298464324817), + ], +); + +// ./test/core/conversions.wast:550 +assert_return(() => invoke($0, `f64.promote_f32`, [value("f32", 1)]), [value("f64", 1)]); + +// ./test/core/conversions.wast:551 +assert_return(() => invoke($0, `f64.promote_f32`, [value("f32", -1)]), [value("f64", -1)]); + +// ./test/core/conversions.wast:552 +assert_return( + () => invoke($0, `f64.promote_f32`, [ + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f64", -340282346638528860000000000000000000000)], +); + +// ./test/core/conversions.wast:553 +assert_return( + () => invoke($0, `f64.promote_f32`, [ + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f64", 340282346638528860000000000000000000000)], +); + +// ./test/core/conversions.wast:555 +assert_return( + () => invoke($0, `f64.promote_f32`, [ + value("f32", 0.0000000000000000000000000000000000015046328), + ]), + [value("f64", 0.000000000000000000000000000000000001504632769052528)], +); + +// ./test/core/conversions.wast:557 +assert_return( + () => invoke($0, `f64.promote_f32`, [ + value("f32", 66382537000000000000000000000000000000), + ]), + [value("f64", 66382536710104395000000000000000000000)], +); + +// ./test/core/conversions.wast:558 +assert_return(() => invoke($0, `f64.promote_f32`, [value("f32", Infinity)]), [value("f64", Infinity)]); + +// ./test/core/conversions.wast:559 +assert_return(() => invoke($0, `f64.promote_f32`, [value("f32", -Infinity)]), [value("f64", -Infinity)]); + +// ./test/core/conversions.wast:560 +assert_return( + () => invoke($0, `f64.promote_f32`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/conversions.wast:561 +assert_return( + () => invoke($0, `f64.promote_f32`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/conversions.wast:562 +assert_return( + () => invoke($0, `f64.promote_f32`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/conversions.wast:563 +assert_return( + () => invoke($0, `f64.promote_f32`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/conversions.wast:565 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", 0)]), [value("f32", 0)]); + +// ./test/core/conversions.wast:566 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", -0)]), [value("f32", -0)]); + +// ./test/core/conversions.wast:567 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f32", 0)], +); + +// ./test/core/conversions.wast:568 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f32", -0)], +); + +// ./test/core/conversions.wast:569 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", 1)]), [value("f32", 1)]); + +// ./test/core/conversions.wast:570 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", -1)]), [value("f32", -1)]); + +// ./test/core/conversions.wast:571 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.000000000000000000000000000000000000011754942807573643), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/conversions.wast:572 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -0.000000000000000000000000000000000000011754942807573643), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/conversions.wast:573 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.000000000000000000000000000000000000011754942807573642), + ]), + [value("f32", 0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/conversions.wast:574 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -0.000000000000000000000000000000000000011754942807573642), + ]), + [value("f32", -0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/conversions.wast:575 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.000000000000000000000000000000000000000000001401298464324817), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/conversions.wast:576 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -0.000000000000000000000000000000000000000000001401298464324817), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/conversions.wast:577 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 340282336497324060000000000000000000000), + ]), + [value("f32", 340282330000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:578 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -340282336497324060000000000000000000000), + ]), + [value("f32", -340282330000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:579 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 340282336497324100000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:580 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -340282336497324100000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:581 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 340282346638528860000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:582 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -340282346638528860000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:583 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 340282356779733620000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:584 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -340282356779733620000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:585 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 340282356779733660000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/conversions.wast:586 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -340282356779733660000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/conversions.wast:587 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.000000000000000000000000000000000001504632769052528), + ]), + [value("f32", 0.0000000000000000000000000000000000015046328)], +); + +// ./test/core/conversions.wast:588 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 66382536710104395000000000000000000000), + ]), + [value("f32", 66382537000000000000000000000000000000)], +); + +// ./test/core/conversions.wast:589 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", Infinity)]), [value("f32", Infinity)]); + +// ./test/core/conversions.wast:590 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", -Infinity)]), [value("f32", -Infinity)]); + +// ./test/core/conversions.wast:591 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", 1.0000000000000002)]), [value("f32", 1)]); + +// ./test/core/conversions.wast:592 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", 0.9999999999999999)]), [value("f32", 1)]); + +// ./test/core/conversions.wast:593 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", 1.0000000596046448)]), [value("f32", 1)]); + +// ./test/core/conversions.wast:594 +assert_return( + () => invoke($0, `f32.demote_f64`, [value("f64", 1.000000059604645)]), + [value("f32", 1.0000001)], +); + +// ./test/core/conversions.wast:595 +assert_return( + () => invoke($0, `f32.demote_f64`, [value("f64", 1.000000178813934)]), + [value("f32", 1.0000001)], +); + +// ./test/core/conversions.wast:596 +assert_return( + () => invoke($0, `f32.demote_f64`, [value("f64", 1.0000001788139343)]), + [value("f32", 1.0000002)], +); + +// ./test/core/conversions.wast:597 +assert_return( + () => invoke($0, `f32.demote_f64`, [value("f64", 1.0000002980232239)]), + [value("f32", 1.0000002)], +); + +// ./test/core/conversions.wast:598 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", 16777217)]), [value("f32", 16777216)]); + +// ./test/core/conversions.wast:599 +assert_return( + () => invoke($0, `f32.demote_f64`, [value("f64", 16777217.000000004)]), + [value("f32", 16777218)], +); + +// ./test/core/conversions.wast:600 +assert_return( + () => invoke($0, `f32.demote_f64`, [value("f64", 16777218.999999996)]), + [value("f32", 16777218)], +); + +// ./test/core/conversions.wast:601 +assert_return(() => invoke($0, `f32.demote_f64`, [value("f64", 16777219)]), [value("f32", 16777220)]); + +// ./test/core/conversions.wast:602 +assert_return( + () => invoke($0, `f32.demote_f64`, [value("f64", 424258443299142700000000000000000)]), + [value("f32", 424258450000000000000000000000000)], +); + +// ./test/core/conversions.wast:603 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.0000000000000000000000000000000001569262107843488), + ]), + [value("f32", 0.00000000000000000000000000000000015692621)], +); + +// ./test/core/conversions.wast:604 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.000000000000000000000000000000000000010551773688605172), + ]), + [value("f32", 0.000000000000000000000000000000000000010551773)], +); + +// ./test/core/conversions.wast:605 +assert_return( + () => invoke($0, `f32.demote_f64`, [value("f64", -2.8238128484141933)]), + [value("f32", -2.823813)], +); + +// ./test/core/conversions.wast:606 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -9063376370095757000000000000000000), + ]), + [value("f32", -9063376000000000000000000000000000)], +); + +// ./test/core/conversions.wast:607 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/conversions.wast:608 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/conversions.wast:609 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/conversions.wast:610 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/conversions.wast:611 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f32", 0)], +); + +// ./test/core/conversions.wast:612 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f32", -0)], +); + +// ./test/core/conversions.wast:613 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.0000000000000000000000000000000000000000000007006492321624085), + ]), + [value("f32", 0)], +); + +// ./test/core/conversions.wast:614 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -0.0000000000000000000000000000000000000000000007006492321624085), + ]), + [value("f32", -0)], +); + +// ./test/core/conversions.wast:615 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", 0.0000000000000000000000000000000000000000000007006492321624087), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/conversions.wast:616 +assert_return( + () => invoke($0, `f32.demote_f64`, [ + value("f64", -0.0000000000000000000000000000000000000000000007006492321624087), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/conversions.wast:618 +assert_return(() => invoke($0, `f32.reinterpret_i32`, [0]), [value("f32", 0)]); + +// ./test/core/conversions.wast:619 +assert_return(() => invoke($0, `f32.reinterpret_i32`, [-2147483648]), [value("f32", -0)]); + +// ./test/core/conversions.wast:620 +assert_return( + () => invoke($0, `f32.reinterpret_i32`, [1]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/conversions.wast:621 +assert_return(() => invoke($0, `f32.reinterpret_i32`, [-1]), [bytes("f32", [0xff, 0xff, 0xff, 0xff])]); + +// ./test/core/conversions.wast:622 +assert_return( + () => invoke($0, `f32.reinterpret_i32`, [123456789]), + [value("f32", 0.00000000000000000000000000000000016535997)], +); + +// ./test/core/conversions.wast:623 +assert_return( + () => invoke($0, `f32.reinterpret_i32`, [-2147483647]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/conversions.wast:624 +assert_return(() => invoke($0, `f32.reinterpret_i32`, [2139095040]), [value("f32", Infinity)]); + +// ./test/core/conversions.wast:625 +assert_return(() => invoke($0, `f32.reinterpret_i32`, [-8388608]), [value("f32", -Infinity)]); + +// ./test/core/conversions.wast:626 +assert_return( + () => invoke($0, `f32.reinterpret_i32`, [2143289344]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/conversions.wast:627 +assert_return( + () => invoke($0, `f32.reinterpret_i32`, [-4194304]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/conversions.wast:628 +assert_return( + () => invoke($0, `f32.reinterpret_i32`, [2141192192]), + [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])], +); + +// ./test/core/conversions.wast:629 +assert_return( + () => invoke($0, `f32.reinterpret_i32`, [-6291456]), + [bytes("f32", [0x0, 0x0, 0xa0, 0xff])], +); + +// ./test/core/conversions.wast:631 +assert_return(() => invoke($0, `f64.reinterpret_i64`, [0n]), [value("f64", 0)]); + +// ./test/core/conversions.wast:632 +assert_return( + () => invoke($0, `f64.reinterpret_i64`, [1n]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/conversions.wast:633 +assert_return( + () => invoke($0, `f64.reinterpret_i64`, [-1n]), + [bytes("f64", [0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/conversions.wast:634 +assert_return(() => invoke($0, `f64.reinterpret_i64`, [-9223372036854775808n]), [value("f64", -0)]); + +// ./test/core/conversions.wast:635 +assert_return( + () => invoke($0, `f64.reinterpret_i64`, [1234567890n]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000609957582), + ], +); + +// ./test/core/conversions.wast:636 +assert_return( + () => invoke($0, `f64.reinterpret_i64`, [-9223372036854775807n]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/conversions.wast:637 +assert_return(() => invoke($0, `f64.reinterpret_i64`, [9218868437227405312n]), [value("f64", Infinity)]); + +// ./test/core/conversions.wast:638 +assert_return(() => invoke($0, `f64.reinterpret_i64`, [-4503599627370496n]), [value("f64", -Infinity)]); + +// ./test/core/conversions.wast:639 +assert_return( + () => invoke($0, `f64.reinterpret_i64`, [9221120237041090560n]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/conversions.wast:640 +assert_return( + () => invoke($0, `f64.reinterpret_i64`, [-2251799813685248n]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/conversions.wast:641 +assert_return( + () => invoke($0, `f64.reinterpret_i64`, [9219994337134247936n]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/conversions.wast:642 +assert_return( + () => invoke($0, `f64.reinterpret_i64`, [-3377699720527872n]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])], +); + +// ./test/core/conversions.wast:644 +assert_return(() => invoke($0, `i32.reinterpret_f32`, [value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/conversions.wast:645 +assert_return(() => invoke($0, `i32.reinterpret_f32`, [value("f32", -0)]), [value("i32", -2147483648)]); + +// ./test/core/conversions.wast:646 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/conversions.wast:647 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [bytes("f32", [0xff, 0xff, 0xff, 0xff])]), + [value("i32", -1)], +); + +// ./test/core/conversions.wast:648 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", -2147483647)], +); + +// ./test/core/conversions.wast:649 +assert_return(() => invoke($0, `i32.reinterpret_f32`, [value("f32", 1)]), [value("i32", 1065353216)]); + +// ./test/core/conversions.wast:650 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [value("f32", 3.1415925)]), + [value("i32", 1078530010)], +); + +// ./test/core/conversions.wast:651 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [ + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 2139095039)], +); + +// ./test/core/conversions.wast:652 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [ + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", -8388609)], +); + +// ./test/core/conversions.wast:653 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [value("f32", Infinity)]), + [value("i32", 2139095040)], +); + +// ./test/core/conversions.wast:654 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [value("f32", -Infinity)]), + [value("i32", -8388608)], +); + +// ./test/core/conversions.wast:655 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 2143289344)], +); + +// ./test/core/conversions.wast:656 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", -4194304)], +); + +// ./test/core/conversions.wast:657 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 2141192192)], +); + +// ./test/core/conversions.wast:658 +assert_return( + () => invoke($0, `i32.reinterpret_f32`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", -6291456)], +); + +// ./test/core/conversions.wast:660 +assert_return(() => invoke($0, `i64.reinterpret_f64`, [value("f64", 0)]), [value("i64", 0n)]); + +// ./test/core/conversions.wast:661 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [value("f64", -0)]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/conversions.wast:662 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", 1n)], +); + +// ./test/core/conversions.wast:663 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + bytes("f64", [0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i64", -1n)], +); + +// ./test/core/conversions.wast:664 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i64", -9223372036854775807n)], +); + +// ./test/core/conversions.wast:665 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [value("f64", 1)]), + [value("i64", 4607182418800017408n)], +); + +// ./test/core/conversions.wast:666 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [value("f64", 3.14159265358979)]), + [value("i64", 4614256656552045841n)], +); + +// ./test/core/conversions.wast:667 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i64", 9218868437227405311n)], +); + +// ./test/core/conversions.wast:668 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i64", -4503599627370497n)], +); + +// ./test/core/conversions.wast:669 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [value("f64", Infinity)]), + [value("i64", 9218868437227405312n)], +); + +// ./test/core/conversions.wast:670 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [value("f64", -Infinity)]), + [value("i64", -4503599627370496n)], +); + +// ./test/core/conversions.wast:671 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/conversions.wast:672 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i64", -2251799813685248n)], +); + +// ./test/core/conversions.wast:673 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i64", 9219994337134247936n)], +); + +// ./test/core/conversions.wast:674 +assert_return( + () => invoke($0, `i64.reinterpret_f64`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i64", -3377699720527872n)], +); + +// ./test/core/conversions.wast:678 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.wrap_i64 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:679 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.trunc_f32_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:680 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.trunc_f32_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:681 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.trunc_f64_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:682 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.trunc_f64_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:683 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.reinterpret_f32 (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:684 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.extend_i32_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:685 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.extend_i32_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:686 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.trunc_f32_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:687 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.trunc_f32_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:688 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.trunc_f64_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:689 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.trunc_f64_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:690 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.reinterpret_f64 (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:691 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.convert_i32_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:692 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.convert_i32_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:693 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.convert_i64_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:694 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.convert_i64_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:695 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.demote_f64 (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:696 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.reinterpret_i32 (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:697 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.convert_i32_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:698 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.convert_i32_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:699 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.convert_i64_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:700 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.convert_i64_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:701 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.promote_f32 (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/conversions.wast:702 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.reinterpret_i64 (i32.const 0))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/custom.wast.js b/js/src/jit-test/tests/wasm/spec/spec/custom.wast.js new file mode 100644 index 0000000000..c2883feba5 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/custom.wast.js @@ -0,0 +1,157 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/custom.wast + +// ./test/core/custom.wast:1 +let $0 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\00\\24\\10" "a custom section" "this is the payload" + "\\00\\20\\10" "a custom section" "this is payload" + "\\00\\11\\10" "a custom section" "" + "\\00\\10\\00" "" "this is payload" + "\\00\\01\\00" "" "" + "\\00\\24\\10" "\\00\\00custom sectio\\00" "this is the payload" + "\\00\\24\\10" "\\ef\\bb\\bfa custom sect" "this is the payload" + "\\00\\24\\10" "a custom sect\\e2\\8c\\a3" "this is the payload" + "\\00\\1f\\16" "module within a module" "\\00asm" "\\01\\00\\00\\00" +)`); + +// ./test/core/custom.wast:14 +let $1 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\01\\01\\00" ;; type section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\02\\01\\00" ;; import section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\03\\01\\00" ;; function section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\04\\01\\00" ;; table section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\05\\01\\00" ;; memory section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\06\\01\\00" ;; global section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\07\\01\\00" ;; export section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\09\\01\\00" ;; element section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\0a\\01\\00" ;; code section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" + "\\0b\\01\\00" ;; data section + "\\00\\0e\\06" "custom" "payload" + "\\00\\0e\\06" "custom" "payload" +)`); + +// ./test/core/custom.wast:50 +let $2 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01\\07\\01\\60\\02\\7f\\7f\\01\\7f" ;; type section + "\\00\\1a\\06" "custom" "this is the payload" ;; custom section + "\\03\\02\\01\\00" ;; function section + "\\07\\0a\\01\\06\\61\\64\\64\\54\\77\\6f\\00\\00" ;; export section + "\\0a\\09\\01\\07\\00\\20\\00\\20\\01\\6a\\0b" ;; code section + "\\00\\1b\\07" "custom2" "this is the payload" ;; custom section +)`); + +// ./test/core/custom.wast:60 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\00" + )`), + `unexpected end`, +); + +// ./test/core/custom.wast:68 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\00\\00" + )`), + `unexpected end`, +); + +// ./test/core/custom.wast:76 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\00\\00\\00\\05\\01\\00\\07\\00\\00" + )`), + `unexpected end`, +); + +// ./test/core/custom.wast:84 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\00\\26\\10" "a custom section" "this is the payload" + )`), + `length out of bounds`, +); + +// ./test/core/custom.wast:92 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\00\\25\\10" "a custom section" "this is the payload" + "\\00\\24\\10" "a custom section" "this is the payload" + )`), + `malformed section id`, +); + +// ./test/core/custom.wast:101 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01\\07\\01\\60\\02\\7f\\7f\\01\\7f" ;; type section + "\\00\\25\\10" "a custom section" "this is the payload" ;; wrong length! + "\\03\\02\\01\\00" ;; function section + "\\0a\\09\\01\\07\\00\\20\\00\\20\\01\\6a\\0b" ;; code section + "\\00\\1b\\07" "custom2" "this is the payload" ;; custom section + )`), + `function and code section have inconsistent lengths`, +); + +// ./test/core/custom.wast:114 +assert_malformed( + () => instantiate(`(module binary + "\\00asm\\01\\00\\00\\00" + "\\00asm\\01\\00\\00\\00" + )`), + `length out of bounds`, +); + +// ./test/core/custom.wast:122 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\05\\03\\01\\00\\01" ;; memory section + "\\0c\\01\\02" ;; data count section (2 segments) + "\\0b\\06\\01\\00\\41\\00\\0b\\00" ;; data section (1 segment) + )`), + `data count and data section have inconsistent lengths`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/directives.txt b/js/src/jit-test/tests/wasm/spec/spec/directives.txt new file mode 100644 index 0000000000..9fa4f75347 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; test-also=--no-avx; skip-variant-if: --no-avx, !getBuildConfiguration('x86') && !getBuildConfiguration('x64') || getBuildConfiguration('simulator') \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/spec/endianness.wast.js b/js/src/jit-test/tests/wasm/spec/spec/endianness.wast.js new file mode 100644 index 0000000000..e408d9e677 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/endianness.wast.js @@ -0,0 +1,385 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/endianness.wast + +// ./test/core/endianness.wast:1 +let $0 = instantiate(`(module + (memory 1) + + ;; Stores an i16 value in little-endian-format + (func $$i16_store_little (param $$address i32) (param $$value i32) + (i32.store8 (local.get $$address) (local.get $$value)) + (i32.store8 (i32.add (local.get $$address) (i32.const 1)) (i32.shr_u (local.get $$value) (i32.const 8))) + ) + + ;; Stores an i32 value in little-endian format + (func $$i32_store_little (param $$address i32) (param $$value i32) + (call $$i16_store_little (local.get $$address) (local.get $$value)) + (call $$i16_store_little (i32.add (local.get $$address) (i32.const 2)) (i32.shr_u (local.get $$value) (i32.const 16))) + ) + + ;; Stores an i64 value in little-endian format + (func $$i64_store_little (param $$address i32) (param $$value i64) + (call $$i32_store_little (local.get $$address) (i32.wrap_i64 (local.get $$value))) + (call $$i32_store_little (i32.add (local.get $$address) (i32.const 4)) (i32.wrap_i64 (i64.shr_u (local.get $$value) (i64.const 32)))) + ) + + ;; Loads an i16 value in little-endian format + (func $$i16_load_little (param $$address i32) (result i32) + (i32.or + (i32.load8_u (local.get $$address)) + (i32.shl (i32.load8_u (i32.add (local.get $$address) (i32.const 1))) (i32.const 8)) + ) + ) + + ;; Loads an i32 value in little-endian format + (func $$i32_load_little (param $$address i32) (result i32) + (i32.or + (call $$i16_load_little (local.get $$address)) + (i32.shl (call $$i16_load_little (i32.add (local.get $$address) (i32.const 2))) (i32.const 16)) + ) + ) + + ;; Loads an i64 value in little-endian format + (func $$i64_load_little (param $$address i32) (result i64) + (i64.or + (i64.extend_i32_u (call $$i32_load_little (local.get $$address))) + (i64.shl (i64.extend_i32_u (call $$i32_load_little (i32.add (local.get $$address) (i32.const 4)))) (i64.const 32)) + ) + ) + + (func (export "i32_load16_s") (param $$value i32) (result i32) + (call $$i16_store_little (i32.const 0) (local.get $$value)) + (i32.load16_s (i32.const 0)) + ) + + (func (export "i32_load16_u") (param $$value i32) (result i32) + (call $$i16_store_little (i32.const 0) (local.get $$value)) + (i32.load16_u (i32.const 0)) + ) + + (func (export "i32_load") (param $$value i32) (result i32) + (call $$i32_store_little (i32.const 0) (local.get $$value)) + (i32.load (i32.const 0)) + ) + + (func (export "i64_load16_s") (param $$value i64) (result i64) + (call $$i16_store_little (i32.const 0) (i32.wrap_i64 (local.get $$value))) + (i64.load16_s (i32.const 0)) + ) + + (func (export "i64_load16_u") (param $$value i64) (result i64) + (call $$i16_store_little (i32.const 0) (i32.wrap_i64 (local.get $$value))) + (i64.load16_u (i32.const 0)) + ) + + (func (export "i64_load32_s") (param $$value i64) (result i64) + (call $$i32_store_little (i32.const 0) (i32.wrap_i64 (local.get $$value))) + (i64.load32_s (i32.const 0)) + ) + + (func (export "i64_load32_u") (param $$value i64) (result i64) + (call $$i32_store_little (i32.const 0) (i32.wrap_i64 (local.get $$value))) + (i64.load32_u (i32.const 0)) + ) + + (func (export "i64_load") (param $$value i64) (result i64) + (call $$i64_store_little (i32.const 0) (local.get $$value)) + (i64.load (i32.const 0)) + ) + + (func (export "f32_load") (param $$value f32) (result f32) + (call $$i32_store_little (i32.const 0) (i32.reinterpret_f32 (local.get $$value))) + (f32.load (i32.const 0)) + ) + + (func (export "f64_load") (param $$value f64) (result f64) + (call $$i64_store_little (i32.const 0) (i64.reinterpret_f64 (local.get $$value))) + (f64.load (i32.const 0)) + ) + + + (func (export "i32_store16") (param $$value i32) (result i32) + (i32.store16 (i32.const 0) (local.get $$value)) + (call $$i16_load_little (i32.const 0)) + ) + + (func (export "i32_store") (param $$value i32) (result i32) + (i32.store (i32.const 0) (local.get $$value)) + (call $$i32_load_little (i32.const 0)) + ) + + (func (export "i64_store16") (param $$value i64) (result i64) + (i64.store16 (i32.const 0) (local.get $$value)) + (i64.extend_i32_u (call $$i16_load_little (i32.const 0))) + ) + + (func (export "i64_store32") (param $$value i64) (result i64) + (i64.store32 (i32.const 0) (local.get $$value)) + (i64.extend_i32_u (call $$i32_load_little (i32.const 0))) + ) + + (func (export "i64_store") (param $$value i64) (result i64) + (i64.store (i32.const 0) (local.get $$value)) + (call $$i64_load_little (i32.const 0)) + ) + + (func (export "f32_store") (param $$value f32) (result f32) + (f32.store (i32.const 0) (local.get $$value)) + (f32.reinterpret_i32 (call $$i32_load_little (i32.const 0))) + ) + + (func (export "f64_store") (param $$value f64) (result f64) + (f64.store (i32.const 0) (local.get $$value)) + (f64.reinterpret_i64 (call $$i64_load_little (i32.const 0))) + ) +)`); + +// ./test/core/endianness.wast:133 +assert_return(() => invoke($0, `i32_load16_s`, [-1]), [value("i32", -1)]); + +// ./test/core/endianness.wast:134 +assert_return(() => invoke($0, `i32_load16_s`, [-4242]), [value("i32", -4242)]); + +// ./test/core/endianness.wast:135 +assert_return(() => invoke($0, `i32_load16_s`, [42]), [value("i32", 42)]); + +// ./test/core/endianness.wast:136 +assert_return(() => invoke($0, `i32_load16_s`, [12816]), [value("i32", 12816)]); + +// ./test/core/endianness.wast:138 +assert_return(() => invoke($0, `i32_load16_u`, [-1]), [value("i32", 65535)]); + +// ./test/core/endianness.wast:139 +assert_return(() => invoke($0, `i32_load16_u`, [-4242]), [value("i32", 61294)]); + +// ./test/core/endianness.wast:140 +assert_return(() => invoke($0, `i32_load16_u`, [42]), [value("i32", 42)]); + +// ./test/core/endianness.wast:141 +assert_return(() => invoke($0, `i32_load16_u`, [51966]), [value("i32", 51966)]); + +// ./test/core/endianness.wast:143 +assert_return(() => invoke($0, `i32_load`, [-1]), [value("i32", -1)]); + +// ./test/core/endianness.wast:144 +assert_return(() => invoke($0, `i32_load`, [-42424242]), [value("i32", -42424242)]); + +// ./test/core/endianness.wast:145 +assert_return(() => invoke($0, `i32_load`, [42424242]), [value("i32", 42424242)]); + +// ./test/core/endianness.wast:146 +assert_return(() => invoke($0, `i32_load`, [-1414717974]), [value("i32", -1414717974)]); + +// ./test/core/endianness.wast:148 +assert_return(() => invoke($0, `i64_load16_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/endianness.wast:149 +assert_return(() => invoke($0, `i64_load16_s`, [-4242n]), [value("i64", -4242n)]); + +// ./test/core/endianness.wast:150 +assert_return(() => invoke($0, `i64_load16_s`, [42n]), [value("i64", 42n)]); + +// ./test/core/endianness.wast:151 +assert_return(() => invoke($0, `i64_load16_s`, [12816n]), [value("i64", 12816n)]); + +// ./test/core/endianness.wast:153 +assert_return(() => invoke($0, `i64_load16_u`, [-1n]), [value("i64", 65535n)]); + +// ./test/core/endianness.wast:154 +assert_return(() => invoke($0, `i64_load16_u`, [-4242n]), [value("i64", 61294n)]); + +// ./test/core/endianness.wast:155 +assert_return(() => invoke($0, `i64_load16_u`, [42n]), [value("i64", 42n)]); + +// ./test/core/endianness.wast:156 +assert_return(() => invoke($0, `i64_load16_u`, [51966n]), [value("i64", 51966n)]); + +// ./test/core/endianness.wast:158 +assert_return(() => invoke($0, `i64_load32_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/endianness.wast:159 +assert_return(() => invoke($0, `i64_load32_s`, [-42424242n]), [value("i64", -42424242n)]); + +// ./test/core/endianness.wast:160 +assert_return(() => invoke($0, `i64_load32_s`, [42424242n]), [value("i64", 42424242n)]); + +// ./test/core/endianness.wast:161 +assert_return(() => invoke($0, `i64_load32_s`, [305419896n]), [value("i64", 305419896n)]); + +// ./test/core/endianness.wast:163 +assert_return(() => invoke($0, `i64_load32_u`, [-1n]), [value("i64", 4294967295n)]); + +// ./test/core/endianness.wast:164 +assert_return(() => invoke($0, `i64_load32_u`, [-42424242n]), [value("i64", 4252543054n)]); + +// ./test/core/endianness.wast:165 +assert_return(() => invoke($0, `i64_load32_u`, [42424242n]), [value("i64", 42424242n)]); + +// ./test/core/endianness.wast:166 +assert_return(() => invoke($0, `i64_load32_u`, [2880249322n]), [value("i64", 2880249322n)]); + +// ./test/core/endianness.wast:168 +assert_return(() => invoke($0, `i64_load`, [-1n]), [value("i64", -1n)]); + +// ./test/core/endianness.wast:169 +assert_return(() => invoke($0, `i64_load`, [-42424242n]), [value("i64", -42424242n)]); + +// ./test/core/endianness.wast:170 +assert_return(() => invoke($0, `i64_load`, [2880249322n]), [value("i64", 2880249322n)]); + +// ./test/core/endianness.wast:171 +assert_return( + () => invoke($0, `i64_load`, [-6075977126246539798n]), + [value("i64", -6075977126246539798n)], +); + +// ./test/core/endianness.wast:173 +assert_return(() => invoke($0, `f32_load`, [value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/endianness.wast:174 +assert_return(() => invoke($0, `f32_load`, [value("f32", 0.01234)]), [value("f32", 0.01234)]); + +// ./test/core/endianness.wast:175 +assert_return(() => invoke($0, `f32_load`, [value("f32", 4242.4243)]), [value("f32", 4242.4243)]); + +// ./test/core/endianness.wast:176 +assert_return( + () => invoke($0, `f32_load`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/endianness.wast:178 +assert_return(() => invoke($0, `f64_load`, [value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/endianness.wast:179 +assert_return(() => invoke($0, `f64_load`, [value("f64", 1234.56789)]), [value("f64", 1234.56789)]); + +// ./test/core/endianness.wast:180 +assert_return( + () => invoke($0, `f64_load`, [value("f64", 424242.424242)]), + [value("f64", 424242.424242)], +); + +// ./test/core/endianness.wast:181 +assert_return( + () => invoke($0, `f64_load`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/endianness.wast:184 +assert_return(() => invoke($0, `i32_store16`, [-1]), [value("i32", 65535)]); + +// ./test/core/endianness.wast:185 +assert_return(() => invoke($0, `i32_store16`, [-4242]), [value("i32", 61294)]); + +// ./test/core/endianness.wast:186 +assert_return(() => invoke($0, `i32_store16`, [42]), [value("i32", 42)]); + +// ./test/core/endianness.wast:187 +assert_return(() => invoke($0, `i32_store16`, [51966]), [value("i32", 51966)]); + +// ./test/core/endianness.wast:189 +assert_return(() => invoke($0, `i32_store`, [-1]), [value("i32", -1)]); + +// ./test/core/endianness.wast:190 +assert_return(() => invoke($0, `i32_store`, [-4242]), [value("i32", -4242)]); + +// ./test/core/endianness.wast:191 +assert_return(() => invoke($0, `i32_store`, [42424242]), [value("i32", 42424242)]); + +// ./test/core/endianness.wast:192 +assert_return(() => invoke($0, `i32_store`, [-559035650]), [value("i32", -559035650)]); + +// ./test/core/endianness.wast:194 +assert_return(() => invoke($0, `i64_store16`, [-1n]), [value("i64", 65535n)]); + +// ./test/core/endianness.wast:195 +assert_return(() => invoke($0, `i64_store16`, [-4242n]), [value("i64", 61294n)]); + +// ./test/core/endianness.wast:196 +assert_return(() => invoke($0, `i64_store16`, [42n]), [value("i64", 42n)]); + +// ./test/core/endianness.wast:197 +assert_return(() => invoke($0, `i64_store16`, [51966n]), [value("i64", 51966n)]); + +// ./test/core/endianness.wast:199 +assert_return(() => invoke($0, `i64_store32`, [-1n]), [value("i64", 4294967295n)]); + +// ./test/core/endianness.wast:200 +assert_return(() => invoke($0, `i64_store32`, [-4242n]), [value("i64", 4294963054n)]); + +// ./test/core/endianness.wast:201 +assert_return(() => invoke($0, `i64_store32`, [42424242n]), [value("i64", 42424242n)]); + +// ./test/core/endianness.wast:202 +assert_return(() => invoke($0, `i64_store32`, [3735931646n]), [value("i64", 3735931646n)]); + +// ./test/core/endianness.wast:204 +assert_return(() => invoke($0, `i64_store`, [-1n]), [value("i64", -1n)]); + +// ./test/core/endianness.wast:205 +assert_return(() => invoke($0, `i64_store`, [-42424242n]), [value("i64", -42424242n)]); + +// ./test/core/endianness.wast:206 +assert_return(() => invoke($0, `i64_store`, [2880249322n]), [value("i64", 2880249322n)]); + +// ./test/core/endianness.wast:207 +assert_return( + () => invoke($0, `i64_store`, [-6075977126246539798n]), + [value("i64", -6075977126246539798n)], +); + +// ./test/core/endianness.wast:209 +assert_return(() => invoke($0, `f32_store`, [value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/endianness.wast:210 +assert_return(() => invoke($0, `f32_store`, [value("f32", 0.01234)]), [value("f32", 0.01234)]); + +// ./test/core/endianness.wast:211 +assert_return(() => invoke($0, `f32_store`, [value("f32", 4242.4243)]), [value("f32", 4242.4243)]); + +// ./test/core/endianness.wast:212 +assert_return( + () => invoke($0, `f32_store`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/endianness.wast:214 +assert_return(() => invoke($0, `f64_store`, [value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/endianness.wast:215 +assert_return(() => invoke($0, `f64_store`, [value("f64", 1234.56789)]), [value("f64", 1234.56789)]); + +// ./test/core/endianness.wast:216 +assert_return( + () => invoke($0, `f64_store`, [value("f64", 424242.424242)]), + [value("f64", 424242.424242)], +); + +// ./test/core/endianness.wast:217 +assert_return( + () => invoke($0, `f64_store`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/f32.wast.js b/js/src/jit-test/tests/wasm/spec/spec/f32.wast.js new file mode 100644 index 0000000000..c80cfd6421 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/f32.wast.js @@ -0,0 +1,18629 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/f32.wast + +// ./test/core/f32.wast:5 +let $0 = instantiate(`(module + (func (export "add") (param $$x f32) (param $$y f32) (result f32) (f32.add (local.get $$x) (local.get $$y))) + (func (export "sub") (param $$x f32) (param $$y f32) (result f32) (f32.sub (local.get $$x) (local.get $$y))) + (func (export "mul") (param $$x f32) (param $$y f32) (result f32) (f32.mul (local.get $$x) (local.get $$y))) + (func (export "div") (param $$x f32) (param $$y f32) (result f32) (f32.div (local.get $$x) (local.get $$y))) + (func (export "sqrt") (param $$x f32) (result f32) (f32.sqrt (local.get $$x))) + (func (export "min") (param $$x f32) (param $$y f32) (result f32) (f32.min (local.get $$x) (local.get $$y))) + (func (export "max") (param $$x f32) (param $$y f32) (result f32) (f32.max (local.get $$x) (local.get $$y))) + (func (export "ceil") (param $$x f32) (result f32) (f32.ceil (local.get $$x))) + (func (export "floor") (param $$x f32) (result f32) (f32.floor (local.get $$x))) + (func (export "trunc") (param $$x f32) (result f32) (f32.trunc (local.get $$x))) + (func (export "nearest") (param $$x f32) (result f32) (f32.nearest (local.get $$x))) +)`); + +// ./test/core/f32.wast:19 +assert_return(() => invoke($0, `add`, [value("f32", -0), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:20 +assert_return(() => invoke($0, `add`, [value("f32", -0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:21 +assert_return(() => invoke($0, `add`, [value("f32", 0), value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:22 +assert_return(() => invoke($0, `add`, [value("f32", 0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:23 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:24 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:25 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:26 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:27 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:28 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:29 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:30 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:31 +assert_return(() => invoke($0, `add`, [value("f32", -0), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:32 +assert_return(() => invoke($0, `add`, [value("f32", -0), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:33 +assert_return(() => invoke($0, `add`, [value("f32", 0), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:34 +assert_return(() => invoke($0, `add`, [value("f32", 0), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:35 +assert_return(() => invoke($0, `add`, [value("f32", -0), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:36 +assert_return(() => invoke($0, `add`, [value("f32", -0), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:37 +assert_return(() => invoke($0, `add`, [value("f32", 0), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:38 +assert_return(() => invoke($0, `add`, [value("f32", 0), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:39 +assert_return( + () => invoke($0, `add`, [value("f32", -0), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:40 +assert_return( + () => invoke($0, `add`, [value("f32", -0), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:41 +assert_return( + () => invoke($0, `add`, [value("f32", 0), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:42 +assert_return( + () => invoke($0, `add`, [value("f32", 0), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:43 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:44 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:45 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:46 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:47 +assert_return( + () => invoke($0, `add`, [value("f32", -0), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:48 +assert_return( + () => invoke($0, `add`, [value("f32", -0), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:49 +assert_return( + () => invoke($0, `add`, [value("f32", 0), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:50 +assert_return( + () => invoke($0, `add`, [value("f32", 0), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:51 +assert_return( + () => invoke($0, `add`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:52 +assert_return( + () => invoke($0, `add`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:53 +assert_return( + () => invoke($0, `add`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:54 +assert_return( + () => invoke($0, `add`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:55 +assert_return( + () => invoke($0, `add`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:56 +assert_return( + () => invoke($0, `add`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:57 +assert_return( + () => invoke($0, `add`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:58 +assert_return( + () => invoke($0, `add`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:59 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:60 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:61 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:62 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:63 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/f32.wast:64 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:65 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:66 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/f32.wast:67 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754945)], +); + +// ./test/core/f32.wast:68 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/f32.wast:69 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/f32.wast:70 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754945)], +); + +// ./test/core/f32.wast:71 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:72 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:73 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:74 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:75 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:76 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:77 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:78 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:79 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:80 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:81 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:82 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:83 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:84 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:85 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:86 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:87 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:88 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:89 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:90 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:91 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:92 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:93 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:94 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:95 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:96 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:97 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:98 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:99 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:100 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:101 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:102 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:103 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000011754945)], +); + +// ./test/core/f32.wast:104 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/f32.wast:105 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/f32.wast:106 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000011754945)], +); + +// ./test/core/f32.wast:107 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/f32.wast:108 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:109 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:110 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/f32.wast:111 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:112 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:113 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:114 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:115 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:116 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:117 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:118 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:119 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:120 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:121 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:122 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:123 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:124 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:125 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:126 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:127 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:128 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:129 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:130 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:131 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:132 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:133 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:134 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:135 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:136 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:137 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:138 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:139 +assert_return(() => invoke($0, `add`, [value("f32", -0.5), value("f32", -0)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:140 +assert_return(() => invoke($0, `add`, [value("f32", -0.5), value("f32", 0)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:141 +assert_return(() => invoke($0, `add`, [value("f32", 0.5), value("f32", -0)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:142 +assert_return(() => invoke($0, `add`, [value("f32", 0.5), value("f32", 0)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:143 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:144 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:145 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:146 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:147 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:148 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:149 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:150 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:151 +assert_return(() => invoke($0, `add`, [value("f32", -0.5), value("f32", -0.5)]), [value("f32", -1)]); + +// ./test/core/f32.wast:152 +assert_return(() => invoke($0, `add`, [value("f32", -0.5), value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:153 +assert_return(() => invoke($0, `add`, [value("f32", 0.5), value("f32", -0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:154 +assert_return(() => invoke($0, `add`, [value("f32", 0.5), value("f32", 0.5)]), [value("f32", 1)]); + +// ./test/core/f32.wast:155 +assert_return(() => invoke($0, `add`, [value("f32", -0.5), value("f32", -1)]), [value("f32", -1.5)]); + +// ./test/core/f32.wast:156 +assert_return(() => invoke($0, `add`, [value("f32", -0.5), value("f32", 1)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:157 +assert_return(() => invoke($0, `add`, [value("f32", 0.5), value("f32", -1)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:158 +assert_return(() => invoke($0, `add`, [value("f32", 0.5), value("f32", 1)]), [value("f32", 1.5)]); + +// ./test/core/f32.wast:159 +assert_return( + () => invoke($0, `add`, [value("f32", -0.5), value("f32", -6.2831855)]), + [value("f32", -6.7831855)], +); + +// ./test/core/f32.wast:160 +assert_return( + () => invoke($0, `add`, [value("f32", -0.5), value("f32", 6.2831855)]), + [value("f32", 5.7831855)], +); + +// ./test/core/f32.wast:161 +assert_return( + () => invoke($0, `add`, [value("f32", 0.5), value("f32", -6.2831855)]), + [value("f32", -5.7831855)], +); + +// ./test/core/f32.wast:162 +assert_return( + () => invoke($0, `add`, [value("f32", 0.5), value("f32", 6.2831855)]), + [value("f32", 6.7831855)], +); + +// ./test/core/f32.wast:163 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:164 +assert_return( + () => invoke($0, `add`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:165 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:166 +assert_return( + () => invoke($0, `add`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:167 +assert_return( + () => invoke($0, `add`, [value("f32", -0.5), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:168 +assert_return( + () => invoke($0, `add`, [value("f32", -0.5), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:169 +assert_return( + () => invoke($0, `add`, [value("f32", 0.5), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:170 +assert_return( + () => invoke($0, `add`, [value("f32", 0.5), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:171 +assert_return( + () => invoke($0, `add`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:172 +assert_return( + () => invoke($0, `add`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:173 +assert_return( + () => invoke($0, `add`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:174 +assert_return( + () => invoke($0, `add`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:175 +assert_return( + () => invoke($0, `add`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:176 +assert_return( + () => invoke($0, `add`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:177 +assert_return( + () => invoke($0, `add`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:178 +assert_return( + () => invoke($0, `add`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:179 +assert_return(() => invoke($0, `add`, [value("f32", -1), value("f32", -0)]), [value("f32", -1)]); + +// ./test/core/f32.wast:180 +assert_return(() => invoke($0, `add`, [value("f32", -1), value("f32", 0)]), [value("f32", -1)]); + +// ./test/core/f32.wast:181 +assert_return(() => invoke($0, `add`, [value("f32", 1), value("f32", -0)]), [value("f32", 1)]); + +// ./test/core/f32.wast:182 +assert_return(() => invoke($0, `add`, [value("f32", 1), value("f32", 0)]), [value("f32", 1)]); + +// ./test/core/f32.wast:183 +assert_return( + () => invoke($0, `add`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:184 +assert_return( + () => invoke($0, `add`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:185 +assert_return( + () => invoke($0, `add`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:186 +assert_return( + () => invoke($0, `add`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:187 +assert_return( + () => invoke($0, `add`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:188 +assert_return( + () => invoke($0, `add`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:189 +assert_return( + () => invoke($0, `add`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:190 +assert_return( + () => invoke($0, `add`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:191 +assert_return(() => invoke($0, `add`, [value("f32", -1), value("f32", -0.5)]), [value("f32", -1.5)]); + +// ./test/core/f32.wast:192 +assert_return(() => invoke($0, `add`, [value("f32", -1), value("f32", 0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:193 +assert_return(() => invoke($0, `add`, [value("f32", 1), value("f32", -0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:194 +assert_return(() => invoke($0, `add`, [value("f32", 1), value("f32", 0.5)]), [value("f32", 1.5)]); + +// ./test/core/f32.wast:195 +assert_return(() => invoke($0, `add`, [value("f32", -1), value("f32", -1)]), [value("f32", -2)]); + +// ./test/core/f32.wast:196 +assert_return(() => invoke($0, `add`, [value("f32", -1), value("f32", 1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:197 +assert_return(() => invoke($0, `add`, [value("f32", 1), value("f32", -1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:198 +assert_return(() => invoke($0, `add`, [value("f32", 1), value("f32", 1)]), [value("f32", 2)]); + +// ./test/core/f32.wast:199 +assert_return( + () => invoke($0, `add`, [value("f32", -1), value("f32", -6.2831855)]), + [value("f32", -7.2831855)], +); + +// ./test/core/f32.wast:200 +assert_return( + () => invoke($0, `add`, [value("f32", -1), value("f32", 6.2831855)]), + [value("f32", 5.2831855)], +); + +// ./test/core/f32.wast:201 +assert_return( + () => invoke($0, `add`, [value("f32", 1), value("f32", -6.2831855)]), + [value("f32", -5.2831855)], +); + +// ./test/core/f32.wast:202 +assert_return( + () => invoke($0, `add`, [value("f32", 1), value("f32", 6.2831855)]), + [value("f32", 7.2831855)], +); + +// ./test/core/f32.wast:203 +assert_return( + () => invoke($0, `add`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:204 +assert_return( + () => invoke($0, `add`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:205 +assert_return( + () => invoke($0, `add`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:206 +assert_return( + () => invoke($0, `add`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:207 +assert_return( + () => invoke($0, `add`, [value("f32", -1), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:208 +assert_return( + () => invoke($0, `add`, [value("f32", -1), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:209 +assert_return( + () => invoke($0, `add`, [value("f32", 1), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:210 +assert_return( + () => invoke($0, `add`, [value("f32", 1), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:211 +assert_return( + () => invoke($0, `add`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:212 +assert_return( + () => invoke($0, `add`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:213 +assert_return( + () => invoke($0, `add`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:214 +assert_return( + () => invoke($0, `add`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:215 +assert_return( + () => invoke($0, `add`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:216 +assert_return( + () => invoke($0, `add`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:217 +assert_return( + () => invoke($0, `add`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:218 +assert_return( + () => invoke($0, `add`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:219 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", -0)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:220 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", 0)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:221 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", -0)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:222 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", 0)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:223 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:224 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:225 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:226 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:227 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:228 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:229 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:230 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:231 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", -0.5)]), + [value("f32", -6.7831855)], +); + +// ./test/core/f32.wast:232 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", 0.5)]), + [value("f32", -5.7831855)], +); + +// ./test/core/f32.wast:233 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", -0.5)]), + [value("f32", 5.7831855)], +); + +// ./test/core/f32.wast:234 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", 0.5)]), + [value("f32", 6.7831855)], +); + +// ./test/core/f32.wast:235 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", -1)]), + [value("f32", -7.2831855)], +); + +// ./test/core/f32.wast:236 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", 1)]), + [value("f32", -5.2831855)], +); + +// ./test/core/f32.wast:237 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", -1)]), + [value("f32", 5.2831855)], +); + +// ./test/core/f32.wast:238 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", 1)]), + [value("f32", 7.2831855)], +); + +// ./test/core/f32.wast:239 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("f32", -12.566371)], +); + +// ./test/core/f32.wast:240 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:241 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:242 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("f32", 12.566371)], +); + +// ./test/core/f32.wast:243 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:244 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:245 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:246 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:247 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:248 +assert_return( + () => invoke($0, `add`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:249 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:250 +assert_return( + () => invoke($0, `add`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:251 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:252 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:253 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:254 +assert_return( + () => invoke($0, `add`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:255 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:256 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:257 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:258 +assert_return( + () => invoke($0, `add`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:259 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:260 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:261 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:262 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:263 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:264 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:265 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:266 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:267 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:268 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:269 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:270 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:271 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:272 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:273 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:274 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:275 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:276 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:277 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:278 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:279 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:280 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:281 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:282 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:283 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:284 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:285 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:286 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:287 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:288 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:289 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:290 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:291 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:292 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:293 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:294 +assert_return( + () => invoke($0, `add`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:295 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:296 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:297 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:298 +assert_return( + () => invoke($0, `add`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:299 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", -0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:300 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", 0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:301 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", -0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:302 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", 0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:303 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:304 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:305 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:306 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:307 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:308 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:309 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:310 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:311 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", -0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:312 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", 0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:313 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", -0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:314 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", 0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:315 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", -1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:316 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", 1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:317 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", -1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:318 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", 1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:319 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:320 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:321 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:322 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:323 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:324 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:325 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:326 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:327 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:328 +assert_return( + () => invoke($0, `add`, [value("f32", -Infinity), value("f32", Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:329 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", -Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:330 +assert_return( + () => invoke($0, `add`, [value("f32", Infinity), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:331 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:332 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:333 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:334 +assert_return( + () => invoke($0, `add`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:335 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:336 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:337 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:338 +assert_return( + () => invoke($0, `add`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:339 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:340 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:341 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:342 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:343 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:344 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:345 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:346 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:347 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:348 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:349 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:350 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:351 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:352 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:353 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:354 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:355 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:356 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:357 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:358 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:359 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:360 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:361 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:362 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:363 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:364 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:365 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:366 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:367 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:368 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:369 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:370 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:371 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:372 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:373 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:374 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:375 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:376 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:377 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:378 +assert_return( + () => invoke($0, `add`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:379 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:380 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:381 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:382 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:383 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:384 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:385 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:386 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:387 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:388 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:389 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:390 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:391 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:392 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:393 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:394 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:395 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:396 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:397 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:398 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:399 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:400 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:401 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:402 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:403 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:404 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:405 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:406 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:407 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:408 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:409 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:410 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:411 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:412 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:413 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:414 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:415 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:416 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:417 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:418 +assert_return( + () => invoke($0, `add`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:419 +assert_return(() => invoke($0, `sub`, [value("f32", -0), value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:420 +assert_return(() => invoke($0, `sub`, [value("f32", -0), value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:421 +assert_return(() => invoke($0, `sub`, [value("f32", 0), value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:422 +assert_return(() => invoke($0, `sub`, [value("f32", 0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:423 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:424 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:425 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:426 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:427 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:428 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:429 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:430 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:431 +assert_return(() => invoke($0, `sub`, [value("f32", -0), value("f32", -0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:432 +assert_return(() => invoke($0, `sub`, [value("f32", -0), value("f32", 0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:433 +assert_return(() => invoke($0, `sub`, [value("f32", 0), value("f32", -0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:434 +assert_return(() => invoke($0, `sub`, [value("f32", 0), value("f32", 0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:435 +assert_return(() => invoke($0, `sub`, [value("f32", -0), value("f32", -1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:436 +assert_return(() => invoke($0, `sub`, [value("f32", -0), value("f32", 1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:437 +assert_return(() => invoke($0, `sub`, [value("f32", 0), value("f32", -1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:438 +assert_return(() => invoke($0, `sub`, [value("f32", 0), value("f32", 1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:439 +assert_return( + () => invoke($0, `sub`, [value("f32", -0), value("f32", -6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:440 +assert_return( + () => invoke($0, `sub`, [value("f32", -0), value("f32", 6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:441 +assert_return( + () => invoke($0, `sub`, [value("f32", 0), value("f32", -6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:442 +assert_return( + () => invoke($0, `sub`, [value("f32", 0), value("f32", 6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:443 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:444 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:445 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:446 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:447 +assert_return( + () => invoke($0, `sub`, [value("f32", -0), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:448 +assert_return( + () => invoke($0, `sub`, [value("f32", -0), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:449 +assert_return( + () => invoke($0, `sub`, [value("f32", 0), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:450 +assert_return( + () => invoke($0, `sub`, [value("f32", 0), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:451 +assert_return( + () => invoke($0, `sub`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:452 +assert_return( + () => invoke($0, `sub`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:453 +assert_return( + () => invoke($0, `sub`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:454 +assert_return( + () => invoke($0, `sub`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:455 +assert_return( + () => invoke($0, `sub`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:456 +assert_return( + () => invoke($0, `sub`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:457 +assert_return( + () => invoke($0, `sub`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:458 +assert_return( + () => invoke($0, `sub`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:459 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:460 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:461 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:462 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:463 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:464 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/f32.wast:465 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/f32.wast:466 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:467 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/f32.wast:468 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754945)], +); + +// ./test/core/f32.wast:469 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754945)], +); + +// ./test/core/f32.wast:470 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/f32.wast:471 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:472 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:473 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:474 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:475 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:476 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:477 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:478 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:479 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:480 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:481 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:482 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:483 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:484 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:485 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:486 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:487 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:488 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:489 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:490 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:491 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:492 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:493 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:494 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:495 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:496 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:497 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:498 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:499 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:500 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:501 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:502 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:503 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/f32.wast:504 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000011754945)], +); + +// ./test/core/f32.wast:505 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000011754945)], +); + +// ./test/core/f32.wast:506 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/f32.wast:507 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:508 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/f32.wast:509 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/f32.wast:510 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:511 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:512 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:513 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:514 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:515 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:516 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:517 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:518 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:519 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:520 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:521 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:522 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:523 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:524 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:525 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:526 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:527 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:528 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:529 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:530 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:531 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:532 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:533 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:534 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:535 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:536 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:537 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:538 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:539 +assert_return(() => invoke($0, `sub`, [value("f32", -0.5), value("f32", -0)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:540 +assert_return(() => invoke($0, `sub`, [value("f32", -0.5), value("f32", 0)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:541 +assert_return(() => invoke($0, `sub`, [value("f32", 0.5), value("f32", -0)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:542 +assert_return(() => invoke($0, `sub`, [value("f32", 0.5), value("f32", 0)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:543 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:544 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:545 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:546 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:547 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:548 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:549 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:550 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:551 +assert_return(() => invoke($0, `sub`, [value("f32", -0.5), value("f32", -0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:552 +assert_return(() => invoke($0, `sub`, [value("f32", -0.5), value("f32", 0.5)]), [value("f32", -1)]); + +// ./test/core/f32.wast:553 +assert_return(() => invoke($0, `sub`, [value("f32", 0.5), value("f32", -0.5)]), [value("f32", 1)]); + +// ./test/core/f32.wast:554 +assert_return(() => invoke($0, `sub`, [value("f32", 0.5), value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:555 +assert_return(() => invoke($0, `sub`, [value("f32", -0.5), value("f32", -1)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:556 +assert_return(() => invoke($0, `sub`, [value("f32", -0.5), value("f32", 1)]), [value("f32", -1.5)]); + +// ./test/core/f32.wast:557 +assert_return(() => invoke($0, `sub`, [value("f32", 0.5), value("f32", -1)]), [value("f32", 1.5)]); + +// ./test/core/f32.wast:558 +assert_return(() => invoke($0, `sub`, [value("f32", 0.5), value("f32", 1)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:559 +assert_return( + () => invoke($0, `sub`, [value("f32", -0.5), value("f32", -6.2831855)]), + [value("f32", 5.7831855)], +); + +// ./test/core/f32.wast:560 +assert_return( + () => invoke($0, `sub`, [value("f32", -0.5), value("f32", 6.2831855)]), + [value("f32", -6.7831855)], +); + +// ./test/core/f32.wast:561 +assert_return( + () => invoke($0, `sub`, [value("f32", 0.5), value("f32", -6.2831855)]), + [value("f32", 6.7831855)], +); + +// ./test/core/f32.wast:562 +assert_return( + () => invoke($0, `sub`, [value("f32", 0.5), value("f32", 6.2831855)]), + [value("f32", -5.7831855)], +); + +// ./test/core/f32.wast:563 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:564 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:565 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:566 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:567 +assert_return( + () => invoke($0, `sub`, [value("f32", -0.5), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:568 +assert_return( + () => invoke($0, `sub`, [value("f32", -0.5), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:569 +assert_return( + () => invoke($0, `sub`, [value("f32", 0.5), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:570 +assert_return( + () => invoke($0, `sub`, [value("f32", 0.5), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:571 +assert_return( + () => invoke($0, `sub`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:572 +assert_return( + () => invoke($0, `sub`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:573 +assert_return( + () => invoke($0, `sub`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:574 +assert_return( + () => invoke($0, `sub`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:575 +assert_return( + () => invoke($0, `sub`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:576 +assert_return( + () => invoke($0, `sub`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:577 +assert_return( + () => invoke($0, `sub`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:578 +assert_return( + () => invoke($0, `sub`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:579 +assert_return(() => invoke($0, `sub`, [value("f32", -1), value("f32", -0)]), [value("f32", -1)]); + +// ./test/core/f32.wast:580 +assert_return(() => invoke($0, `sub`, [value("f32", -1), value("f32", 0)]), [value("f32", -1)]); + +// ./test/core/f32.wast:581 +assert_return(() => invoke($0, `sub`, [value("f32", 1), value("f32", -0)]), [value("f32", 1)]); + +// ./test/core/f32.wast:582 +assert_return(() => invoke($0, `sub`, [value("f32", 1), value("f32", 0)]), [value("f32", 1)]); + +// ./test/core/f32.wast:583 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:584 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:585 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:586 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:587 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:588 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:589 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:590 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:591 +assert_return(() => invoke($0, `sub`, [value("f32", -1), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:592 +assert_return(() => invoke($0, `sub`, [value("f32", -1), value("f32", 0.5)]), [value("f32", -1.5)]); + +// ./test/core/f32.wast:593 +assert_return(() => invoke($0, `sub`, [value("f32", 1), value("f32", -0.5)]), [value("f32", 1.5)]); + +// ./test/core/f32.wast:594 +assert_return(() => invoke($0, `sub`, [value("f32", 1), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:595 +assert_return(() => invoke($0, `sub`, [value("f32", -1), value("f32", -1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:596 +assert_return(() => invoke($0, `sub`, [value("f32", -1), value("f32", 1)]), [value("f32", -2)]); + +// ./test/core/f32.wast:597 +assert_return(() => invoke($0, `sub`, [value("f32", 1), value("f32", -1)]), [value("f32", 2)]); + +// ./test/core/f32.wast:598 +assert_return(() => invoke($0, `sub`, [value("f32", 1), value("f32", 1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:599 +assert_return( + () => invoke($0, `sub`, [value("f32", -1), value("f32", -6.2831855)]), + [value("f32", 5.2831855)], +); + +// ./test/core/f32.wast:600 +assert_return( + () => invoke($0, `sub`, [value("f32", -1), value("f32", 6.2831855)]), + [value("f32", -7.2831855)], +); + +// ./test/core/f32.wast:601 +assert_return( + () => invoke($0, `sub`, [value("f32", 1), value("f32", -6.2831855)]), + [value("f32", 7.2831855)], +); + +// ./test/core/f32.wast:602 +assert_return( + () => invoke($0, `sub`, [value("f32", 1), value("f32", 6.2831855)]), + [value("f32", -5.2831855)], +); + +// ./test/core/f32.wast:603 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:604 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:605 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:606 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:607 +assert_return( + () => invoke($0, `sub`, [value("f32", -1), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:608 +assert_return( + () => invoke($0, `sub`, [value("f32", -1), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:609 +assert_return( + () => invoke($0, `sub`, [value("f32", 1), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:610 +assert_return( + () => invoke($0, `sub`, [value("f32", 1), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:611 +assert_return( + () => invoke($0, `sub`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:612 +assert_return( + () => invoke($0, `sub`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:613 +assert_return( + () => invoke($0, `sub`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:614 +assert_return( + () => invoke($0, `sub`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:615 +assert_return( + () => invoke($0, `sub`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:616 +assert_return( + () => invoke($0, `sub`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:617 +assert_return( + () => invoke($0, `sub`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:618 +assert_return( + () => invoke($0, `sub`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:619 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", -0)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:620 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", 0)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:621 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", -0)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:622 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", 0)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:623 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:624 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:625 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:626 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:627 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:628 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:629 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:630 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:631 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", -0.5)]), + [value("f32", -5.7831855)], +); + +// ./test/core/f32.wast:632 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", 0.5)]), + [value("f32", -6.7831855)], +); + +// ./test/core/f32.wast:633 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", -0.5)]), + [value("f32", 6.7831855)], +); + +// ./test/core/f32.wast:634 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", 0.5)]), + [value("f32", 5.7831855)], +); + +// ./test/core/f32.wast:635 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", -1)]), + [value("f32", -5.2831855)], +); + +// ./test/core/f32.wast:636 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", 1)]), + [value("f32", -7.2831855)], +); + +// ./test/core/f32.wast:637 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", -1)]), + [value("f32", 7.2831855)], +); + +// ./test/core/f32.wast:638 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", 1)]), + [value("f32", 5.2831855)], +); + +// ./test/core/f32.wast:639 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:640 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("f32", -12.566371)], +); + +// ./test/core/f32.wast:641 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("f32", 12.566371)], +); + +// ./test/core/f32.wast:642 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:643 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:644 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:645 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:646 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:647 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:648 +assert_return( + () => invoke($0, `sub`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:649 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:650 +assert_return( + () => invoke($0, `sub`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:651 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:652 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:653 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:654 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:655 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:656 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:657 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:658 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:659 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:660 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:661 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:662 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:663 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:664 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:665 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:666 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:667 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:668 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:669 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:670 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:671 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:672 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:673 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:674 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:675 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:676 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:677 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:678 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:679 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:680 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:681 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:682 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:683 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:684 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:685 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:686 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:687 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:688 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:689 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:690 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:691 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:692 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:693 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:694 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:695 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:696 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:697 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:698 +assert_return( + () => invoke($0, `sub`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:699 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", -0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:700 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", 0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:701 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", -0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:702 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", 0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:703 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:704 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:705 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:706 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:707 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:708 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:709 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:710 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:711 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", -0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:712 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", 0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:713 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", -0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:714 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", 0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:715 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", -1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:716 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", 1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:717 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", -1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:718 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", 1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:719 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:720 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:721 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:722 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:723 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:724 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:725 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:726 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:727 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", -Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:728 +assert_return( + () => invoke($0, `sub`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:729 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:730 +assert_return( + () => invoke($0, `sub`, [value("f32", Infinity), value("f32", Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:731 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:732 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:733 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:734 +assert_return( + () => invoke($0, `sub`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:735 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:736 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:737 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:738 +assert_return( + () => invoke($0, `sub`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:739 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:740 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:741 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:742 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:743 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:744 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:745 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:746 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:747 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:748 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:749 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:750 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:751 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:752 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:753 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:754 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:755 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:756 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:757 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:758 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:759 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:760 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:761 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:762 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:763 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:764 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:765 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:766 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:767 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:768 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:769 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:770 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:771 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:772 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:773 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:774 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:775 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:776 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:777 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:778 +assert_return( + () => invoke($0, `sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:779 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:780 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:781 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:782 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:783 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:784 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:785 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:786 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:787 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:788 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:789 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:790 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:791 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:792 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:793 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:794 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:795 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:796 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:797 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:798 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:799 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:800 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:801 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:802 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:803 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:804 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:805 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:806 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:807 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:808 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:809 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:810 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:811 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:812 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:813 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:814 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:815 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:816 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:817 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:818 +assert_return( + () => invoke($0, `sub`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:819 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:820 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:821 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:822 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:823 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:824 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:825 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:826 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:827 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:828 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:829 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:830 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:831 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", -0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:832 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", 0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:833 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", -0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:834 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:835 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", -1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:836 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", 1)]), [value("f32", -0)]); + +// ./test/core/f32.wast:837 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", -1)]), [value("f32", -0)]); + +// ./test/core/f32.wast:838 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", 1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:839 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", -6.2831855)]), [value("f32", 0)]); + +// ./test/core/f32.wast:840 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", 6.2831855)]), [value("f32", -0)]); + +// ./test/core/f32.wast:841 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", -6.2831855)]), [value("f32", -0)]); + +// ./test/core/f32.wast:842 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", 6.2831855)]), [value("f32", 0)]); + +// ./test/core/f32.wast:843 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:844 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:845 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:846 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:847 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", -Infinity)]), [`canonical_nan`]); + +// ./test/core/f32.wast:848 +assert_return(() => invoke($0, `mul`, [value("f32", -0), value("f32", Infinity)]), [`canonical_nan`]); + +// ./test/core/f32.wast:849 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", -Infinity)]), [`canonical_nan`]); + +// ./test/core/f32.wast:850 +assert_return(() => invoke($0, `mul`, [value("f32", 0), value("f32", Infinity)]), [`canonical_nan`]); + +// ./test/core/f32.wast:851 +assert_return( + () => invoke($0, `mul`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:852 +assert_return( + () => invoke($0, `mul`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:853 +assert_return( + () => invoke($0, `mul`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:854 +assert_return( + () => invoke($0, `mul`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:855 +assert_return( + () => invoke($0, `mul`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:856 +assert_return( + () => invoke($0, `mul`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:857 +assert_return( + () => invoke($0, `mul`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:858 +assert_return( + () => invoke($0, `mul`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:859 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:860 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:861 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:862 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:863 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:864 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:865 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:866 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:867 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:868 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:869 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:870 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:871 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:872 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:873 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:874 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:875 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:876 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:877 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:878 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:879 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000000000008)], +); + +// ./test/core/f32.wast:880 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000000000008)], +); + +// ./test/core/f32.wast:881 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000000000008)], +); + +// ./test/core/f32.wast:882 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000000000008)], +); + +// ./test/core/f32.wast:883 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0.00000047683713)], +); + +// ./test/core/f32.wast:884 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0.00000047683713)], +); + +// ./test/core/f32.wast:885 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.00000047683713)], +); + +// ./test/core/f32.wast:886 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.00000047683713)], +); + +// ./test/core/f32.wast:887 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:888 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:889 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:890 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:891 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:892 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:893 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:894 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:895 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:896 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:897 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:898 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:899 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:900 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:901 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:902 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:903 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:904 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:905 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:906 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:907 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:908 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:909 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:910 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:911 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000005877472)], +); + +// ./test/core/f32.wast:912 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000005877472)], +); + +// ./test/core/f32.wast:913 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000005877472)], +); + +// ./test/core/f32.wast:914 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000005877472)], +); + +// ./test/core/f32.wast:915 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:916 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:917 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:918 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:919 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", 0.00000000000000000000000000000000000007385849)], +); + +// ./test/core/f32.wast:920 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", -0.00000000000000000000000000000000000007385849)], +); + +// ./test/core/f32.wast:921 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -0.00000000000000000000000000000000000007385849)], +); + +// ./test/core/f32.wast:922 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 0.00000000000000000000000000000000000007385849)], +); + +// ./test/core/f32.wast:923 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 3.9999998)], +); + +// ./test/core/f32.wast:924 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -3.9999998)], +); + +// ./test/core/f32.wast:925 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -3.9999998)], +); + +// ./test/core/f32.wast:926 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 3.9999998)], +); + +// ./test/core/f32.wast:927 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:928 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:929 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:930 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:931 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:932 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:933 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:934 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:935 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:936 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:937 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:938 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:939 +assert_return(() => invoke($0, `mul`, [value("f32", -0.5), value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:940 +assert_return(() => invoke($0, `mul`, [value("f32", -0.5), value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:941 +assert_return(() => invoke($0, `mul`, [value("f32", 0.5), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:942 +assert_return(() => invoke($0, `mul`, [value("f32", 0.5), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:943 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:944 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:945 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:946 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:947 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000005877472)], +); + +// ./test/core/f32.wast:948 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000005877472)], +); + +// ./test/core/f32.wast:949 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000005877472)], +); + +// ./test/core/f32.wast:950 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000005877472)], +); + +// ./test/core/f32.wast:951 +assert_return(() => invoke($0, `mul`, [value("f32", -0.5), value("f32", -0.5)]), [value("f32", 0.25)]); + +// ./test/core/f32.wast:952 +assert_return(() => invoke($0, `mul`, [value("f32", -0.5), value("f32", 0.5)]), [value("f32", -0.25)]); + +// ./test/core/f32.wast:953 +assert_return(() => invoke($0, `mul`, [value("f32", 0.5), value("f32", -0.5)]), [value("f32", -0.25)]); + +// ./test/core/f32.wast:954 +assert_return(() => invoke($0, `mul`, [value("f32", 0.5), value("f32", 0.5)]), [value("f32", 0.25)]); + +// ./test/core/f32.wast:955 +assert_return(() => invoke($0, `mul`, [value("f32", -0.5), value("f32", -1)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:956 +assert_return(() => invoke($0, `mul`, [value("f32", -0.5), value("f32", 1)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:957 +assert_return(() => invoke($0, `mul`, [value("f32", 0.5), value("f32", -1)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:958 +assert_return(() => invoke($0, `mul`, [value("f32", 0.5), value("f32", 1)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:959 +assert_return( + () => invoke($0, `mul`, [value("f32", -0.5), value("f32", -6.2831855)]), + [value("f32", 3.1415927)], +); + +// ./test/core/f32.wast:960 +assert_return( + () => invoke($0, `mul`, [value("f32", -0.5), value("f32", 6.2831855)]), + [value("f32", -3.1415927)], +); + +// ./test/core/f32.wast:961 +assert_return( + () => invoke($0, `mul`, [value("f32", 0.5), value("f32", -6.2831855)]), + [value("f32", -3.1415927)], +); + +// ./test/core/f32.wast:962 +assert_return( + () => invoke($0, `mul`, [value("f32", 0.5), value("f32", 6.2831855)]), + [value("f32", 3.1415927)], +); + +// ./test/core/f32.wast:963 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 170141170000000000000000000000000000000)], +); + +// ./test/core/f32.wast:964 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -170141170000000000000000000000000000000)], +); + +// ./test/core/f32.wast:965 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -170141170000000000000000000000000000000)], +); + +// ./test/core/f32.wast:966 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 170141170000000000000000000000000000000)], +); + +// ./test/core/f32.wast:967 +assert_return( + () => invoke($0, `mul`, [value("f32", -0.5), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:968 +assert_return( + () => invoke($0, `mul`, [value("f32", -0.5), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:969 +assert_return( + () => invoke($0, `mul`, [value("f32", 0.5), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:970 +assert_return( + () => invoke($0, `mul`, [value("f32", 0.5), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:971 +assert_return( + () => invoke($0, `mul`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:972 +assert_return( + () => invoke($0, `mul`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:973 +assert_return( + () => invoke($0, `mul`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:974 +assert_return( + () => invoke($0, `mul`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:975 +assert_return( + () => invoke($0, `mul`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:976 +assert_return( + () => invoke($0, `mul`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:977 +assert_return( + () => invoke($0, `mul`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:978 +assert_return( + () => invoke($0, `mul`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:979 +assert_return(() => invoke($0, `mul`, [value("f32", -1), value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:980 +assert_return(() => invoke($0, `mul`, [value("f32", -1), value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:981 +assert_return(() => invoke($0, `mul`, [value("f32", 1), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:982 +assert_return(() => invoke($0, `mul`, [value("f32", 1), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:983 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:984 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:985 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:986 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:987 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:988 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:989 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:990 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:991 +assert_return(() => invoke($0, `mul`, [value("f32", -1), value("f32", -0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:992 +assert_return(() => invoke($0, `mul`, [value("f32", -1), value("f32", 0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:993 +assert_return(() => invoke($0, `mul`, [value("f32", 1), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:994 +assert_return(() => invoke($0, `mul`, [value("f32", 1), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:995 +assert_return(() => invoke($0, `mul`, [value("f32", -1), value("f32", -1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:996 +assert_return(() => invoke($0, `mul`, [value("f32", -1), value("f32", 1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:997 +assert_return(() => invoke($0, `mul`, [value("f32", 1), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:998 +assert_return(() => invoke($0, `mul`, [value("f32", 1), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:999 +assert_return( + () => invoke($0, `mul`, [value("f32", -1), value("f32", -6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1000 +assert_return( + () => invoke($0, `mul`, [value("f32", -1), value("f32", 6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1001 +assert_return( + () => invoke($0, `mul`, [value("f32", 1), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1002 +assert_return( + () => invoke($0, `mul`, [value("f32", 1), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1003 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1004 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1005 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1006 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1007 +assert_return( + () => invoke($0, `mul`, [value("f32", -1), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1008 +assert_return( + () => invoke($0, `mul`, [value("f32", -1), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1009 +assert_return( + () => invoke($0, `mul`, [value("f32", 1), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1010 +assert_return( + () => invoke($0, `mul`, [value("f32", 1), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1011 +assert_return( + () => invoke($0, `mul`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1012 +assert_return( + () => invoke($0, `mul`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1013 +assert_return( + () => invoke($0, `mul`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1014 +assert_return( + () => invoke($0, `mul`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1015 +assert_return( + () => invoke($0, `mul`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1016 +assert_return( + () => invoke($0, `mul`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1017 +assert_return( + () => invoke($0, `mul`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1018 +assert_return( + () => invoke($0, `mul`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1019 +assert_return(() => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1020 +assert_return(() => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1021 +assert_return(() => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1022 +assert_return(() => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1023 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000008)], +); + +// ./test/core/f32.wast:1024 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000008)], +); + +// ./test/core/f32.wast:1025 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000008)], +); + +// ./test/core/f32.wast:1026 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000008)], +); + +// ./test/core/f32.wast:1027 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.00000000000000000000000000000000000007385849)], +); + +// ./test/core/f32.wast:1028 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.00000000000000000000000000000000000007385849)], +); + +// ./test/core/f32.wast:1029 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.00000000000000000000000000000000000007385849)], +); + +// ./test/core/f32.wast:1030 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.00000000000000000000000000000000000007385849)], +); + +// ./test/core/f32.wast:1031 +assert_return( + () => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", -0.5)]), + [value("f32", 3.1415927)], +); + +// ./test/core/f32.wast:1032 +assert_return( + () => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", 0.5)]), + [value("f32", -3.1415927)], +); + +// ./test/core/f32.wast:1033 +assert_return( + () => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", -0.5)]), + [value("f32", -3.1415927)], +); + +// ./test/core/f32.wast:1034 +assert_return( + () => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", 0.5)]), + [value("f32", 3.1415927)], +); + +// ./test/core/f32.wast:1035 +assert_return( + () => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", -1)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1036 +assert_return( + () => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", 1)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1037 +assert_return( + () => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", -1)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1038 +assert_return( + () => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", 1)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1039 +assert_return( + () => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("f32", 39.47842)], +); + +// ./test/core/f32.wast:1040 +assert_return( + () => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("f32", -39.47842)], +); + +// ./test/core/f32.wast:1041 +assert_return( + () => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("f32", -39.47842)], +); + +// ./test/core/f32.wast:1042 +assert_return( + () => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("f32", 39.47842)], +); + +// ./test/core/f32.wast:1043 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1044 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1045 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1046 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1047 +assert_return( + () => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1048 +assert_return( + () => invoke($0, `mul`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1049 +assert_return( + () => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1050 +assert_return( + () => invoke($0, `mul`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1051 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1052 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1053 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1054 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1055 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1056 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1057 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1058 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1059 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1060 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1061 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1062 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1063 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.00000047683713)], +); + +// ./test/core/f32.wast:1064 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.00000047683713)], +); + +// ./test/core/f32.wast:1065 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.00000047683713)], +); + +// ./test/core/f32.wast:1066 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.00000047683713)], +); + +// ./test/core/f32.wast:1067 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 3.9999998)], +); + +// ./test/core/f32.wast:1068 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -3.9999998)], +); + +// ./test/core/f32.wast:1069 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -3.9999998)], +); + +// ./test/core/f32.wast:1070 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 3.9999998)], +); + +// ./test/core/f32.wast:1071 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", 170141170000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1072 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", -170141170000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1073 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -170141170000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1074 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", 170141170000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1075 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1076 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1077 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1078 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1079 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1080 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1081 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1082 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1083 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1084 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1085 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1086 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1087 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1088 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1089 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1090 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1091 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1092 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1093 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1094 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1095 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1096 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1097 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1098 +assert_return( + () => invoke($0, `mul`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1099 +assert_return(() => invoke($0, `mul`, [value("f32", -Infinity), value("f32", -0)]), [`canonical_nan`]); + +// ./test/core/f32.wast:1100 +assert_return(() => invoke($0, `mul`, [value("f32", -Infinity), value("f32", 0)]), [`canonical_nan`]); + +// ./test/core/f32.wast:1101 +assert_return(() => invoke($0, `mul`, [value("f32", Infinity), value("f32", -0)]), [`canonical_nan`]); + +// ./test/core/f32.wast:1102 +assert_return(() => invoke($0, `mul`, [value("f32", Infinity), value("f32", 0)]), [`canonical_nan`]); + +// ./test/core/f32.wast:1103 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1104 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1105 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1106 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1107 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1108 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1109 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1110 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1111 +assert_return( + () => invoke($0, `mul`, [value("f32", -Infinity), value("f32", -0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1112 +assert_return( + () => invoke($0, `mul`, [value("f32", -Infinity), value("f32", 0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1113 +assert_return( + () => invoke($0, `mul`, [value("f32", Infinity), value("f32", -0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1114 +assert_return( + () => invoke($0, `mul`, [value("f32", Infinity), value("f32", 0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1115 +assert_return( + () => invoke($0, `mul`, [value("f32", -Infinity), value("f32", -1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1116 +assert_return( + () => invoke($0, `mul`, [value("f32", -Infinity), value("f32", 1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1117 +assert_return( + () => invoke($0, `mul`, [value("f32", Infinity), value("f32", -1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1118 +assert_return( + () => invoke($0, `mul`, [value("f32", Infinity), value("f32", 1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1119 +assert_return( + () => invoke($0, `mul`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1120 +assert_return( + () => invoke($0, `mul`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1121 +assert_return( + () => invoke($0, `mul`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1122 +assert_return( + () => invoke($0, `mul`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1123 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1124 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1125 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1126 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1127 +assert_return( + () => invoke($0, `mul`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1128 +assert_return( + () => invoke($0, `mul`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1129 +assert_return( + () => invoke($0, `mul`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1130 +assert_return( + () => invoke($0, `mul`, [value("f32", Infinity), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1131 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1132 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1133 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1134 +assert_return( + () => invoke($0, `mul`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1135 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1136 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1137 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1138 +assert_return( + () => invoke($0, `mul`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1139 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1140 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1141 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1142 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1143 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1144 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1145 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1146 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1147 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1148 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1149 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1150 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1151 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1152 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1153 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1154 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1155 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1156 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1157 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1158 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1159 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1160 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1161 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1162 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1163 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1164 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1165 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1166 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1167 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1168 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1169 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1170 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1171 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1172 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1173 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1174 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1175 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1176 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1177 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1178 +assert_return( + () => invoke($0, `mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1179 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1180 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1181 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1182 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1183 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1184 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1185 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1186 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1187 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1188 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1189 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1190 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1191 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1192 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1193 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1194 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1195 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1196 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1197 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1198 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1199 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1200 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1201 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1202 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1203 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1204 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1205 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1206 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1207 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1208 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1209 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1210 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1211 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1212 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1213 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1214 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1215 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1216 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1217 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1218 +assert_return( + () => invoke($0, `mul`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1219 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", -0)]), [`canonical_nan`]); + +// ./test/core/f32.wast:1220 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", 0)]), [`canonical_nan`]); + +// ./test/core/f32.wast:1221 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", -0)]), [`canonical_nan`]); + +// ./test/core/f32.wast:1222 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", 0)]), [`canonical_nan`]); + +// ./test/core/f32.wast:1223 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1224 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1225 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1226 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1227 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1228 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1229 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1230 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1231 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", -0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1232 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", 0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1233 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", -0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1234 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1235 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", -1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1236 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", 1)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1237 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", -1)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1238 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", 1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1239 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", -6.2831855)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1240 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", 6.2831855)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1241 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", -6.2831855)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1242 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", 6.2831855)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1243 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1244 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1245 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1246 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1247 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", -Infinity)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1248 +assert_return(() => invoke($0, `div`, [value("f32", -0), value("f32", Infinity)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1249 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", -Infinity)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1250 +assert_return(() => invoke($0, `div`, [value("f32", 0), value("f32", Infinity)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1251 +assert_return( + () => invoke($0, `div`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1252 +assert_return( + () => invoke($0, `div`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1253 +assert_return( + () => invoke($0, `div`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1254 +assert_return( + () => invoke($0, `div`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1255 +assert_return( + () => invoke($0, `div`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1256 +assert_return( + () => invoke($0, `div`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1257 +assert_return( + () => invoke($0, `div`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1258 +assert_return( + () => invoke($0, `div`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1259 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1260 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1261 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1262 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1263 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1264 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1265 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1266 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1267 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.00000011920929)], +); + +// ./test/core/f32.wast:1268 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.00000011920929)], +); + +// ./test/core/f32.wast:1269 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.00000011920929)], +); + +// ./test/core/f32.wast:1270 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.00000011920929)], +); + +// ./test/core/f32.wast:1271 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/f32.wast:1272 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/f32.wast:1273 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/f32.wast:1274 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/f32.wast:1275 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1276 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1277 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1278 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1279 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1280 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1281 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1282 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1283 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1284 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1285 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1286 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1287 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1288 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1289 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1290 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1291 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1292 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1293 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1294 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1295 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1296 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1297 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1298 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1299 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1300 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1301 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1302 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1303 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 8388608)], +); + +// ./test/core/f32.wast:1304 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -8388608)], +); + +// ./test/core/f32.wast:1305 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -8388608)], +); + +// ./test/core/f32.wast:1306 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 8388608)], +); + +// ./test/core/f32.wast:1307 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1308 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1309 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1310 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1311 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/f32.wast:1312 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/f32.wast:1313 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/f32.wast:1314 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/f32.wast:1315 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1316 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1317 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1318 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1319 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000001870857)], +); + +// ./test/core/f32.wast:1320 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000001870857)], +); + +// ./test/core/f32.wast:1321 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000001870857)], +); + +// ./test/core/f32.wast:1322 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000001870857)], +); + +// ./test/core/f32.wast:1323 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1324 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1325 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1326 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1327 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1328 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1329 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1330 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1331 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1332 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1333 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1334 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1335 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1336 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1337 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1338 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1339 +assert_return(() => invoke($0, `div`, [value("f32", -0.5), value("f32", -0)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:1340 +assert_return(() => invoke($0, `div`, [value("f32", -0.5), value("f32", 0)]), [value("f32", -Infinity)]); + +// ./test/core/f32.wast:1341 +assert_return(() => invoke($0, `div`, [value("f32", 0.5), value("f32", -0)]), [value("f32", -Infinity)]); + +// ./test/core/f32.wast:1342 +assert_return(() => invoke($0, `div`, [value("f32", 0.5), value("f32", 0)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:1343 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1344 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1345 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1346 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1347 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 42535296000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1348 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -42535296000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1349 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -42535296000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1350 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 42535296000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1351 +assert_return(() => invoke($0, `div`, [value("f32", -0.5), value("f32", -0.5)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1352 +assert_return(() => invoke($0, `div`, [value("f32", -0.5), value("f32", 0.5)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1353 +assert_return(() => invoke($0, `div`, [value("f32", 0.5), value("f32", -0.5)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1354 +assert_return(() => invoke($0, `div`, [value("f32", 0.5), value("f32", 0.5)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1355 +assert_return(() => invoke($0, `div`, [value("f32", -0.5), value("f32", -1)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:1356 +assert_return(() => invoke($0, `div`, [value("f32", -0.5), value("f32", 1)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1357 +assert_return(() => invoke($0, `div`, [value("f32", 0.5), value("f32", -1)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1358 +assert_return(() => invoke($0, `div`, [value("f32", 0.5), value("f32", 1)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:1359 +assert_return( + () => invoke($0, `div`, [value("f32", -0.5), value("f32", -6.2831855)]), + [value("f32", 0.07957747)], +); + +// ./test/core/f32.wast:1360 +assert_return( + () => invoke($0, `div`, [value("f32", -0.5), value("f32", 6.2831855)]), + [value("f32", -0.07957747)], +); + +// ./test/core/f32.wast:1361 +assert_return( + () => invoke($0, `div`, [value("f32", 0.5), value("f32", -6.2831855)]), + [value("f32", -0.07957747)], +); + +// ./test/core/f32.wast:1362 +assert_return( + () => invoke($0, `div`, [value("f32", 0.5), value("f32", 6.2831855)]), + [value("f32", 0.07957747)], +); + +// ./test/core/f32.wast:1363 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000001469368)], +); + +// ./test/core/f32.wast:1364 +assert_return( + () => invoke($0, `div`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000001469368)], +); + +// ./test/core/f32.wast:1365 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000001469368)], +); + +// ./test/core/f32.wast:1366 +assert_return( + () => invoke($0, `div`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000001469368)], +); + +// ./test/core/f32.wast:1367 +assert_return(() => invoke($0, `div`, [value("f32", -0.5), value("f32", -Infinity)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1368 +assert_return(() => invoke($0, `div`, [value("f32", -0.5), value("f32", Infinity)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1369 +assert_return(() => invoke($0, `div`, [value("f32", 0.5), value("f32", -Infinity)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1370 +assert_return(() => invoke($0, `div`, [value("f32", 0.5), value("f32", Infinity)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1371 +assert_return( + () => invoke($0, `div`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1372 +assert_return( + () => invoke($0, `div`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1373 +assert_return( + () => invoke($0, `div`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1374 +assert_return( + () => invoke($0, `div`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1375 +assert_return( + () => invoke($0, `div`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1376 +assert_return( + () => invoke($0, `div`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1377 +assert_return( + () => invoke($0, `div`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1378 +assert_return( + () => invoke($0, `div`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1379 +assert_return(() => invoke($0, `div`, [value("f32", -1), value("f32", -0)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:1380 +assert_return(() => invoke($0, `div`, [value("f32", -1), value("f32", 0)]), [value("f32", -Infinity)]); + +// ./test/core/f32.wast:1381 +assert_return(() => invoke($0, `div`, [value("f32", 1), value("f32", -0)]), [value("f32", -Infinity)]); + +// ./test/core/f32.wast:1382 +assert_return(() => invoke($0, `div`, [value("f32", 1), value("f32", 0)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:1383 +assert_return( + () => invoke($0, `div`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1384 +assert_return( + () => invoke($0, `div`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1385 +assert_return( + () => invoke($0, `div`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1386 +assert_return( + () => invoke($0, `div`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1387 +assert_return( + () => invoke($0, `div`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 85070590000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1388 +assert_return( + () => invoke($0, `div`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -85070590000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1389 +assert_return( + () => invoke($0, `div`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -85070590000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1390 +assert_return( + () => invoke($0, `div`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 85070590000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1391 +assert_return(() => invoke($0, `div`, [value("f32", -1), value("f32", -0.5)]), [value("f32", 2)]); + +// ./test/core/f32.wast:1392 +assert_return(() => invoke($0, `div`, [value("f32", -1), value("f32", 0.5)]), [value("f32", -2)]); + +// ./test/core/f32.wast:1393 +assert_return(() => invoke($0, `div`, [value("f32", 1), value("f32", -0.5)]), [value("f32", -2)]); + +// ./test/core/f32.wast:1394 +assert_return(() => invoke($0, `div`, [value("f32", 1), value("f32", 0.5)]), [value("f32", 2)]); + +// ./test/core/f32.wast:1395 +assert_return(() => invoke($0, `div`, [value("f32", -1), value("f32", -1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1396 +assert_return(() => invoke($0, `div`, [value("f32", -1), value("f32", 1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1397 +assert_return(() => invoke($0, `div`, [value("f32", 1), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1398 +assert_return(() => invoke($0, `div`, [value("f32", 1), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1399 +assert_return( + () => invoke($0, `div`, [value("f32", -1), value("f32", -6.2831855)]), + [value("f32", 0.15915494)], +); + +// ./test/core/f32.wast:1400 +assert_return( + () => invoke($0, `div`, [value("f32", -1), value("f32", 6.2831855)]), + [value("f32", -0.15915494)], +); + +// ./test/core/f32.wast:1401 +assert_return( + () => invoke($0, `div`, [value("f32", 1), value("f32", -6.2831855)]), + [value("f32", -0.15915494)], +); + +// ./test/core/f32.wast:1402 +assert_return( + () => invoke($0, `div`, [value("f32", 1), value("f32", 6.2831855)]), + [value("f32", 0.15915494)], +); + +// ./test/core/f32.wast:1403 +assert_return( + () => invoke($0, `div`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000002938736)], +); + +// ./test/core/f32.wast:1404 +assert_return( + () => invoke($0, `div`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000002938736)], +); + +// ./test/core/f32.wast:1405 +assert_return( + () => invoke($0, `div`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000002938736)], +); + +// ./test/core/f32.wast:1406 +assert_return( + () => invoke($0, `div`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000002938736)], +); + +// ./test/core/f32.wast:1407 +assert_return(() => invoke($0, `div`, [value("f32", -1), value("f32", -Infinity)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1408 +assert_return(() => invoke($0, `div`, [value("f32", -1), value("f32", Infinity)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1409 +assert_return(() => invoke($0, `div`, [value("f32", 1), value("f32", -Infinity)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1410 +assert_return(() => invoke($0, `div`, [value("f32", 1), value("f32", Infinity)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1411 +assert_return( + () => invoke($0, `div`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1412 +assert_return( + () => invoke($0, `div`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1413 +assert_return( + () => invoke($0, `div`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1414 +assert_return( + () => invoke($0, `div`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1415 +assert_return( + () => invoke($0, `div`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1416 +assert_return( + () => invoke($0, `div`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1417 +assert_return( + () => invoke($0, `div`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1418 +assert_return( + () => invoke($0, `div`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1419 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", -0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1420 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", 0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1421 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", -0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1422 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", 0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1423 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1424 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1425 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1426 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1427 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1428 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1429 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1430 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1431 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", -0.5)]), + [value("f32", 12.566371)], +); + +// ./test/core/f32.wast:1432 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", 0.5)]), + [value("f32", -12.566371)], +); + +// ./test/core/f32.wast:1433 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", -0.5)]), + [value("f32", -12.566371)], +); + +// ./test/core/f32.wast:1434 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", 0.5)]), + [value("f32", 12.566371)], +); + +// ./test/core/f32.wast:1435 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", -1)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1436 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", 1)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1437 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", -1)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1438 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", 1)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1439 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1440 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1441 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1442 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1443 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000018464624)], +); + +// ./test/core/f32.wast:1444 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000018464624)], +); + +// ./test/core/f32.wast:1445 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000018464624)], +); + +// ./test/core/f32.wast:1446 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000018464624)], +); + +// ./test/core/f32.wast:1447 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1448 +assert_return( + () => invoke($0, `div`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1449 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1450 +assert_return( + () => invoke($0, `div`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1451 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1452 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1453 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1454 +assert_return( + () => invoke($0, `div`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1455 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1456 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1457 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1458 +assert_return( + () => invoke($0, `div`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1459 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1460 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1461 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1462 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1463 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1464 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1465 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1466 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1467 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1468 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1469 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1470 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1471 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1472 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1473 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1474 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1475 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1476 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1477 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1478 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1479 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", 54157613000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1480 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", -54157613000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1481 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -54157613000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1482 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", 54157613000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1483 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1484 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1485 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1486 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1487 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1488 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1489 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1490 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1491 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1492 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1493 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1494 +assert_return( + () => invoke($0, `div`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1495 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1496 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1497 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1498 +assert_return( + () => invoke($0, `div`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1499 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", -0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1500 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", 0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1501 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", -0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1502 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", 0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1503 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1504 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1505 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1506 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1507 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1508 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1509 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1510 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1511 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", -0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1512 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", 0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1513 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", -0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1514 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", 0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1515 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", -1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1516 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", 1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1517 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", -1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1518 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", 1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1519 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1520 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1521 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1522 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1523 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1524 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1525 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1526 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1527 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", -Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1528 +assert_return( + () => invoke($0, `div`, [value("f32", -Infinity), value("f32", Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1529 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", -Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1530 +assert_return( + () => invoke($0, `div`, [value("f32", Infinity), value("f32", Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1531 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1532 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1533 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1534 +assert_return( + () => invoke($0, `div`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1535 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1536 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1537 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1538 +assert_return( + () => invoke($0, `div`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1539 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1540 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1541 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1542 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1543 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1544 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1545 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1546 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1547 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1548 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1549 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1550 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1551 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1552 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1553 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1554 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1555 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1556 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1557 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1558 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1559 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1560 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1561 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1562 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1563 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1564 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1565 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1566 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1567 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1568 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1569 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1570 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1571 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1572 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1573 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1574 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1575 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1576 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1577 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1578 +assert_return( + () => invoke($0, `div`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1579 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1580 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1581 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1582 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1583 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1584 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1585 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1586 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1587 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1588 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1589 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1590 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1591 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1592 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1593 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1594 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1595 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1596 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1597 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1598 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1599 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1600 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1601 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1602 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1603 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1604 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1605 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1606 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1607 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1608 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1609 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1610 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1611 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1612 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1613 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1614 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1615 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1616 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1617 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1618 +assert_return( + () => invoke($0, `div`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1619 +assert_return(() => invoke($0, `min`, [value("f32", -0), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1620 +assert_return(() => invoke($0, `min`, [value("f32", -0), value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1621 +assert_return(() => invoke($0, `min`, [value("f32", 0), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1622 +assert_return(() => invoke($0, `min`, [value("f32", 0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1623 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1624 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1625 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1626 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1627 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1628 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1629 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1630 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1631 +assert_return(() => invoke($0, `min`, [value("f32", -0), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1632 +assert_return(() => invoke($0, `min`, [value("f32", -0), value("f32", 0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1633 +assert_return(() => invoke($0, `min`, [value("f32", 0), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1634 +assert_return(() => invoke($0, `min`, [value("f32", 0), value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1635 +assert_return(() => invoke($0, `min`, [value("f32", -0), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1636 +assert_return(() => invoke($0, `min`, [value("f32", -0), value("f32", 1)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1637 +assert_return(() => invoke($0, `min`, [value("f32", 0), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1638 +assert_return(() => invoke($0, `min`, [value("f32", 0), value("f32", 1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1639 +assert_return( + () => invoke($0, `min`, [value("f32", -0), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1640 +assert_return(() => invoke($0, `min`, [value("f32", -0), value("f32", 6.2831855)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1641 +assert_return( + () => invoke($0, `min`, [value("f32", 0), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1642 +assert_return(() => invoke($0, `min`, [value("f32", 0), value("f32", 6.2831855)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1643 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1644 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1645 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1646 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1647 +assert_return( + () => invoke($0, `min`, [value("f32", -0), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1648 +assert_return(() => invoke($0, `min`, [value("f32", -0), value("f32", Infinity)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1649 +assert_return( + () => invoke($0, `min`, [value("f32", 0), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1650 +assert_return(() => invoke($0, `min`, [value("f32", 0), value("f32", Infinity)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1651 +assert_return( + () => invoke($0, `min`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1652 +assert_return( + () => invoke($0, `min`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1653 +assert_return( + () => invoke($0, `min`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1654 +assert_return( + () => invoke($0, `min`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1655 +assert_return( + () => invoke($0, `min`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1656 +assert_return( + () => invoke($0, `min`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1657 +assert_return( + () => invoke($0, `min`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1658 +assert_return( + () => invoke($0, `min`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1659 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1660 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1661 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1662 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1663 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1664 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1665 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1666 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1667 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1668 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1669 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1670 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1671 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1672 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1673 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1674 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1675 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1676 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1677 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1678 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1679 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1680 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1681 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1682 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1683 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1684 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1685 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1686 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1687 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1688 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1689 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1690 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1691 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1692 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1693 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1694 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1695 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1696 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1697 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1698 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1699 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1700 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1701 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1702 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1703 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1704 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1705 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1706 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1707 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1708 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1709 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1710 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1711 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1712 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1713 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1714 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1715 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1716 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1717 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1718 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1719 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1720 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1721 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1722 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1723 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1724 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1725 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1726 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1727 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1728 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1729 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1730 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1731 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1732 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1733 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1734 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1735 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1736 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1737 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1738 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1739 +assert_return(() => invoke($0, `min`, [value("f32", -0.5), value("f32", -0)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1740 +assert_return(() => invoke($0, `min`, [value("f32", -0.5), value("f32", 0)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1741 +assert_return(() => invoke($0, `min`, [value("f32", 0.5), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1742 +assert_return(() => invoke($0, `min`, [value("f32", 0.5), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1743 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1744 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1745 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1746 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1747 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1748 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1749 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1750 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1751 +assert_return(() => invoke($0, `min`, [value("f32", -0.5), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1752 +assert_return(() => invoke($0, `min`, [value("f32", -0.5), value("f32", 0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1753 +assert_return(() => invoke($0, `min`, [value("f32", 0.5), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1754 +assert_return(() => invoke($0, `min`, [value("f32", 0.5), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:1755 +assert_return(() => invoke($0, `min`, [value("f32", -0.5), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1756 +assert_return(() => invoke($0, `min`, [value("f32", -0.5), value("f32", 1)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1757 +assert_return(() => invoke($0, `min`, [value("f32", 0.5), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1758 +assert_return(() => invoke($0, `min`, [value("f32", 0.5), value("f32", 1)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:1759 +assert_return( + () => invoke($0, `min`, [value("f32", -0.5), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1760 +assert_return( + () => invoke($0, `min`, [value("f32", -0.5), value("f32", 6.2831855)]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1761 +assert_return( + () => invoke($0, `min`, [value("f32", 0.5), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1762 +assert_return( + () => invoke($0, `min`, [value("f32", 0.5), value("f32", 6.2831855)]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:1763 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1764 +assert_return( + () => invoke($0, `min`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1765 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1766 +assert_return( + () => invoke($0, `min`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:1767 +assert_return( + () => invoke($0, `min`, [value("f32", -0.5), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1768 +assert_return( + () => invoke($0, `min`, [value("f32", -0.5), value("f32", Infinity)]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1769 +assert_return( + () => invoke($0, `min`, [value("f32", 0.5), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1770 +assert_return(() => invoke($0, `min`, [value("f32", 0.5), value("f32", Infinity)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:1771 +assert_return( + () => invoke($0, `min`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1772 +assert_return( + () => invoke($0, `min`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1773 +assert_return( + () => invoke($0, `min`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1774 +assert_return( + () => invoke($0, `min`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1775 +assert_return( + () => invoke($0, `min`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1776 +assert_return( + () => invoke($0, `min`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1777 +assert_return( + () => invoke($0, `min`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1778 +assert_return( + () => invoke($0, `min`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1779 +assert_return(() => invoke($0, `min`, [value("f32", -1), value("f32", -0)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1780 +assert_return(() => invoke($0, `min`, [value("f32", -1), value("f32", 0)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1781 +assert_return(() => invoke($0, `min`, [value("f32", 1), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1782 +assert_return(() => invoke($0, `min`, [value("f32", 1), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1783 +assert_return( + () => invoke($0, `min`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1784 +assert_return( + () => invoke($0, `min`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1785 +assert_return( + () => invoke($0, `min`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1786 +assert_return( + () => invoke($0, `min`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1787 +assert_return( + () => invoke($0, `min`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1788 +assert_return( + () => invoke($0, `min`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1789 +assert_return( + () => invoke($0, `min`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1790 +assert_return( + () => invoke($0, `min`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1791 +assert_return(() => invoke($0, `min`, [value("f32", -1), value("f32", -0.5)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1792 +assert_return(() => invoke($0, `min`, [value("f32", -1), value("f32", 0.5)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1793 +assert_return(() => invoke($0, `min`, [value("f32", 1), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:1794 +assert_return(() => invoke($0, `min`, [value("f32", 1), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:1795 +assert_return(() => invoke($0, `min`, [value("f32", -1), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1796 +assert_return(() => invoke($0, `min`, [value("f32", -1), value("f32", 1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1797 +assert_return(() => invoke($0, `min`, [value("f32", 1), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1798 +assert_return(() => invoke($0, `min`, [value("f32", 1), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1799 +assert_return( + () => invoke($0, `min`, [value("f32", -1), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1800 +assert_return(() => invoke($0, `min`, [value("f32", -1), value("f32", 6.2831855)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1801 +assert_return( + () => invoke($0, `min`, [value("f32", 1), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1802 +assert_return(() => invoke($0, `min`, [value("f32", 1), value("f32", 6.2831855)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1803 +assert_return( + () => invoke($0, `min`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1804 +assert_return( + () => invoke($0, `min`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1805 +assert_return( + () => invoke($0, `min`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1806 +assert_return( + () => invoke($0, `min`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1807 +assert_return( + () => invoke($0, `min`, [value("f32", -1), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1808 +assert_return(() => invoke($0, `min`, [value("f32", -1), value("f32", Infinity)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1809 +assert_return( + () => invoke($0, `min`, [value("f32", 1), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1810 +assert_return(() => invoke($0, `min`, [value("f32", 1), value("f32", Infinity)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1811 +assert_return( + () => invoke($0, `min`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1812 +assert_return( + () => invoke($0, `min`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1813 +assert_return( + () => invoke($0, `min`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1814 +assert_return( + () => invoke($0, `min`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1815 +assert_return( + () => invoke($0, `min`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1816 +assert_return( + () => invoke($0, `min`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1817 +assert_return( + () => invoke($0, `min`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1818 +assert_return( + () => invoke($0, `min`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1819 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", -0)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1820 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", 0)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1821 +assert_return(() => invoke($0, `min`, [value("f32", 6.2831855), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1822 +assert_return(() => invoke($0, `min`, [value("f32", 6.2831855), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1823 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1824 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1825 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1826 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1827 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1828 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1829 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1830 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1831 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", -0.5)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1832 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", 0.5)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1833 +assert_return( + () => invoke($0, `min`, [value("f32", 6.2831855), value("f32", -0.5)]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1834 +assert_return( + () => invoke($0, `min`, [value("f32", 6.2831855), value("f32", 0.5)]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:1835 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", -1)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1836 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", 1)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1837 +assert_return(() => invoke($0, `min`, [value("f32", 6.2831855), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1838 +assert_return(() => invoke($0, `min`, [value("f32", 6.2831855), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1839 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1840 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1841 +assert_return( + () => invoke($0, `min`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1842 +assert_return( + () => invoke($0, `min`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1843 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1844 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1845 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1846 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1847 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1848 +assert_return( + () => invoke($0, `min`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1849 +assert_return( + () => invoke($0, `min`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1850 +assert_return( + () => invoke($0, `min`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1851 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1852 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1853 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1854 +assert_return( + () => invoke($0, `min`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1855 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1856 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1857 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1858 +assert_return( + () => invoke($0, `min`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1859 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1860 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1861 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:1862 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:1863 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1864 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1865 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1866 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1867 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1868 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1869 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1870 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1871 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1872 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1873 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1874 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:1875 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1876 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1877 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:1878 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:1879 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1880 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1881 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1882 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1883 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1884 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1885 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1886 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1887 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1888 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1889 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1890 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1891 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1892 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1893 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1894 +assert_return( + () => invoke($0, `min`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1895 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1896 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1897 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1898 +assert_return( + () => invoke($0, `min`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1899 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", -0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1900 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", 0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1901 +assert_return(() => invoke($0, `min`, [value("f32", Infinity), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:1902 +assert_return(() => invoke($0, `min`, [value("f32", Infinity), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:1903 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1904 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1905 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1906 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:1907 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1908 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1909 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1910 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:1911 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", -0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1912 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", 0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1913 +assert_return( + () => invoke($0, `min`, [value("f32", Infinity), value("f32", -0.5)]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:1914 +assert_return(() => invoke($0, `min`, [value("f32", Infinity), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:1915 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", -1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1916 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", 1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1917 +assert_return(() => invoke($0, `min`, [value("f32", Infinity), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:1918 +assert_return(() => invoke($0, `min`, [value("f32", Infinity), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:1919 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1920 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1921 +assert_return( + () => invoke($0, `min`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:1922 +assert_return( + () => invoke($0, `min`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:1923 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1924 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1925 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1926 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:1927 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1928 +assert_return( + () => invoke($0, `min`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1929 +assert_return( + () => invoke($0, `min`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:1930 +assert_return( + () => invoke($0, `min`, [value("f32", Infinity), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:1931 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1932 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1933 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1934 +assert_return( + () => invoke($0, `min`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1935 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1936 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1937 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1938 +assert_return( + () => invoke($0, `min`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1939 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1940 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1941 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1942 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1943 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1944 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1945 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1946 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1947 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1948 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1949 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1950 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1951 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1952 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1953 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1954 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1955 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1956 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1957 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1958 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1959 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1960 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1961 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1962 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1963 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1964 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1965 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1966 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1967 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1968 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1969 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1970 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1971 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1972 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1973 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1974 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1975 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1976 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1977 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1978 +assert_return( + () => invoke($0, `min`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1979 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1980 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1981 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1982 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1983 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1984 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1985 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1986 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1987 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1988 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1989 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1990 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1991 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1992 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1993 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1994 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1995 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1996 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1997 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:1998 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:1999 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2000 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2001 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2002 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2003 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2004 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2005 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2006 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2007 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2008 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2009 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2010 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2011 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2012 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2013 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2014 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2015 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2016 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2017 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2018 +assert_return( + () => invoke($0, `min`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2019 +assert_return(() => invoke($0, `max`, [value("f32", -0), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2020 +assert_return(() => invoke($0, `max`, [value("f32", -0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2021 +assert_return(() => invoke($0, `max`, [value("f32", 0), value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2022 +assert_return(() => invoke($0, `max`, [value("f32", 0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2023 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2024 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2025 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2026 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2027 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2028 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2029 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2030 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2031 +assert_return(() => invoke($0, `max`, [value("f32", -0), value("f32", -0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2032 +assert_return(() => invoke($0, `max`, [value("f32", -0), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2033 +assert_return(() => invoke($0, `max`, [value("f32", 0), value("f32", -0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2034 +assert_return(() => invoke($0, `max`, [value("f32", 0), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2035 +assert_return(() => invoke($0, `max`, [value("f32", -0), value("f32", -1)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2036 +assert_return(() => invoke($0, `max`, [value("f32", -0), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2037 +assert_return(() => invoke($0, `max`, [value("f32", 0), value("f32", -1)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2038 +assert_return(() => invoke($0, `max`, [value("f32", 0), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2039 +assert_return(() => invoke($0, `max`, [value("f32", -0), value("f32", -6.2831855)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2040 +assert_return( + () => invoke($0, `max`, [value("f32", -0), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2041 +assert_return(() => invoke($0, `max`, [value("f32", 0), value("f32", -6.2831855)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2042 +assert_return( + () => invoke($0, `max`, [value("f32", 0), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2043 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2044 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2045 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2046 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2047 +assert_return(() => invoke($0, `max`, [value("f32", -0), value("f32", -Infinity)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2048 +assert_return( + () => invoke($0, `max`, [value("f32", -0), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2049 +assert_return(() => invoke($0, `max`, [value("f32", 0), value("f32", -Infinity)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2050 +assert_return( + () => invoke($0, `max`, [value("f32", 0), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2051 +assert_return( + () => invoke($0, `max`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2052 +assert_return( + () => invoke($0, `max`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2053 +assert_return( + () => invoke($0, `max`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2054 +assert_return( + () => invoke($0, `max`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2055 +assert_return( + () => invoke($0, `max`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2056 +assert_return( + () => invoke($0, `max`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2057 +assert_return( + () => invoke($0, `max`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2058 +assert_return( + () => invoke($0, `max`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2059 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2060 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2061 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2062 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2063 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2064 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2065 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2066 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2067 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2068 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2069 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2070 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2071 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2072 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2073 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2074 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2075 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2076 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2077 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2078 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2079 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2080 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2081 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2082 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2083 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2084 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2085 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2086 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2087 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2088 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2089 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2090 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2091 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2092 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2093 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2094 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2095 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2096 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2097 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2098 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2099 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2100 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2101 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2102 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2103 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2104 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2105 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2106 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2107 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2108 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2109 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2110 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2111 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2112 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2113 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2114 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2115 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2116 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2117 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2118 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2119 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2120 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2121 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2122 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2123 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2124 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2125 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2126 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2127 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2128 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2129 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2130 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2131 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2132 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2133 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2134 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2135 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2136 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2137 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2138 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2139 +assert_return(() => invoke($0, `max`, [value("f32", -0.5), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2140 +assert_return(() => invoke($0, `max`, [value("f32", -0.5), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2141 +assert_return(() => invoke($0, `max`, [value("f32", 0.5), value("f32", -0)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2142 +assert_return(() => invoke($0, `max`, [value("f32", 0.5), value("f32", 0)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2143 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2144 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2145 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2146 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2147 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2148 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2149 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2150 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2151 +assert_return(() => invoke($0, `max`, [value("f32", -0.5), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:2152 +assert_return(() => invoke($0, `max`, [value("f32", -0.5), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2153 +assert_return(() => invoke($0, `max`, [value("f32", 0.5), value("f32", -0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2154 +assert_return(() => invoke($0, `max`, [value("f32", 0.5), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2155 +assert_return(() => invoke($0, `max`, [value("f32", -0.5), value("f32", -1)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:2156 +assert_return(() => invoke($0, `max`, [value("f32", -0.5), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2157 +assert_return(() => invoke($0, `max`, [value("f32", 0.5), value("f32", -1)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2158 +assert_return(() => invoke($0, `max`, [value("f32", 0.5), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2159 +assert_return( + () => invoke($0, `max`, [value("f32", -0.5), value("f32", -6.2831855)]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:2160 +assert_return( + () => invoke($0, `max`, [value("f32", -0.5), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2161 +assert_return( + () => invoke($0, `max`, [value("f32", 0.5), value("f32", -6.2831855)]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2162 +assert_return( + () => invoke($0, `max`, [value("f32", 0.5), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2163 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:2164 +assert_return( + () => invoke($0, `max`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2165 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2166 +assert_return( + () => invoke($0, `max`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2167 +assert_return( + () => invoke($0, `max`, [value("f32", -0.5), value("f32", -Infinity)]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:2168 +assert_return( + () => invoke($0, `max`, [value("f32", -0.5), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2169 +assert_return( + () => invoke($0, `max`, [value("f32", 0.5), value("f32", -Infinity)]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2170 +assert_return( + () => invoke($0, `max`, [value("f32", 0.5), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2171 +assert_return( + () => invoke($0, `max`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2172 +assert_return( + () => invoke($0, `max`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2173 +assert_return( + () => invoke($0, `max`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2174 +assert_return( + () => invoke($0, `max`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2175 +assert_return( + () => invoke($0, `max`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2176 +assert_return( + () => invoke($0, `max`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2177 +assert_return( + () => invoke($0, `max`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2178 +assert_return( + () => invoke($0, `max`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2179 +assert_return(() => invoke($0, `max`, [value("f32", -1), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2180 +assert_return(() => invoke($0, `max`, [value("f32", -1), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2181 +assert_return(() => invoke($0, `max`, [value("f32", 1), value("f32", -0)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2182 +assert_return(() => invoke($0, `max`, [value("f32", 1), value("f32", 0)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2183 +assert_return( + () => invoke($0, `max`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2184 +assert_return( + () => invoke($0, `max`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2185 +assert_return( + () => invoke($0, `max`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2186 +assert_return( + () => invoke($0, `max`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2187 +assert_return( + () => invoke($0, `max`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2188 +assert_return( + () => invoke($0, `max`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2189 +assert_return( + () => invoke($0, `max`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2190 +assert_return( + () => invoke($0, `max`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2191 +assert_return(() => invoke($0, `max`, [value("f32", -1), value("f32", -0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32.wast:2192 +assert_return(() => invoke($0, `max`, [value("f32", -1), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32.wast:2193 +assert_return(() => invoke($0, `max`, [value("f32", 1), value("f32", -0.5)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2194 +assert_return(() => invoke($0, `max`, [value("f32", 1), value("f32", 0.5)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2195 +assert_return(() => invoke($0, `max`, [value("f32", -1), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2196 +assert_return(() => invoke($0, `max`, [value("f32", -1), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2197 +assert_return(() => invoke($0, `max`, [value("f32", 1), value("f32", -1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2198 +assert_return(() => invoke($0, `max`, [value("f32", 1), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2199 +assert_return(() => invoke($0, `max`, [value("f32", -1), value("f32", -6.2831855)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2200 +assert_return( + () => invoke($0, `max`, [value("f32", -1), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2201 +assert_return(() => invoke($0, `max`, [value("f32", 1), value("f32", -6.2831855)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2202 +assert_return( + () => invoke($0, `max`, [value("f32", 1), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2203 +assert_return( + () => invoke($0, `max`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:2204 +assert_return( + () => invoke($0, `max`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2205 +assert_return( + () => invoke($0, `max`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2206 +assert_return( + () => invoke($0, `max`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2207 +assert_return(() => invoke($0, `max`, [value("f32", -1), value("f32", -Infinity)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2208 +assert_return( + () => invoke($0, `max`, [value("f32", -1), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2209 +assert_return(() => invoke($0, `max`, [value("f32", 1), value("f32", -Infinity)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2210 +assert_return( + () => invoke($0, `max`, [value("f32", 1), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2211 +assert_return( + () => invoke($0, `max`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2212 +assert_return( + () => invoke($0, `max`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2213 +assert_return( + () => invoke($0, `max`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2214 +assert_return( + () => invoke($0, `max`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2215 +assert_return( + () => invoke($0, `max`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2216 +assert_return( + () => invoke($0, `max`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2217 +assert_return( + () => invoke($0, `max`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2218 +assert_return( + () => invoke($0, `max`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2219 +assert_return(() => invoke($0, `max`, [value("f32", -6.2831855), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2220 +assert_return(() => invoke($0, `max`, [value("f32", -6.2831855), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2221 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", -0)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2222 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", 0)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2223 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2224 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2225 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2226 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2227 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2228 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2229 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2230 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2231 +assert_return( + () => invoke($0, `max`, [value("f32", -6.2831855), value("f32", -0.5)]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:2232 +assert_return( + () => invoke($0, `max`, [value("f32", -6.2831855), value("f32", 0.5)]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2233 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", -0.5)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2234 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", 0.5)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2235 +assert_return(() => invoke($0, `max`, [value("f32", -6.2831855), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2236 +assert_return(() => invoke($0, `max`, [value("f32", -6.2831855), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2237 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", -1)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2238 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", 1)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2239 +assert_return( + () => invoke($0, `max`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:2240 +assert_return( + () => invoke($0, `max`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2241 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2242 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2243 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:2244 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2245 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2246 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2247 +assert_return( + () => invoke($0, `max`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:2248 +assert_return( + () => invoke($0, `max`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2249 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2250 +assert_return( + () => invoke($0, `max`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2251 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2252 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2253 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2254 +assert_return( + () => invoke($0, `max`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2255 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2256 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2257 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2258 +assert_return( + () => invoke($0, `max`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2259 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2260 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2261 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2262 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2263 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2264 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2265 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2266 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2267 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2268 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2269 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2270 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2271 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:2272 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2273 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2274 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2275 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:2276 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2277 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2278 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2279 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:2280 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2281 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2282 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2283 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2284 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2285 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2286 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2287 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2288 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2289 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2290 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2291 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2292 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2293 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2294 +assert_return( + () => invoke($0, `max`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2295 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2296 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2297 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2298 +assert_return( + () => invoke($0, `max`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2299 +assert_return(() => invoke($0, `max`, [value("f32", -Infinity), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2300 +assert_return(() => invoke($0, `max`, [value("f32", -Infinity), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2301 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", -0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2302 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", 0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2303 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2304 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32.wast:2305 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2306 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2307 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2308 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32.wast:2309 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2310 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2311 +assert_return( + () => invoke($0, `max`, [value("f32", -Infinity), value("f32", -0.5)]), + [value("f32", -0.5)], +); + +// ./test/core/f32.wast:2312 +assert_return( + () => invoke($0, `max`, [value("f32", -Infinity), value("f32", 0.5)]), + [value("f32", 0.5)], +); + +// ./test/core/f32.wast:2313 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", -0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2314 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", 0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2315 +assert_return(() => invoke($0, `max`, [value("f32", -Infinity), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2316 +assert_return(() => invoke($0, `max`, [value("f32", -Infinity), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2317 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", -1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2318 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", 1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2319 +assert_return( + () => invoke($0, `max`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32.wast:2320 +assert_return( + () => invoke($0, `max`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32.wast:2321 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2322 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2323 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2324 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2325 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2326 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2327 +assert_return( + () => invoke($0, `max`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32.wast:2328 +assert_return( + () => invoke($0, `max`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2329 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2330 +assert_return( + () => invoke($0, `max`, [value("f32", Infinity), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32.wast:2331 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2332 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2333 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2334 +assert_return( + () => invoke($0, `max`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2335 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2336 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2337 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2338 +assert_return( + () => invoke($0, `max`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2339 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2340 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2341 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2342 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2343 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2344 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2345 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2346 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2347 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2348 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2349 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2350 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2351 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2352 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2353 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2354 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2355 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2356 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2357 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2358 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2359 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2360 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2361 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2362 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2363 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2364 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2365 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2366 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2367 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2368 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2369 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2370 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2371 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2372 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2373 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2374 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2375 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2376 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2377 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2378 +assert_return( + () => invoke($0, `max`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2379 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2380 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2381 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2382 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2383 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2384 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2385 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2386 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2387 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2388 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2389 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2390 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2391 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2392 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2393 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2394 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2395 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2396 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2397 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2398 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2399 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2400 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2401 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2402 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2403 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2404 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2405 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2406 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2407 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2408 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2409 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2410 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2411 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2412 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2413 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2414 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2415 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2416 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2417 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2418 +assert_return( + () => invoke($0, `max`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f32.wast:2419 +assert_return(() => invoke($0, `sqrt`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2420 +assert_return(() => invoke($0, `sqrt`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2421 +assert_return( + () => invoke($0, `sqrt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2422 +assert_return( + () => invoke($0, `sqrt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.00000000000000000000003743392)], +); + +// ./test/core/f32.wast:2423 +assert_return( + () => invoke($0, `sqrt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2424 +assert_return( + () => invoke($0, `sqrt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.00000000000000000010842022)], +); + +// ./test/core/f32.wast:2425 +assert_return(() => invoke($0, `sqrt`, [value("f32", -0.5)]), [`canonical_nan`]); + +// ./test/core/f32.wast:2426 +assert_return(() => invoke($0, `sqrt`, [value("f32", 0.5)]), [value("f32", 0.70710677)]); + +// ./test/core/f32.wast:2427 +assert_return(() => invoke($0, `sqrt`, [value("f32", -1)]), [`canonical_nan`]); + +// ./test/core/f32.wast:2428 +assert_return(() => invoke($0, `sqrt`, [value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2429 +assert_return(() => invoke($0, `sqrt`, [value("f32", -6.2831855)]), [`canonical_nan`]); + +// ./test/core/f32.wast:2430 +assert_return(() => invoke($0, `sqrt`, [value("f32", 6.2831855)]), [value("f32", 2.5066283)]); + +// ./test/core/f32.wast:2431 +assert_return( + () => invoke($0, `sqrt`, [value("f32", -340282350000000000000000000000000000000)]), + [`canonical_nan`], +); + +// ./test/core/f32.wast:2432 +assert_return( + () => invoke($0, `sqrt`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 18446743000000000000)], +); + +// ./test/core/f32.wast:2433 +assert_return(() => invoke($0, `sqrt`, [value("f32", -Infinity)]), [`canonical_nan`]); + +// ./test/core/f32.wast:2434 +assert_return(() => invoke($0, `sqrt`, [value("f32", Infinity)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:2435 +assert_return(() => invoke($0, `sqrt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2436 +assert_return(() => invoke($0, `sqrt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2437 +assert_return(() => invoke($0, `sqrt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2438 +assert_return(() => invoke($0, `sqrt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2439 +assert_return(() => invoke($0, `floor`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2440 +assert_return(() => invoke($0, `floor`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2441 +assert_return( + () => invoke($0, `floor`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:2442 +assert_return( + () => invoke($0, `floor`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2443 +assert_return( + () => invoke($0, `floor`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32.wast:2444 +assert_return( + () => invoke($0, `floor`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2445 +assert_return(() => invoke($0, `floor`, [value("f32", -0.5)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2446 +assert_return(() => invoke($0, `floor`, [value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2447 +assert_return(() => invoke($0, `floor`, [value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2448 +assert_return(() => invoke($0, `floor`, [value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2449 +assert_return(() => invoke($0, `floor`, [value("f32", -6.2831855)]), [value("f32", -7)]); + +// ./test/core/f32.wast:2450 +assert_return(() => invoke($0, `floor`, [value("f32", 6.2831855)]), [value("f32", 6)]); + +// ./test/core/f32.wast:2451 +assert_return( + () => invoke($0, `floor`, [value("f32", -340282350000000000000000000000000000000)]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2452 +assert_return( + () => invoke($0, `floor`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2453 +assert_return(() => invoke($0, `floor`, [value("f32", -Infinity)]), [value("f32", -Infinity)]); + +// ./test/core/f32.wast:2454 +assert_return(() => invoke($0, `floor`, [value("f32", Infinity)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:2455 +assert_return(() => invoke($0, `floor`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2456 +assert_return(() => invoke($0, `floor`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2457 +assert_return(() => invoke($0, `floor`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2458 +assert_return(() => invoke($0, `floor`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2459 +assert_return(() => invoke($0, `ceil`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2460 +assert_return(() => invoke($0, `ceil`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2461 +assert_return( + () => invoke($0, `ceil`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2462 +assert_return( + () => invoke($0, `ceil`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2463 +assert_return( + () => invoke($0, `ceil`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2464 +assert_return( + () => invoke($0, `ceil`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32.wast:2465 +assert_return(() => invoke($0, `ceil`, [value("f32", -0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2466 +assert_return(() => invoke($0, `ceil`, [value("f32", 0.5)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2467 +assert_return(() => invoke($0, `ceil`, [value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2468 +assert_return(() => invoke($0, `ceil`, [value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2469 +assert_return(() => invoke($0, `ceil`, [value("f32", -6.2831855)]), [value("f32", -6)]); + +// ./test/core/f32.wast:2470 +assert_return(() => invoke($0, `ceil`, [value("f32", 6.2831855)]), [value("f32", 7)]); + +// ./test/core/f32.wast:2471 +assert_return( + () => invoke($0, `ceil`, [value("f32", -340282350000000000000000000000000000000)]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2472 +assert_return( + () => invoke($0, `ceil`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2473 +assert_return(() => invoke($0, `ceil`, [value("f32", -Infinity)]), [value("f32", -Infinity)]); + +// ./test/core/f32.wast:2474 +assert_return(() => invoke($0, `ceil`, [value("f32", Infinity)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:2475 +assert_return(() => invoke($0, `ceil`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2476 +assert_return(() => invoke($0, `ceil`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2477 +assert_return(() => invoke($0, `ceil`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2478 +assert_return(() => invoke($0, `ceil`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2479 +assert_return(() => invoke($0, `trunc`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2480 +assert_return(() => invoke($0, `trunc`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2481 +assert_return( + () => invoke($0, `trunc`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2482 +assert_return( + () => invoke($0, `trunc`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2483 +assert_return( + () => invoke($0, `trunc`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2484 +assert_return( + () => invoke($0, `trunc`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2485 +assert_return(() => invoke($0, `trunc`, [value("f32", -0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2486 +assert_return(() => invoke($0, `trunc`, [value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2487 +assert_return(() => invoke($0, `trunc`, [value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2488 +assert_return(() => invoke($0, `trunc`, [value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2489 +assert_return(() => invoke($0, `trunc`, [value("f32", -6.2831855)]), [value("f32", -6)]); + +// ./test/core/f32.wast:2490 +assert_return(() => invoke($0, `trunc`, [value("f32", 6.2831855)]), [value("f32", 6)]); + +// ./test/core/f32.wast:2491 +assert_return( + () => invoke($0, `trunc`, [value("f32", -340282350000000000000000000000000000000)]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2492 +assert_return( + () => invoke($0, `trunc`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2493 +assert_return(() => invoke($0, `trunc`, [value("f32", -Infinity)]), [value("f32", -Infinity)]); + +// ./test/core/f32.wast:2494 +assert_return(() => invoke($0, `trunc`, [value("f32", Infinity)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:2495 +assert_return(() => invoke($0, `trunc`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2496 +assert_return(() => invoke($0, `trunc`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2497 +assert_return(() => invoke($0, `trunc`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2498 +assert_return(() => invoke($0, `trunc`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2499 +assert_return(() => invoke($0, `nearest`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2500 +assert_return(() => invoke($0, `nearest`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2501 +assert_return( + () => invoke($0, `nearest`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2502 +assert_return( + () => invoke($0, `nearest`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2503 +assert_return( + () => invoke($0, `nearest`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32.wast:2504 +assert_return( + () => invoke($0, `nearest`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32.wast:2505 +assert_return(() => invoke($0, `nearest`, [value("f32", -0.5)]), [value("f32", -0)]); + +// ./test/core/f32.wast:2506 +assert_return(() => invoke($0, `nearest`, [value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32.wast:2507 +assert_return(() => invoke($0, `nearest`, [value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32.wast:2508 +assert_return(() => invoke($0, `nearest`, [value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32.wast:2509 +assert_return(() => invoke($0, `nearest`, [value("f32", -6.2831855)]), [value("f32", -6)]); + +// ./test/core/f32.wast:2510 +assert_return(() => invoke($0, `nearest`, [value("f32", 6.2831855)]), [value("f32", 6)]); + +// ./test/core/f32.wast:2511 +assert_return( + () => invoke($0, `nearest`, [value("f32", -340282350000000000000000000000000000000)]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2512 +assert_return( + () => invoke($0, `nearest`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32.wast:2513 +assert_return(() => invoke($0, `nearest`, [value("f32", -Infinity)]), [value("f32", -Infinity)]); + +// ./test/core/f32.wast:2514 +assert_return(() => invoke($0, `nearest`, [value("f32", Infinity)]), [value("f32", Infinity)]); + +// ./test/core/f32.wast:2515 +assert_return(() => invoke($0, `nearest`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2516 +assert_return(() => invoke($0, `nearest`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2517 +assert_return(() => invoke($0, `nearest`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), [`canonical_nan`]); + +// ./test/core/f32.wast:2518 +assert_return(() => invoke($0, `nearest`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), [`arithmetic_nan`]); + +// ./test/core/f32.wast:2523 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.add (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2524 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.div (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2525 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.max (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2526 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.min (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2527 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.mul (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2528 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.sub (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2529 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.ceil (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2530 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.floor (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2531 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.nearest (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2532 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.sqrt (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2533 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.trunc (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32.wast:2536 +assert_malformed( + () => instantiate(`(func (result f32) (f32.const nan:arithmetic)) `), + `unexpected token`, +); + +// ./test/core/f32.wast:2540 +assert_malformed( + () => instantiate(`(func (result f32) (f32.const nan:canonical)) `), + `unexpected token`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/f32_bitwise.wast.js b/js/src/jit-test/tests/wasm/spec/spec/f32_bitwise.wast.js new file mode 100644 index 0000000000..7a27263671 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/f32_bitwise.wast.js @@ -0,0 +1,2688 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/f32_bitwise.wast + +// ./test/core/f32_bitwise.wast:4 +let $0 = instantiate(`(module + (func (export "abs") (param $$x f32) (result f32) (f32.abs (local.get $$x))) + (func (export "neg") (param $$x f32) (result f32) (f32.neg (local.get $$x))) + (func (export "copysign") (param $$x f32) (param $$y f32) (result f32) (f32.copysign (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/f32_bitwise.wast:10 +assert_return(() => invoke($0, `copysign`, [value("f32", -0), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32_bitwise.wast:11 +assert_return(() => invoke($0, `copysign`, [value("f32", -0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:12 +assert_return(() => invoke($0, `copysign`, [value("f32", 0), value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/f32_bitwise.wast:13 +assert_return(() => invoke($0, `copysign`, [value("f32", 0), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:14 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:15 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:16 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:17 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:18 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:19 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:20 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:21 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:22 +assert_return(() => invoke($0, `copysign`, [value("f32", -0), value("f32", -0.5)]), [value("f32", -0)]); + +// ./test/core/f32_bitwise.wast:23 +assert_return(() => invoke($0, `copysign`, [value("f32", -0), value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:24 +assert_return(() => invoke($0, `copysign`, [value("f32", 0), value("f32", -0.5)]), [value("f32", -0)]); + +// ./test/core/f32_bitwise.wast:25 +assert_return(() => invoke($0, `copysign`, [value("f32", 0), value("f32", 0.5)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:26 +assert_return(() => invoke($0, `copysign`, [value("f32", -0), value("f32", -1)]), [value("f32", -0)]); + +// ./test/core/f32_bitwise.wast:27 +assert_return(() => invoke($0, `copysign`, [value("f32", -0), value("f32", 1)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:28 +assert_return(() => invoke($0, `copysign`, [value("f32", 0), value("f32", -1)]), [value("f32", -0)]); + +// ./test/core/f32_bitwise.wast:29 +assert_return(() => invoke($0, `copysign`, [value("f32", 0), value("f32", 1)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:30 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0), value("f32", -6.2831855)]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:31 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0), value("f32", 6.2831855)]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:32 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0), value("f32", -6.2831855)]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:33 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0), value("f32", 6.2831855)]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:34 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:35 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:36 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:37 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:38 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0), value("f32", -Infinity)]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:39 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0), value("f32", Infinity)]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:40 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0), value("f32", -Infinity)]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:41 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0), value("f32", Infinity)]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:42 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:43 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:44 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("f32", -0)], +); + +// ./test/core/f32_bitwise.wast:45 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("f32", 0)], +); + +// ./test/core/f32_bitwise.wast:46 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:47 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:48 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:49 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:50 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:51 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:52 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:53 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:54 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:55 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:56 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:57 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:58 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:59 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:60 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:61 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:62 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:63 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:64 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:65 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:66 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:67 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:68 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:69 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:70 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:71 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:72 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:73 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:74 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:75 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:76 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:77 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:78 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:79 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:80 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:81 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:82 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:83 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:84 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:85 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:86 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:87 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:88 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:89 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:90 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:91 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:92 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:93 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:94 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:95 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:96 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:97 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:98 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:99 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:100 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:101 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:102 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:103 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:104 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:105 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:106 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:107 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:108 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:109 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:110 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:111 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:112 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:113 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:114 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:115 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:116 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:117 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:118 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0.5), value("f32", -0)]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:119 +assert_return(() => invoke($0, `copysign`, [value("f32", -0.5), value("f32", 0)]), [value("f32", 0.5)]); + +// ./test/core/f32_bitwise.wast:120 +assert_return(() => invoke($0, `copysign`, [value("f32", 0.5), value("f32", -0)]), [value("f32", -0.5)]); + +// ./test/core/f32_bitwise.wast:121 +assert_return(() => invoke($0, `copysign`, [value("f32", 0.5), value("f32", 0)]), [value("f32", 0.5)]); + +// ./test/core/f32_bitwise.wast:122 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:123 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:124 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:125 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:126 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:127 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:128 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:129 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:130 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0.5), value("f32", -0.5)]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:131 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0.5), value("f32", 0.5)]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:132 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0.5), value("f32", -0.5)]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:133 +assert_return(() => invoke($0, `copysign`, [value("f32", 0.5), value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32_bitwise.wast:134 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0.5), value("f32", -1)]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:135 +assert_return(() => invoke($0, `copysign`, [value("f32", -0.5), value("f32", 1)]), [value("f32", 0.5)]); + +// ./test/core/f32_bitwise.wast:136 +assert_return(() => invoke($0, `copysign`, [value("f32", 0.5), value("f32", -1)]), [value("f32", -0.5)]); + +// ./test/core/f32_bitwise.wast:137 +assert_return(() => invoke($0, `copysign`, [value("f32", 0.5), value("f32", 1)]), [value("f32", 0.5)]); + +// ./test/core/f32_bitwise.wast:138 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0.5), value("f32", -6.2831855)]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:139 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0.5), value("f32", 6.2831855)]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:140 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0.5), value("f32", -6.2831855)]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:141 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0.5), value("f32", 6.2831855)]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:142 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:143 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:144 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:145 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:146 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0.5), value("f32", -Infinity)]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:147 +assert_return( + () => invoke($0, `copysign`, [value("f32", -0.5), value("f32", Infinity)]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:148 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0.5), value("f32", -Infinity)]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:149 +assert_return( + () => invoke($0, `copysign`, [value("f32", 0.5), value("f32", Infinity)]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:150 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.5), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:151 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -0.5), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:152 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.5), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -0.5)], +); + +// ./test/core/f32_bitwise.wast:153 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 0.5), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 0.5)], +); + +// ./test/core/f32_bitwise.wast:154 +assert_return(() => invoke($0, `copysign`, [value("f32", -1), value("f32", -0)]), [value("f32", -1)]); + +// ./test/core/f32_bitwise.wast:155 +assert_return(() => invoke($0, `copysign`, [value("f32", -1), value("f32", 0)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:156 +assert_return(() => invoke($0, `copysign`, [value("f32", 1), value("f32", -0)]), [value("f32", -1)]); + +// ./test/core/f32_bitwise.wast:157 +assert_return(() => invoke($0, `copysign`, [value("f32", 1), value("f32", 0)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:158 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:159 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:160 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:161 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:162 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:163 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:164 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:165 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:166 +assert_return(() => invoke($0, `copysign`, [value("f32", -1), value("f32", -0.5)]), [value("f32", -1)]); + +// ./test/core/f32_bitwise.wast:167 +assert_return(() => invoke($0, `copysign`, [value("f32", -1), value("f32", 0.5)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:168 +assert_return(() => invoke($0, `copysign`, [value("f32", 1), value("f32", -0.5)]), [value("f32", -1)]); + +// ./test/core/f32_bitwise.wast:169 +assert_return(() => invoke($0, `copysign`, [value("f32", 1), value("f32", 0.5)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:170 +assert_return(() => invoke($0, `copysign`, [value("f32", -1), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32_bitwise.wast:171 +assert_return(() => invoke($0, `copysign`, [value("f32", -1), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:172 +assert_return(() => invoke($0, `copysign`, [value("f32", 1), value("f32", -1)]), [value("f32", -1)]); + +// ./test/core/f32_bitwise.wast:173 +assert_return(() => invoke($0, `copysign`, [value("f32", 1), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:174 +assert_return( + () => invoke($0, `copysign`, [value("f32", -1), value("f32", -6.2831855)]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:175 +assert_return( + () => invoke($0, `copysign`, [value("f32", -1), value("f32", 6.2831855)]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:176 +assert_return( + () => invoke($0, `copysign`, [value("f32", 1), value("f32", -6.2831855)]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:177 +assert_return( + () => invoke($0, `copysign`, [value("f32", 1), value("f32", 6.2831855)]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:178 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:179 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:180 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:181 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:182 +assert_return( + () => invoke($0, `copysign`, [value("f32", -1), value("f32", -Infinity)]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:183 +assert_return( + () => invoke($0, `copysign`, [value("f32", -1), value("f32", Infinity)]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:184 +assert_return( + () => invoke($0, `copysign`, [value("f32", 1), value("f32", -Infinity)]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:185 +assert_return( + () => invoke($0, `copysign`, [value("f32", 1), value("f32", Infinity)]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:186 +assert_return( + () => invoke($0, `copysign`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:187 +assert_return( + () => invoke($0, `copysign`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:188 +assert_return( + () => invoke($0, `copysign`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("f32", -1)], +); + +// ./test/core/f32_bitwise.wast:189 +assert_return( + () => invoke($0, `copysign`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("f32", 1)], +); + +// ./test/core/f32_bitwise.wast:190 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", -0)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:191 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", 0)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:192 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", -0)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:193 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", 0)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:194 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:195 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:196 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:197 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:198 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:199 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:200 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:201 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:202 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", -0.5)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:203 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", 0.5)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:204 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", -0.5)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:205 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", 0.5)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:206 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", -1)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:207 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", 1)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:208 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", -1)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:209 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", 1)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:210 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:211 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:212 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:213 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:214 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:215 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:216 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:217 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:218 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:219 +assert_return( + () => invoke($0, `copysign`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:220 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:221 +assert_return( + () => invoke($0, `copysign`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:222 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:223 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:224 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -6.2831855)], +); + +// ./test/core/f32_bitwise.wast:225 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 6.2831855)], +); + +// ./test/core/f32_bitwise.wast:226 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:227 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:228 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:229 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:230 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:231 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:232 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:233 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:234 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:235 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:236 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:237 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:238 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:239 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:240 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:241 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:242 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:243 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:244 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:245 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:246 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:247 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:248 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:249 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:250 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:251 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:252 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:253 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:254 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:255 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:256 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:257 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:258 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:259 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:260 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:261 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:262 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", -0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:263 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", 0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:264 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", -0)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:265 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", 0)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:266 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:267 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:268 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:269 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:270 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:271 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:272 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:273 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:274 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", -0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:275 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", 0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:276 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", -0.5)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:277 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", 0.5)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:278 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", -1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:279 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", 1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:280 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", -1)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:281 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", 1)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:282 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:283 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:284 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:285 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:286 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:287 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:288 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:289 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:290 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:291 +assert_return( + () => invoke($0, `copysign`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:292 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:293 +assert_return( + () => invoke($0, `copysign`, [value("f32", Infinity), value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:294 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:295 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:296 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/f32_bitwise.wast:297 +assert_return( + () => invoke($0, `copysign`, [ + value("f32", Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("f32", Infinity)], +); + +// ./test/core/f32_bitwise.wast:298 +assert_return( + () => invoke($0, `copysign`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:299 +assert_return( + () => invoke($0, `copysign`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:300 +assert_return( + () => invoke($0, `copysign`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:301 +assert_return( + () => invoke($0, `copysign`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:302 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:303 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:304 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:305 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:306 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:307 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:308 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:309 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:310 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.5), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:311 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.5), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:312 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.5), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:313 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.5), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:314 +assert_return( + () => invoke($0, `copysign`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:315 +assert_return( + () => invoke($0, `copysign`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:316 +assert_return( + () => invoke($0, `copysign`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:317 +assert_return( + () => invoke($0, `copysign`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:318 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:319 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:320 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:321 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:322 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:323 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:324 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:325 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:326 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:327 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", Infinity), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:328 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:329 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", Infinity), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:330 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:331 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:332 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:333 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:334 +assert_return(() => invoke($0, `abs`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:335 +assert_return(() => invoke($0, `abs`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:336 +assert_return( + () => invoke($0, `abs`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:337 +assert_return( + () => invoke($0, `abs`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:338 +assert_return( + () => invoke($0, `abs`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:339 +assert_return( + () => invoke($0, `abs`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:340 +assert_return(() => invoke($0, `abs`, [value("f32", -0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32_bitwise.wast:341 +assert_return(() => invoke($0, `abs`, [value("f32", 0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32_bitwise.wast:342 +assert_return(() => invoke($0, `abs`, [value("f32", -1)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:343 +assert_return(() => invoke($0, `abs`, [value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:344 +assert_return(() => invoke($0, `abs`, [value("f32", -6.2831855)]), [value("f32", 6.2831855)]); + +// ./test/core/f32_bitwise.wast:345 +assert_return(() => invoke($0, `abs`, [value("f32", 6.2831855)]), [value("f32", 6.2831855)]); + +// ./test/core/f32_bitwise.wast:346 +assert_return( + () => invoke($0, `abs`, [value("f32", -340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:347 +assert_return( + () => invoke($0, `abs`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:348 +assert_return(() => invoke($0, `abs`, [value("f32", -Infinity)]), [value("f32", Infinity)]); + +// ./test/core/f32_bitwise.wast:349 +assert_return(() => invoke($0, `abs`, [value("f32", Infinity)]), [value("f32", Infinity)]); + +// ./test/core/f32_bitwise.wast:350 +assert_return( + () => invoke($0, `abs`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:351 +assert_return( + () => invoke($0, `abs`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:352 +assert_return(() => invoke($0, `neg`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/f32_bitwise.wast:353 +assert_return(() => invoke($0, `neg`, [value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/f32_bitwise.wast:354 +assert_return( + () => invoke($0, `neg`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:355 +assert_return( + () => invoke($0, `neg`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/f32_bitwise.wast:356 +assert_return( + () => invoke($0, `neg`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:357 +assert_return( + () => invoke($0, `neg`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/f32_bitwise.wast:358 +assert_return(() => invoke($0, `neg`, [value("f32", -0.5)]), [value("f32", 0.5)]); + +// ./test/core/f32_bitwise.wast:359 +assert_return(() => invoke($0, `neg`, [value("f32", 0.5)]), [value("f32", -0.5)]); + +// ./test/core/f32_bitwise.wast:360 +assert_return(() => invoke($0, `neg`, [value("f32", -1)]), [value("f32", 1)]); + +// ./test/core/f32_bitwise.wast:361 +assert_return(() => invoke($0, `neg`, [value("f32", 1)]), [value("f32", -1)]); + +// ./test/core/f32_bitwise.wast:362 +assert_return(() => invoke($0, `neg`, [value("f32", -6.2831855)]), [value("f32", 6.2831855)]); + +// ./test/core/f32_bitwise.wast:363 +assert_return(() => invoke($0, `neg`, [value("f32", 6.2831855)]), [value("f32", -6.2831855)]); + +// ./test/core/f32_bitwise.wast:364 +assert_return( + () => invoke($0, `neg`, [value("f32", -340282350000000000000000000000000000000)]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:365 +assert_return( + () => invoke($0, `neg`, [value("f32", 340282350000000000000000000000000000000)]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/f32_bitwise.wast:366 +assert_return(() => invoke($0, `neg`, [value("f32", -Infinity)]), [value("f32", Infinity)]); + +// ./test/core/f32_bitwise.wast:367 +assert_return(() => invoke($0, `neg`, [value("f32", Infinity)]), [value("f32", -Infinity)]); + +// ./test/core/f32_bitwise.wast:368 +assert_return( + () => invoke($0, `neg`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/f32_bitwise.wast:369 +assert_return( + () => invoke($0, `neg`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/f32_bitwise.wast:374 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.copysign (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32_bitwise.wast:375 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.abs (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32_bitwise.wast:376 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.neg (i64.const 0))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/f32_cmp.wast.js b/js/src/jit-test/tests/wasm/spec/spec/f32_cmp.wast.js new file mode 100644 index 0000000000..290c82783a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/f32_cmp.wast.js @@ -0,0 +1,17342 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/f32_cmp.wast + +// ./test/core/f32_cmp.wast:4 +let $0 = instantiate(`(module + (func (export "eq") (param $$x f32) (param $$y f32) (result i32) (f32.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x f32) (param $$y f32) (result i32) (f32.ne (local.get $$x) (local.get $$y))) + (func (export "lt") (param $$x f32) (param $$y f32) (result i32) (f32.lt (local.get $$x) (local.get $$y))) + (func (export "le") (param $$x f32) (param $$y f32) (result i32) (f32.le (local.get $$x) (local.get $$y))) + (func (export "gt") (param $$x f32) (param $$y f32) (result i32) (f32.gt (local.get $$x) (local.get $$y))) + (func (export "ge") (param $$x f32) (param $$y f32) (result i32) (f32.ge (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/f32_cmp.wast:13 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:14 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:15 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:16 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:17 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:18 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:19 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:20 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:21 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:22 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:23 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:24 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:25 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:26 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:27 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:28 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:29 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:30 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:31 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:32 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:33 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:34 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:35 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:36 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:37 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:38 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:39 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:40 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:41 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:42 +assert_return(() => invoke($0, `eq`, [value("f32", -0), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:43 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:44 +assert_return(() => invoke($0, `eq`, [value("f32", 0), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:45 +assert_return( + () => invoke($0, `eq`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:46 +assert_return( + () => invoke($0, `eq`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:47 +assert_return( + () => invoke($0, `eq`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:48 +assert_return( + () => invoke($0, `eq`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:49 +assert_return( + () => invoke($0, `eq`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:50 +assert_return( + () => invoke($0, `eq`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:51 +assert_return( + () => invoke($0, `eq`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:52 +assert_return( + () => invoke($0, `eq`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:53 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:54 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:55 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:56 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:57 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:58 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:59 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:60 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:61 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:62 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:63 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:64 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:65 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:66 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:67 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:68 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:69 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:70 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:71 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:72 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:73 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:74 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:75 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:76 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:77 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:78 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:79 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:80 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:81 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:82 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:83 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:84 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:85 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:86 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:87 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:88 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:89 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:90 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:91 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:92 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:93 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:94 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:95 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:96 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:97 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:98 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:99 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:100 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:101 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:102 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:103 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:104 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:105 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:106 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:107 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:108 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:109 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:110 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:111 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:112 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:113 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:114 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:115 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:116 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:117 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:118 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:119 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:120 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:121 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:122 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:123 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:124 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:125 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:126 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:127 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:128 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:129 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:130 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:131 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:132 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:133 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:134 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:135 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:136 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:137 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:138 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:139 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:140 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:141 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:142 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:143 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:144 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:145 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:146 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:147 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:148 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:149 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:150 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:151 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:152 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:153 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:154 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:155 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:156 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:157 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:158 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:159 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:160 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:161 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:162 +assert_return(() => invoke($0, `eq`, [value("f32", -0.5), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:163 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:164 +assert_return(() => invoke($0, `eq`, [value("f32", 0.5), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:165 +assert_return( + () => invoke($0, `eq`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:166 +assert_return( + () => invoke($0, `eq`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:167 +assert_return( + () => invoke($0, `eq`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:168 +assert_return( + () => invoke($0, `eq`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:169 +assert_return( + () => invoke($0, `eq`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:170 +assert_return( + () => invoke($0, `eq`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:171 +assert_return( + () => invoke($0, `eq`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:172 +assert_return( + () => invoke($0, `eq`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:173 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:174 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:175 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:176 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:177 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:178 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:179 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:180 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:181 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:182 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:183 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:184 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:185 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:186 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:187 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:188 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:189 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:190 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:191 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:192 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:193 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:194 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:195 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:196 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:197 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:198 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:199 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:200 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:201 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:202 +assert_return(() => invoke($0, `eq`, [value("f32", -1), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:203 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:204 +assert_return(() => invoke($0, `eq`, [value("f32", 1), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:205 +assert_return( + () => invoke($0, `eq`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:206 +assert_return( + () => invoke($0, `eq`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:207 +assert_return( + () => invoke($0, `eq`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:208 +assert_return( + () => invoke($0, `eq`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:209 +assert_return( + () => invoke($0, `eq`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:210 +assert_return( + () => invoke($0, `eq`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:211 +assert_return( + () => invoke($0, `eq`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:212 +assert_return( + () => invoke($0, `eq`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:213 +assert_return(() => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:214 +assert_return(() => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:215 +assert_return(() => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:216 +assert_return(() => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:217 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:218 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:219 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:220 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:221 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:222 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:223 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:224 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:225 +assert_return(() => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:226 +assert_return(() => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:227 +assert_return(() => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:228 +assert_return(() => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:229 +assert_return(() => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:230 +assert_return(() => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:231 +assert_return(() => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:232 +assert_return(() => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:233 +assert_return( + () => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:234 +assert_return( + () => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:235 +assert_return( + () => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:236 +assert_return( + () => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:237 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:238 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:239 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:240 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:241 +assert_return( + () => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:242 +assert_return( + () => invoke($0, `eq`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:243 +assert_return( + () => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:244 +assert_return( + () => invoke($0, `eq`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:245 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:246 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:247 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:248 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:249 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:250 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:251 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:252 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:253 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:254 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:255 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:256 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:257 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:258 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:259 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:260 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:261 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:262 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:263 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:264 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:265 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:266 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:267 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:268 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:269 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:270 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:271 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:272 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:273 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:274 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:275 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:276 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:277 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:278 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:279 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:280 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:281 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:282 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:283 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:284 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:285 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:286 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:287 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:288 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:289 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:290 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:291 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:292 +assert_return( + () => invoke($0, `eq`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:293 +assert_return(() => invoke($0, `eq`, [value("f32", -Infinity), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:294 +assert_return(() => invoke($0, `eq`, [value("f32", -Infinity), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:295 +assert_return(() => invoke($0, `eq`, [value("f32", Infinity), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:296 +assert_return(() => invoke($0, `eq`, [value("f32", Infinity), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:297 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:298 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:299 +assert_return( + () => invoke($0, `eq`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:300 +assert_return( + () => invoke($0, `eq`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:301 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:302 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:303 +assert_return( + () => invoke($0, `eq`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:304 +assert_return( + () => invoke($0, `eq`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:305 +assert_return(() => invoke($0, `eq`, [value("f32", -Infinity), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:306 +assert_return(() => invoke($0, `eq`, [value("f32", -Infinity), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:307 +assert_return(() => invoke($0, `eq`, [value("f32", Infinity), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:308 +assert_return(() => invoke($0, `eq`, [value("f32", Infinity), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:309 +assert_return(() => invoke($0, `eq`, [value("f32", -Infinity), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:310 +assert_return(() => invoke($0, `eq`, [value("f32", -Infinity), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:311 +assert_return(() => invoke($0, `eq`, [value("f32", Infinity), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:312 +assert_return(() => invoke($0, `eq`, [value("f32", Infinity), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:313 +assert_return( + () => invoke($0, `eq`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:314 +assert_return( + () => invoke($0, `eq`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:315 +assert_return( + () => invoke($0, `eq`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:316 +assert_return( + () => invoke($0, `eq`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:317 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:318 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:319 +assert_return( + () => invoke($0, `eq`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:320 +assert_return( + () => invoke($0, `eq`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:321 +assert_return( + () => invoke($0, `eq`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:322 +assert_return( + () => invoke($0, `eq`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:323 +assert_return( + () => invoke($0, `eq`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:324 +assert_return( + () => invoke($0, `eq`, [value("f32", Infinity), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:325 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:326 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:327 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:328 +assert_return( + () => invoke($0, `eq`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:329 +assert_return( + () => invoke($0, `eq`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:330 +assert_return( + () => invoke($0, `eq`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:331 +assert_return( + () => invoke($0, `eq`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:332 +assert_return( + () => invoke($0, `eq`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:333 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:334 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:335 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:336 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:337 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:338 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:339 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:340 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:341 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:342 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:343 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:344 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:345 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:346 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:347 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:348 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:349 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:350 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:351 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:352 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:353 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:354 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:355 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:356 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:357 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:358 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:359 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:360 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:361 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:362 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:363 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:364 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:365 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:366 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:367 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:368 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:369 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:370 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:371 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:372 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:373 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:374 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:375 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:376 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:377 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:378 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:379 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:380 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:381 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:382 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:383 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:384 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:385 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:386 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:387 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:388 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:389 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:390 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:391 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:392 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:393 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:394 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:395 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:396 +assert_return( + () => invoke($0, `eq`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:397 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:398 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:399 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:400 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:401 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:402 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:403 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:404 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:405 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:406 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:407 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:408 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:409 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:410 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:411 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:412 +assert_return( + () => invoke($0, `eq`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:413 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:414 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:415 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:416 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:417 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:418 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:419 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:420 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:421 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:422 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:423 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:424 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:425 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:426 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:427 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:428 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:429 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:430 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:431 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:432 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:433 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:434 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:435 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:436 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:437 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:438 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:439 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:440 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:441 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:442 +assert_return(() => invoke($0, `ne`, [value("f32", -0), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:443 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:444 +assert_return(() => invoke($0, `ne`, [value("f32", 0), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:445 +assert_return( + () => invoke($0, `ne`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:446 +assert_return( + () => invoke($0, `ne`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:447 +assert_return( + () => invoke($0, `ne`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:448 +assert_return( + () => invoke($0, `ne`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:449 +assert_return( + () => invoke($0, `ne`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:450 +assert_return( + () => invoke($0, `ne`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:451 +assert_return( + () => invoke($0, `ne`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:452 +assert_return( + () => invoke($0, `ne`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:453 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:454 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:455 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:456 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:457 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:458 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:459 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:460 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:461 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:462 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:463 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:464 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:465 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:466 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:467 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:468 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:469 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:470 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:471 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:472 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:473 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:474 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:475 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:476 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:477 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:478 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:479 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:480 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:481 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:482 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:483 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:484 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:485 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:486 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:487 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:488 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:489 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:490 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:491 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:492 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:493 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:494 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:495 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:496 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:497 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:498 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:499 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:500 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:501 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:502 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:503 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:504 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:505 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:506 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:507 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:508 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:509 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:510 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:511 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:512 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:513 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:514 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:515 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:516 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:517 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:518 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:519 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:520 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:521 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:522 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:523 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:524 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:525 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:526 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:527 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:528 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:529 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:530 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:531 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:532 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:533 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:534 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:535 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:536 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:537 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:538 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:539 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:540 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:541 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:542 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:543 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:544 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:545 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:546 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:547 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:548 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:549 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:550 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:551 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:552 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:553 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:554 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:555 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:556 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:557 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:558 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:559 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:560 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:561 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:562 +assert_return(() => invoke($0, `ne`, [value("f32", -0.5), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:563 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:564 +assert_return(() => invoke($0, `ne`, [value("f32", 0.5), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:565 +assert_return( + () => invoke($0, `ne`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:566 +assert_return( + () => invoke($0, `ne`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:567 +assert_return( + () => invoke($0, `ne`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:568 +assert_return( + () => invoke($0, `ne`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:569 +assert_return( + () => invoke($0, `ne`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:570 +assert_return( + () => invoke($0, `ne`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:571 +assert_return( + () => invoke($0, `ne`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:572 +assert_return( + () => invoke($0, `ne`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:573 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:574 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:575 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:576 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:577 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:578 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:579 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:580 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:581 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:582 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:583 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:584 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:585 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:586 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:587 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:588 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:589 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:590 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:591 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:592 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:593 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:594 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:595 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:596 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:597 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:598 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:599 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:600 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:601 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:602 +assert_return(() => invoke($0, `ne`, [value("f32", -1), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:603 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:604 +assert_return(() => invoke($0, `ne`, [value("f32", 1), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:605 +assert_return( + () => invoke($0, `ne`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:606 +assert_return( + () => invoke($0, `ne`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:607 +assert_return( + () => invoke($0, `ne`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:608 +assert_return( + () => invoke($0, `ne`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:609 +assert_return( + () => invoke($0, `ne`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:610 +assert_return( + () => invoke($0, `ne`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:611 +assert_return( + () => invoke($0, `ne`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:612 +assert_return( + () => invoke($0, `ne`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:613 +assert_return(() => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:614 +assert_return(() => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:615 +assert_return(() => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:616 +assert_return(() => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:617 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:618 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:619 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:620 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:621 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:622 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:623 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:624 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:625 +assert_return(() => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:626 +assert_return(() => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:627 +assert_return(() => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:628 +assert_return(() => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:629 +assert_return(() => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:630 +assert_return(() => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:631 +assert_return(() => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:632 +assert_return(() => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:633 +assert_return( + () => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:634 +assert_return( + () => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:635 +assert_return( + () => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:636 +assert_return( + () => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:637 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:638 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:639 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:640 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:641 +assert_return( + () => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:642 +assert_return( + () => invoke($0, `ne`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:643 +assert_return( + () => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:644 +assert_return( + () => invoke($0, `ne`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:645 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:646 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:647 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:648 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:649 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:650 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:651 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:652 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:653 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:654 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:655 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:656 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:657 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:658 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:659 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:660 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:661 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:662 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:663 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:664 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:665 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:666 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:667 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:668 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:669 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:670 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:671 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:672 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:673 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:674 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:675 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:676 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:677 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:678 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:679 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:680 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:681 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:682 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:683 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:684 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:685 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:686 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:687 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:688 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:689 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:690 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:691 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:692 +assert_return( + () => invoke($0, `ne`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:693 +assert_return(() => invoke($0, `ne`, [value("f32", -Infinity), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:694 +assert_return(() => invoke($0, `ne`, [value("f32", -Infinity), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:695 +assert_return(() => invoke($0, `ne`, [value("f32", Infinity), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:696 +assert_return(() => invoke($0, `ne`, [value("f32", Infinity), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:697 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:698 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:699 +assert_return( + () => invoke($0, `ne`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:700 +assert_return( + () => invoke($0, `ne`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:701 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:702 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:703 +assert_return( + () => invoke($0, `ne`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:704 +assert_return( + () => invoke($0, `ne`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:705 +assert_return(() => invoke($0, `ne`, [value("f32", -Infinity), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:706 +assert_return(() => invoke($0, `ne`, [value("f32", -Infinity), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:707 +assert_return(() => invoke($0, `ne`, [value("f32", Infinity), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:708 +assert_return(() => invoke($0, `ne`, [value("f32", Infinity), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:709 +assert_return(() => invoke($0, `ne`, [value("f32", -Infinity), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:710 +assert_return(() => invoke($0, `ne`, [value("f32", -Infinity), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:711 +assert_return(() => invoke($0, `ne`, [value("f32", Infinity), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:712 +assert_return(() => invoke($0, `ne`, [value("f32", Infinity), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:713 +assert_return( + () => invoke($0, `ne`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:714 +assert_return( + () => invoke($0, `ne`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:715 +assert_return( + () => invoke($0, `ne`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:716 +assert_return( + () => invoke($0, `ne`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:717 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:718 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:719 +assert_return( + () => invoke($0, `ne`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:720 +assert_return( + () => invoke($0, `ne`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:721 +assert_return( + () => invoke($0, `ne`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:722 +assert_return( + () => invoke($0, `ne`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:723 +assert_return( + () => invoke($0, `ne`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:724 +assert_return( + () => invoke($0, `ne`, [value("f32", Infinity), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:725 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:726 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:727 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:728 +assert_return( + () => invoke($0, `ne`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:729 +assert_return( + () => invoke($0, `ne`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:730 +assert_return( + () => invoke($0, `ne`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:731 +assert_return( + () => invoke($0, `ne`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:732 +assert_return( + () => invoke($0, `ne`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:733 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:734 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:735 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:736 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:737 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:738 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:739 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:740 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:741 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:742 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:743 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:744 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:745 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:746 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:747 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:748 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:749 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:750 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:751 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:752 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:753 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:754 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:755 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:756 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:757 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:758 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:759 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:760 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:761 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:762 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:763 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:764 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:765 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:766 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:767 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:768 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:769 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:770 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:771 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:772 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:773 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:774 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:775 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:776 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:777 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:778 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:779 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:780 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:781 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:782 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:783 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:784 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:785 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:786 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:787 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:788 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:789 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:790 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:791 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:792 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:793 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:794 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:795 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:796 +assert_return( + () => invoke($0, `ne`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:797 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:798 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:799 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:800 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:801 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:802 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:803 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:804 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:805 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:806 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:807 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:808 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:809 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:810 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:811 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:812 +assert_return( + () => invoke($0, `ne`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:813 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:814 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:815 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:816 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:817 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:818 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:819 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:820 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:821 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:822 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:823 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:824 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:825 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:826 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:827 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:828 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:829 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:830 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:831 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:832 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:833 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:834 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:835 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:836 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:837 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:838 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:839 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:840 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:841 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:842 +assert_return(() => invoke($0, `lt`, [value("f32", -0), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:843 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:844 +assert_return(() => invoke($0, `lt`, [value("f32", 0), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:845 +assert_return( + () => invoke($0, `lt`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:846 +assert_return( + () => invoke($0, `lt`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:847 +assert_return( + () => invoke($0, `lt`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:848 +assert_return( + () => invoke($0, `lt`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:849 +assert_return( + () => invoke($0, `lt`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:850 +assert_return( + () => invoke($0, `lt`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:851 +assert_return( + () => invoke($0, `lt`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:852 +assert_return( + () => invoke($0, `lt`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:853 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:854 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:855 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:856 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:857 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:858 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:859 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:860 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:861 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:862 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:863 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:864 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:865 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:866 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:867 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:868 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:869 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:870 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:871 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:872 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:873 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:874 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:875 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:876 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:877 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:878 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:879 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:880 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:881 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:882 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:883 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:884 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:885 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:886 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:887 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:888 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:889 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:890 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:891 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:892 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:893 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:894 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:895 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:896 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:897 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:898 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:899 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:900 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:901 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:902 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:903 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:904 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:905 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:906 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:907 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:908 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:909 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:910 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:911 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:912 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:913 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:914 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:915 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:916 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:917 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:918 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:919 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:920 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:921 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:922 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:923 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:924 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:925 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:926 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:927 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:928 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:929 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:930 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:931 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:932 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:933 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:934 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:935 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:936 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:937 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:938 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:939 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:940 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:941 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:942 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:943 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:944 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:945 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:946 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:947 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:948 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:949 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:950 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:951 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:952 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:953 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:954 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:955 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:956 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:957 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:958 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:959 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:960 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:961 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:962 +assert_return(() => invoke($0, `lt`, [value("f32", -0.5), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:963 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:964 +assert_return(() => invoke($0, `lt`, [value("f32", 0.5), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:965 +assert_return( + () => invoke($0, `lt`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:966 +assert_return( + () => invoke($0, `lt`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:967 +assert_return( + () => invoke($0, `lt`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:968 +assert_return( + () => invoke($0, `lt`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:969 +assert_return( + () => invoke($0, `lt`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:970 +assert_return( + () => invoke($0, `lt`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:971 +assert_return( + () => invoke($0, `lt`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:972 +assert_return( + () => invoke($0, `lt`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:973 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:974 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:975 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:976 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:977 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:978 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:979 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:980 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:981 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:982 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:983 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:984 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:985 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:986 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:987 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:988 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:989 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:990 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:991 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:992 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:993 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:994 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:995 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:996 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:997 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:998 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:999 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1000 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1001 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1002 +assert_return(() => invoke($0, `lt`, [value("f32", -1), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1003 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1004 +assert_return(() => invoke($0, `lt`, [value("f32", 1), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1005 +assert_return( + () => invoke($0, `lt`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1006 +assert_return( + () => invoke($0, `lt`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1007 +assert_return( + () => invoke($0, `lt`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1008 +assert_return( + () => invoke($0, `lt`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1009 +assert_return( + () => invoke($0, `lt`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1010 +assert_return( + () => invoke($0, `lt`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1011 +assert_return( + () => invoke($0, `lt`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1012 +assert_return( + () => invoke($0, `lt`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1013 +assert_return(() => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1014 +assert_return(() => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1015 +assert_return(() => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1016 +assert_return(() => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1017 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1018 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1019 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1020 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1021 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1022 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1023 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1024 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1025 +assert_return(() => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1026 +assert_return(() => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1027 +assert_return(() => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1028 +assert_return(() => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1029 +assert_return(() => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1030 +assert_return(() => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1031 +assert_return(() => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1032 +assert_return(() => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1033 +assert_return( + () => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1034 +assert_return( + () => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1035 +assert_return( + () => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1036 +assert_return( + () => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1037 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1038 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1039 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1040 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1041 +assert_return( + () => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1042 +assert_return( + () => invoke($0, `lt`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1043 +assert_return( + () => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1044 +assert_return( + () => invoke($0, `lt`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1045 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1046 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1047 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1048 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1049 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1050 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1051 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1052 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1053 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1054 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1055 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1056 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1057 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1058 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1059 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1060 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1061 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1062 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1063 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1064 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1065 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1066 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1067 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1068 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1069 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1070 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1071 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1072 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1073 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1074 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1075 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1076 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1077 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1078 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1079 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1080 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1081 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1082 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1083 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1084 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1085 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1086 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1087 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1088 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1089 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1090 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1091 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1092 +assert_return( + () => invoke($0, `lt`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1093 +assert_return(() => invoke($0, `lt`, [value("f32", -Infinity), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1094 +assert_return(() => invoke($0, `lt`, [value("f32", -Infinity), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1095 +assert_return(() => invoke($0, `lt`, [value("f32", Infinity), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1096 +assert_return(() => invoke($0, `lt`, [value("f32", Infinity), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1097 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1098 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1099 +assert_return( + () => invoke($0, `lt`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1100 +assert_return( + () => invoke($0, `lt`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1101 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1102 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1103 +assert_return( + () => invoke($0, `lt`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1104 +assert_return( + () => invoke($0, `lt`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1105 +assert_return(() => invoke($0, `lt`, [value("f32", -Infinity), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1106 +assert_return(() => invoke($0, `lt`, [value("f32", -Infinity), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1107 +assert_return(() => invoke($0, `lt`, [value("f32", Infinity), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1108 +assert_return(() => invoke($0, `lt`, [value("f32", Infinity), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1109 +assert_return(() => invoke($0, `lt`, [value("f32", -Infinity), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1110 +assert_return(() => invoke($0, `lt`, [value("f32", -Infinity), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1111 +assert_return(() => invoke($0, `lt`, [value("f32", Infinity), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1112 +assert_return(() => invoke($0, `lt`, [value("f32", Infinity), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1113 +assert_return( + () => invoke($0, `lt`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1114 +assert_return( + () => invoke($0, `lt`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1115 +assert_return( + () => invoke($0, `lt`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1116 +assert_return( + () => invoke($0, `lt`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1117 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1118 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1119 +assert_return( + () => invoke($0, `lt`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1120 +assert_return( + () => invoke($0, `lt`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1121 +assert_return( + () => invoke($0, `lt`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1122 +assert_return( + () => invoke($0, `lt`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1123 +assert_return( + () => invoke($0, `lt`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1124 +assert_return( + () => invoke($0, `lt`, [value("f32", Infinity), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1125 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1126 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1127 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1128 +assert_return( + () => invoke($0, `lt`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1129 +assert_return( + () => invoke($0, `lt`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1130 +assert_return( + () => invoke($0, `lt`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1131 +assert_return( + () => invoke($0, `lt`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1132 +assert_return( + () => invoke($0, `lt`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1133 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1134 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1135 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1136 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1137 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1138 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1139 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1140 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1141 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1142 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1143 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1144 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1145 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1146 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1147 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1148 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1149 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1150 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1151 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1152 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1153 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1154 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1155 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1156 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1157 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1158 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1159 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1160 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1161 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1162 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1163 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1164 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1165 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1166 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1167 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1168 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1169 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1170 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1171 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1172 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1173 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1174 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1175 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1176 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1177 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1178 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1179 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1180 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1181 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1182 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1183 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1184 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1185 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1186 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1187 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1188 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1189 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1190 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1191 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1192 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1193 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1194 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1195 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1196 +assert_return( + () => invoke($0, `lt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1197 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1198 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1199 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1200 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1201 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1202 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1203 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1204 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1205 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1206 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1207 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1208 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1209 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1210 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1211 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1212 +assert_return( + () => invoke($0, `lt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1213 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1214 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1215 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1216 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1217 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1218 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1219 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1220 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1221 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1222 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1223 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1224 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1225 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1226 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1227 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1228 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1229 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1230 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1231 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1232 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1233 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1234 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1235 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1236 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1237 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1238 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1239 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1240 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1241 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1242 +assert_return(() => invoke($0, `le`, [value("f32", -0), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1243 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1244 +assert_return(() => invoke($0, `le`, [value("f32", 0), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1245 +assert_return( + () => invoke($0, `le`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1246 +assert_return( + () => invoke($0, `le`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1247 +assert_return( + () => invoke($0, `le`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1248 +assert_return( + () => invoke($0, `le`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1249 +assert_return( + () => invoke($0, `le`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1250 +assert_return( + () => invoke($0, `le`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1251 +assert_return( + () => invoke($0, `le`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1252 +assert_return( + () => invoke($0, `le`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1253 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1254 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1255 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1256 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1257 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1258 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1259 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1260 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1261 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1262 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1263 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1264 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1265 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1266 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1267 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1268 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1269 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1270 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1271 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1272 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1273 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1274 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1275 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1276 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1277 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1278 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1279 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1280 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1281 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1282 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1283 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1284 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1285 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1286 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1287 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1288 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1289 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1290 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1291 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1292 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1293 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1294 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1295 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1296 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1297 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1298 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1299 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1300 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1301 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1302 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1303 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1304 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1305 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1306 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1307 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1308 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1309 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1310 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1311 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1312 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1313 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1314 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1315 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1316 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1317 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1318 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1319 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1320 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1321 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1322 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1323 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1324 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1325 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1326 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1327 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1328 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1329 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1330 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1331 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1332 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1333 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1334 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1335 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1336 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1337 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1338 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1339 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1340 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1341 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1342 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1343 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1344 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1345 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1346 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1347 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1348 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1349 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1350 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1351 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1352 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1353 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1354 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1355 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1356 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1357 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1358 +assert_return( + () => invoke($0, `le`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1359 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1360 +assert_return( + () => invoke($0, `le`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1361 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1362 +assert_return(() => invoke($0, `le`, [value("f32", -0.5), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1363 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1364 +assert_return(() => invoke($0, `le`, [value("f32", 0.5), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1365 +assert_return( + () => invoke($0, `le`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1366 +assert_return( + () => invoke($0, `le`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1367 +assert_return( + () => invoke($0, `le`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1368 +assert_return( + () => invoke($0, `le`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1369 +assert_return( + () => invoke($0, `le`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1370 +assert_return( + () => invoke($0, `le`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1371 +assert_return( + () => invoke($0, `le`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1372 +assert_return( + () => invoke($0, `le`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1373 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1374 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1375 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1376 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1377 +assert_return( + () => invoke($0, `le`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1378 +assert_return( + () => invoke($0, `le`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1379 +assert_return( + () => invoke($0, `le`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1380 +assert_return( + () => invoke($0, `le`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1381 +assert_return( + () => invoke($0, `le`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1382 +assert_return( + () => invoke($0, `le`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1383 +assert_return( + () => invoke($0, `le`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1384 +assert_return( + () => invoke($0, `le`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1385 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1386 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1387 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1388 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1389 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1390 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1391 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1392 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1393 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1394 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1395 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", -6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1396 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", 6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1397 +assert_return( + () => invoke($0, `le`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1398 +assert_return( + () => invoke($0, `le`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1399 +assert_return( + () => invoke($0, `le`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1400 +assert_return( + () => invoke($0, `le`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1401 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1402 +assert_return(() => invoke($0, `le`, [value("f32", -1), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1403 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1404 +assert_return(() => invoke($0, `le`, [value("f32", 1), value("f32", Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1405 +assert_return( + () => invoke($0, `le`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1406 +assert_return( + () => invoke($0, `le`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1407 +assert_return( + () => invoke($0, `le`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1408 +assert_return( + () => invoke($0, `le`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1409 +assert_return( + () => invoke($0, `le`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1410 +assert_return( + () => invoke($0, `le`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1411 +assert_return( + () => invoke($0, `le`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1412 +assert_return( + () => invoke($0, `le`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1413 +assert_return(() => invoke($0, `le`, [value("f32", -6.2831855), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1414 +assert_return(() => invoke($0, `le`, [value("f32", -6.2831855), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1415 +assert_return(() => invoke($0, `le`, [value("f32", 6.2831855), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1416 +assert_return(() => invoke($0, `le`, [value("f32", 6.2831855), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1417 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1418 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1419 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1420 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1421 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1422 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1423 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1424 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1425 +assert_return(() => invoke($0, `le`, [value("f32", -6.2831855), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1426 +assert_return(() => invoke($0, `le`, [value("f32", -6.2831855), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1427 +assert_return(() => invoke($0, `le`, [value("f32", 6.2831855), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1428 +assert_return(() => invoke($0, `le`, [value("f32", 6.2831855), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1429 +assert_return(() => invoke($0, `le`, [value("f32", -6.2831855), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1430 +assert_return(() => invoke($0, `le`, [value("f32", -6.2831855), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1431 +assert_return(() => invoke($0, `le`, [value("f32", 6.2831855), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1432 +assert_return(() => invoke($0, `le`, [value("f32", 6.2831855), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1433 +assert_return( + () => invoke($0, `le`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1434 +assert_return( + () => invoke($0, `le`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1435 +assert_return( + () => invoke($0, `le`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1436 +assert_return( + () => invoke($0, `le`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1437 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1438 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1439 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1440 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1441 +assert_return( + () => invoke($0, `le`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1442 +assert_return( + () => invoke($0, `le`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1443 +assert_return( + () => invoke($0, `le`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1444 +assert_return( + () => invoke($0, `le`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1445 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1446 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1447 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1448 +assert_return( + () => invoke($0, `le`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1449 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1450 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1451 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1452 +assert_return( + () => invoke($0, `le`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1453 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1454 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1455 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1456 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1457 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1458 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1459 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1460 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1461 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1462 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1463 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1464 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1465 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1466 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1467 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1468 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1469 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1470 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1471 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1472 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1473 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1474 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1475 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1476 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1477 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1478 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1479 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1480 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1481 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1482 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1483 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1484 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1485 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1486 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1487 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1488 +assert_return( + () => invoke($0, `le`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1489 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1490 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1491 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1492 +assert_return( + () => invoke($0, `le`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1493 +assert_return(() => invoke($0, `le`, [value("f32", -Infinity), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1494 +assert_return(() => invoke($0, `le`, [value("f32", -Infinity), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1495 +assert_return(() => invoke($0, `le`, [value("f32", Infinity), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1496 +assert_return(() => invoke($0, `le`, [value("f32", Infinity), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1497 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1498 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1499 +assert_return( + () => invoke($0, `le`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1500 +assert_return( + () => invoke($0, `le`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1501 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1502 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1503 +assert_return( + () => invoke($0, `le`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1504 +assert_return( + () => invoke($0, `le`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1505 +assert_return(() => invoke($0, `le`, [value("f32", -Infinity), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1506 +assert_return(() => invoke($0, `le`, [value("f32", -Infinity), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1507 +assert_return(() => invoke($0, `le`, [value("f32", Infinity), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1508 +assert_return(() => invoke($0, `le`, [value("f32", Infinity), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1509 +assert_return(() => invoke($0, `le`, [value("f32", -Infinity), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1510 +assert_return(() => invoke($0, `le`, [value("f32", -Infinity), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1511 +assert_return(() => invoke($0, `le`, [value("f32", Infinity), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1512 +assert_return(() => invoke($0, `le`, [value("f32", Infinity), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1513 +assert_return( + () => invoke($0, `le`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1514 +assert_return( + () => invoke($0, `le`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1515 +assert_return( + () => invoke($0, `le`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1516 +assert_return( + () => invoke($0, `le`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1517 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1518 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1519 +assert_return( + () => invoke($0, `le`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1520 +assert_return( + () => invoke($0, `le`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1521 +assert_return( + () => invoke($0, `le`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1522 +assert_return( + () => invoke($0, `le`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1523 +assert_return( + () => invoke($0, `le`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1524 +assert_return( + () => invoke($0, `le`, [value("f32", Infinity), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1525 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1526 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1527 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1528 +assert_return( + () => invoke($0, `le`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1529 +assert_return( + () => invoke($0, `le`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1530 +assert_return( + () => invoke($0, `le`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1531 +assert_return( + () => invoke($0, `le`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1532 +assert_return( + () => invoke($0, `le`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1533 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1534 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1535 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1536 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1537 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1538 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1539 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1540 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1541 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1542 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1543 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1544 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1545 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1546 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1547 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1548 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1549 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1550 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1551 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1552 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1553 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1554 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1555 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1556 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1557 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1558 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1559 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1560 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1561 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1562 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1563 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1564 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1565 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1566 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1567 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1568 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1569 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1570 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1571 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1572 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1573 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1574 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1575 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1576 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1577 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1578 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1579 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1580 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1581 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1582 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1583 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1584 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1585 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1586 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1587 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1588 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1589 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1590 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1591 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1592 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1593 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1594 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1595 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1596 +assert_return( + () => invoke($0, `le`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1597 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1598 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1599 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1600 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1601 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1602 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1603 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1604 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1605 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1606 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1607 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1608 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1609 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1610 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1611 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1612 +assert_return( + () => invoke($0, `le`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1613 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1614 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1615 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1616 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1617 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1618 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1619 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1620 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1621 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1622 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1623 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1624 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1625 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1626 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1627 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1628 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1629 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1630 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1631 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1632 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1633 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1634 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1635 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1636 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1637 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1638 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1639 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1640 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1641 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1642 +assert_return(() => invoke($0, `gt`, [value("f32", -0), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1643 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1644 +assert_return(() => invoke($0, `gt`, [value("f32", 0), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1645 +assert_return( + () => invoke($0, `gt`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1646 +assert_return( + () => invoke($0, `gt`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1647 +assert_return( + () => invoke($0, `gt`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1648 +assert_return( + () => invoke($0, `gt`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1649 +assert_return( + () => invoke($0, `gt`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1650 +assert_return( + () => invoke($0, `gt`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1651 +assert_return( + () => invoke($0, `gt`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1652 +assert_return( + () => invoke($0, `gt`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1653 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1654 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1655 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1656 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1657 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1658 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1659 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1660 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1661 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1662 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1663 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1664 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1665 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1666 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1667 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1668 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1669 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1670 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1671 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1672 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1673 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1674 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1675 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1676 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1677 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1678 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1679 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1680 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1681 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1682 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1683 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1684 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1685 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1686 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1687 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1688 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1689 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1690 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1691 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1692 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1693 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1694 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1695 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1696 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1697 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1698 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1699 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1700 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1701 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1702 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1703 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1704 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1705 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1706 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1707 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1708 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1709 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1710 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1711 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1712 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1713 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1714 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1715 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1716 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1717 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1718 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1719 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1720 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1721 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1722 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1723 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1724 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1725 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1726 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1727 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1728 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1729 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1730 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1731 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1732 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1733 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1734 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1735 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1736 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1737 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1738 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1739 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1740 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1741 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1742 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1743 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1744 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1745 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1746 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1747 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1748 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1749 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1750 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1751 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1752 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1753 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1754 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1755 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1756 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1757 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1758 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1759 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1760 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1761 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1762 +assert_return(() => invoke($0, `gt`, [value("f32", -0.5), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1763 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1764 +assert_return(() => invoke($0, `gt`, [value("f32", 0.5), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1765 +assert_return( + () => invoke($0, `gt`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1766 +assert_return( + () => invoke($0, `gt`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1767 +assert_return( + () => invoke($0, `gt`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1768 +assert_return( + () => invoke($0, `gt`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1769 +assert_return( + () => invoke($0, `gt`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1770 +assert_return( + () => invoke($0, `gt`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1771 +assert_return( + () => invoke($0, `gt`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1772 +assert_return( + () => invoke($0, `gt`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1773 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1774 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1775 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1776 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1777 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1778 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1779 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1780 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1781 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1782 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1783 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1784 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1785 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1786 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1787 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1788 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1789 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1790 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1791 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1792 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1793 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1794 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1795 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1796 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1797 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1798 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1799 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1800 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1801 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1802 +assert_return(() => invoke($0, `gt`, [value("f32", -1), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1803 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1804 +assert_return(() => invoke($0, `gt`, [value("f32", 1), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1805 +assert_return( + () => invoke($0, `gt`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1806 +assert_return( + () => invoke($0, `gt`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1807 +assert_return( + () => invoke($0, `gt`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1808 +assert_return( + () => invoke($0, `gt`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1809 +assert_return( + () => invoke($0, `gt`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1810 +assert_return( + () => invoke($0, `gt`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1811 +assert_return( + () => invoke($0, `gt`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1812 +assert_return( + () => invoke($0, `gt`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1813 +assert_return(() => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1814 +assert_return(() => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1815 +assert_return(() => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1816 +assert_return(() => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1817 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1818 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1819 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1820 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1821 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1822 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1823 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1824 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1825 +assert_return(() => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1826 +assert_return(() => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1827 +assert_return(() => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1828 +assert_return(() => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1829 +assert_return(() => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1830 +assert_return(() => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1831 +assert_return(() => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1832 +assert_return(() => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1833 +assert_return( + () => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1834 +assert_return( + () => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1835 +assert_return( + () => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1836 +assert_return( + () => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1837 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1838 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1839 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1840 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1841 +assert_return( + () => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1842 +assert_return( + () => invoke($0, `gt`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1843 +assert_return( + () => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1844 +assert_return( + () => invoke($0, `gt`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1845 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1846 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1847 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1848 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1849 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1850 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1851 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1852 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1853 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1854 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1855 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1856 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1857 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1858 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1859 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1860 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1861 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1862 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1863 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1864 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1865 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1866 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1867 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1868 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1869 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1870 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1871 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1872 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1873 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1874 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1875 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1876 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1877 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1878 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1879 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1880 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1881 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1882 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1883 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1884 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1885 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1886 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1887 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1888 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1889 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1890 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1891 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1892 +assert_return( + () => invoke($0, `gt`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1893 +assert_return(() => invoke($0, `gt`, [value("f32", -Infinity), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1894 +assert_return(() => invoke($0, `gt`, [value("f32", -Infinity), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1895 +assert_return(() => invoke($0, `gt`, [value("f32", Infinity), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1896 +assert_return(() => invoke($0, `gt`, [value("f32", Infinity), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1897 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1898 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1899 +assert_return( + () => invoke($0, `gt`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1900 +assert_return( + () => invoke($0, `gt`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1901 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1902 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1903 +assert_return( + () => invoke($0, `gt`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1904 +assert_return( + () => invoke($0, `gt`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1905 +assert_return(() => invoke($0, `gt`, [value("f32", -Infinity), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1906 +assert_return(() => invoke($0, `gt`, [value("f32", -Infinity), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1907 +assert_return(() => invoke($0, `gt`, [value("f32", Infinity), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1908 +assert_return(() => invoke($0, `gt`, [value("f32", Infinity), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1909 +assert_return(() => invoke($0, `gt`, [value("f32", -Infinity), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1910 +assert_return(() => invoke($0, `gt`, [value("f32", -Infinity), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:1911 +assert_return(() => invoke($0, `gt`, [value("f32", Infinity), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1912 +assert_return(() => invoke($0, `gt`, [value("f32", Infinity), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:1913 +assert_return( + () => invoke($0, `gt`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1914 +assert_return( + () => invoke($0, `gt`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1915 +assert_return( + () => invoke($0, `gt`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1916 +assert_return( + () => invoke($0, `gt`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1917 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1918 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1919 +assert_return( + () => invoke($0, `gt`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1920 +assert_return( + () => invoke($0, `gt`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1921 +assert_return( + () => invoke($0, `gt`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1922 +assert_return( + () => invoke($0, `gt`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1923 +assert_return( + () => invoke($0, `gt`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:1924 +assert_return( + () => invoke($0, `gt`, [value("f32", Infinity), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1925 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1926 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1927 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1928 +assert_return( + () => invoke($0, `gt`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1929 +assert_return( + () => invoke($0, `gt`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1930 +assert_return( + () => invoke($0, `gt`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1931 +assert_return( + () => invoke($0, `gt`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1932 +assert_return( + () => invoke($0, `gt`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1933 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1934 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1935 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1936 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1937 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1938 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1939 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1940 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1941 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1942 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1943 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1944 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1945 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1946 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1947 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1948 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1949 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1950 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1951 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1952 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1953 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1954 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1955 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1956 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1957 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1958 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1959 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1960 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1961 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1962 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1963 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1964 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1965 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1966 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1967 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1968 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1969 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1970 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1971 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1972 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1973 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1974 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1975 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1976 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1977 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1978 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1979 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1980 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1981 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1982 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1983 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1984 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1985 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1986 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1987 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1988 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1989 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1990 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1991 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1992 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1993 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1994 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1995 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1996 +assert_return( + () => invoke($0, `gt`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1997 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1998 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:1999 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2000 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2001 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2002 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2003 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2004 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2005 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2006 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2007 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2008 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2009 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2010 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2011 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2012 +assert_return( + () => invoke($0, `gt`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2013 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2014 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2015 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2016 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2017 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2018 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2019 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2020 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2021 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2022 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2023 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2024 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2025 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2026 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2027 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2028 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2029 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2030 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2031 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2032 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2033 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2034 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2035 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2036 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2037 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2038 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2039 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2040 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2041 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2042 +assert_return(() => invoke($0, `ge`, [value("f32", -0), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2043 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2044 +assert_return(() => invoke($0, `ge`, [value("f32", 0), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2045 +assert_return( + () => invoke($0, `ge`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2046 +assert_return( + () => invoke($0, `ge`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2047 +assert_return( + () => invoke($0, `ge`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2048 +assert_return( + () => invoke($0, `ge`, [value("f32", -0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2049 +assert_return( + () => invoke($0, `ge`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2050 +assert_return( + () => invoke($0, `ge`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2051 +assert_return( + () => invoke($0, `ge`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2052 +assert_return( + () => invoke($0, `ge`, [value("f32", 0), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2053 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2054 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2055 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2056 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2057 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2058 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2059 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2060 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2061 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2062 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2063 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2064 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2065 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2066 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2067 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2068 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2069 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2070 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2071 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2072 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2073 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2074 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2075 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2076 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2077 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2078 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2079 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2080 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2081 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2082 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2083 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2084 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2085 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2086 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2087 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2088 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2089 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2090 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2091 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2092 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2093 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2094 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2095 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2096 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2097 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2098 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2099 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2100 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2101 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2102 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2103 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2104 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2105 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2106 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2107 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2108 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2109 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2110 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2111 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2112 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2113 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2114 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2115 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2116 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2117 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2118 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2119 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2120 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2121 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2122 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2123 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2124 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2125 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2126 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2127 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2128 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2129 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2130 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2131 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2132 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2133 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2134 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2135 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2136 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2137 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2138 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2139 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2140 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2141 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2142 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2143 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.5), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2144 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.5), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2145 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2146 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2147 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2148 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2149 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2150 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2151 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2152 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2153 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2154 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2155 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2156 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2157 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2158 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2159 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.5), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2160 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 0.5), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2161 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2162 +assert_return(() => invoke($0, `ge`, [value("f32", -0.5), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2163 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2164 +assert_return(() => invoke($0, `ge`, [value("f32", 0.5), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2165 +assert_return( + () => invoke($0, `ge`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2166 +assert_return( + () => invoke($0, `ge`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2167 +assert_return( + () => invoke($0, `ge`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2168 +assert_return( + () => invoke($0, `ge`, [value("f32", -0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2169 +assert_return( + () => invoke($0, `ge`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2170 +assert_return( + () => invoke($0, `ge`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2171 +assert_return( + () => invoke($0, `ge`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2172 +assert_return( + () => invoke($0, `ge`, [value("f32", 0.5), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2173 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2174 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2175 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2176 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2177 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2178 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2179 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2180 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2181 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2182 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2183 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 1), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2184 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2185 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2186 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2187 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2188 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2189 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2190 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2191 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2192 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2193 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2194 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2195 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", -6.2831855)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2196 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", 6.2831855)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2197 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2198 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2199 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 1), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2200 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 1), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2201 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2202 +assert_return(() => invoke($0, `ge`, [value("f32", -1), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2203 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2204 +assert_return(() => invoke($0, `ge`, [value("f32", 1), value("f32", Infinity)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2205 +assert_return( + () => invoke($0, `ge`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2206 +assert_return( + () => invoke($0, `ge`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2207 +assert_return( + () => invoke($0, `ge`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2208 +assert_return( + () => invoke($0, `ge`, [value("f32", -1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2209 +assert_return( + () => invoke($0, `ge`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2210 +assert_return( + () => invoke($0, `ge`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2211 +assert_return( + () => invoke($0, `ge`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2212 +assert_return( + () => invoke($0, `ge`, [value("f32", 1), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2213 +assert_return(() => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2214 +assert_return(() => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2215 +assert_return(() => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2216 +assert_return(() => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2217 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2218 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2219 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2220 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2221 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2222 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2223 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2224 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2225 +assert_return(() => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2226 +assert_return(() => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2227 +assert_return(() => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2228 +assert_return(() => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2229 +assert_return(() => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2230 +assert_return(() => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2231 +assert_return(() => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2232 +assert_return(() => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2233 +assert_return( + () => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2234 +assert_return( + () => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2235 +assert_return( + () => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2236 +assert_return( + () => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2237 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2238 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2239 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2240 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2241 +assert_return( + () => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2242 +assert_return( + () => invoke($0, `ge`, [value("f32", -6.2831855), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2243 +assert_return( + () => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2244 +assert_return( + () => invoke($0, `ge`, [value("f32", 6.2831855), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2245 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2246 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2247 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2248 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2249 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2250 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2251 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2252 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 6.2831855), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2253 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2254 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2255 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2256 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2257 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2258 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2259 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2260 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2261 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2262 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2263 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2264 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2265 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2266 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2267 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2268 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2269 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2270 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2271 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2272 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2273 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2274 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2275 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2276 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 6.2831855), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2277 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2278 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2279 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2280 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2281 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2282 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2283 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2284 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2285 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2286 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2287 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2288 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2289 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2290 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2291 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2292 +assert_return( + () => invoke($0, `ge`, [ + value("f32", 340282350000000000000000000000000000000), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2293 +assert_return(() => invoke($0, `ge`, [value("f32", -Infinity), value("f32", -0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2294 +assert_return(() => invoke($0, `ge`, [value("f32", -Infinity), value("f32", 0)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2295 +assert_return(() => invoke($0, `ge`, [value("f32", Infinity), value("f32", -0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2296 +assert_return(() => invoke($0, `ge`, [value("f32", Infinity), value("f32", 0)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2297 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2298 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2299 +assert_return( + () => invoke($0, `ge`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2300 +assert_return( + () => invoke($0, `ge`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2301 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2302 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2303 +assert_return( + () => invoke($0, `ge`, [ + value("f32", Infinity), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2304 +assert_return( + () => invoke($0, `ge`, [ + value("f32", Infinity), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2305 +assert_return(() => invoke($0, `ge`, [value("f32", -Infinity), value("f32", -0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2306 +assert_return(() => invoke($0, `ge`, [value("f32", -Infinity), value("f32", 0.5)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2307 +assert_return(() => invoke($0, `ge`, [value("f32", Infinity), value("f32", -0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2308 +assert_return(() => invoke($0, `ge`, [value("f32", Infinity), value("f32", 0.5)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2309 +assert_return(() => invoke($0, `ge`, [value("f32", -Infinity), value("f32", -1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2310 +assert_return(() => invoke($0, `ge`, [value("f32", -Infinity), value("f32", 1)]), [value("i32", 0)]); + +// ./test/core/f32_cmp.wast:2311 +assert_return(() => invoke($0, `ge`, [value("f32", Infinity), value("f32", -1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2312 +assert_return(() => invoke($0, `ge`, [value("f32", Infinity), value("f32", 1)]), [value("i32", 1)]); + +// ./test/core/f32_cmp.wast:2313 +assert_return( + () => invoke($0, `ge`, [value("f32", -Infinity), value("f32", -6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2314 +assert_return( + () => invoke($0, `ge`, [value("f32", -Infinity), value("f32", 6.2831855)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2315 +assert_return( + () => invoke($0, `ge`, [value("f32", Infinity), value("f32", -6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2316 +assert_return( + () => invoke($0, `ge`, [value("f32", Infinity), value("f32", 6.2831855)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2317 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2318 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2319 +assert_return( + () => invoke($0, `ge`, [ + value("f32", Infinity), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2320 +assert_return( + () => invoke($0, `ge`, [ + value("f32", Infinity), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2321 +assert_return( + () => invoke($0, `ge`, [value("f32", -Infinity), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2322 +assert_return( + () => invoke($0, `ge`, [value("f32", -Infinity), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2323 +assert_return( + () => invoke($0, `ge`, [value("f32", Infinity), value("f32", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2324 +assert_return( + () => invoke($0, `ge`, [value("f32", Infinity), value("f32", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f32_cmp.wast:2325 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2326 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2327 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2328 +assert_return( + () => invoke($0, `ge`, [ + value("f32", -Infinity), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2329 +assert_return( + () => invoke($0, `ge`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2330 +assert_return( + () => invoke($0, `ge`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0xff])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2331 +assert_return( + () => invoke($0, `ge`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2332 +assert_return( + () => invoke($0, `ge`, [value("f32", Infinity), bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2333 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2334 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2335 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2336 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2337 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2338 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2339 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2340 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2341 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2342 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2343 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2344 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2345 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2346 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2347 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2348 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2349 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2350 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2351 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2352 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2353 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2354 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2355 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2356 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2357 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2358 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2359 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2360 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2361 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2362 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2363 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2364 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2365 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2366 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2367 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2368 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2369 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2370 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", -1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2371 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2372 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2373 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2374 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2375 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2376 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2377 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2378 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2379 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2380 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 6.2831855), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2381 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2382 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2383 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2384 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2385 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2386 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2387 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2388 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2389 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2390 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2391 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2392 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0xff]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2393 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2394 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + value("f32", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2395 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2396 +assert_return( + () => invoke($0, `ge`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), value("f32", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2397 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2398 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2399 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2400 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2401 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2402 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2403 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2404 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2405 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2406 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2407 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2408 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2409 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2410 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2411 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2412 +assert_return( + () => invoke($0, `ge`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f32_cmp.wast:2417 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.eq (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32_cmp.wast:2418 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.ge (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32_cmp.wast:2419 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.gt (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32_cmp.wast:2420 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.le (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32_cmp.wast:2421 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.lt (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f32_cmp.wast:2422 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32.ne (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/f64.wast.js b/js/src/jit-test/tests/wasm/spec/spec/f64.wast.js new file mode 100644 index 0000000000..6bce2a366e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/f64.wast.js @@ -0,0 +1,20658 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/f64.wast + +// ./test/core/f64.wast:5 +let $0 = instantiate(`(module + (func (export "add") (param $$x f64) (param $$y f64) (result f64) (f64.add (local.get $$x) (local.get $$y))) + (func (export "sub") (param $$x f64) (param $$y f64) (result f64) (f64.sub (local.get $$x) (local.get $$y))) + (func (export "mul") (param $$x f64) (param $$y f64) (result f64) (f64.mul (local.get $$x) (local.get $$y))) + (func (export "div") (param $$x f64) (param $$y f64) (result f64) (f64.div (local.get $$x) (local.get $$y))) + (func (export "sqrt") (param $$x f64) (result f64) (f64.sqrt (local.get $$x))) + (func (export "min") (param $$x f64) (param $$y f64) (result f64) (f64.min (local.get $$x) (local.get $$y))) + (func (export "max") (param $$x f64) (param $$y f64) (result f64) (f64.max (local.get $$x) (local.get $$y))) + (func (export "ceil") (param $$x f64) (result f64) (f64.ceil (local.get $$x))) + (func (export "floor") (param $$x f64) (result f64) (f64.floor (local.get $$x))) + (func (export "trunc") (param $$x f64) (result f64) (f64.trunc (local.get $$x))) + (func (export "nearest") (param $$x f64) (result f64) (f64.nearest (local.get $$x))) +)`); + +// ./test/core/f64.wast:19 +assert_return(() => invoke($0, `add`, [value("f64", -0), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:20 +assert_return(() => invoke($0, `add`, [value("f64", -0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:21 +assert_return(() => invoke($0, `add`, [value("f64", 0), value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:22 +assert_return(() => invoke($0, `add`, [value("f64", 0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:23 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:24 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:25 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:26 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:27 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:28 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:29 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:30 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:31 +assert_return(() => invoke($0, `add`, [value("f64", -0), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:32 +assert_return(() => invoke($0, `add`, [value("f64", -0), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:33 +assert_return(() => invoke($0, `add`, [value("f64", 0), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:34 +assert_return(() => invoke($0, `add`, [value("f64", 0), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:35 +assert_return(() => invoke($0, `add`, [value("f64", -0), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:36 +assert_return(() => invoke($0, `add`, [value("f64", -0), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:37 +assert_return(() => invoke($0, `add`, [value("f64", 0), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:38 +assert_return(() => invoke($0, `add`, [value("f64", 0), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:39 +assert_return( + () => invoke($0, `add`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:40 +assert_return( + () => invoke($0, `add`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:41 +assert_return( + () => invoke($0, `add`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:42 +assert_return( + () => invoke($0, `add`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:43 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:44 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:45 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:46 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:47 +assert_return( + () => invoke($0, `add`, [value("f64", -0), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:48 +assert_return( + () => invoke($0, `add`, [value("f64", -0), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:49 +assert_return( + () => invoke($0, `add`, [value("f64", 0), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:50 +assert_return( + () => invoke($0, `add`, [value("f64", 0), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:51 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:52 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:53 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:54 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:55 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:56 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:57 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:58 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:59 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:60 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:61 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:62 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:63 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/f64.wast:64 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:65 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:66 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/f64.wast:67 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ], +); + +// ./test/core/f64.wast:68 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/f64.wast:69 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/f64.wast:70 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ], +); + +// ./test/core/f64.wast:71 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:72 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:73 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:74 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:75 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:76 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:77 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:78 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:79 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:80 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:81 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:82 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:83 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:84 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:85 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:86 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:87 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:88 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:89 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:90 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:91 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:92 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:93 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:94 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:95 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:96 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:97 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:98 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:99 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:100 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:101 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:102 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:103 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ], +); + +// ./test/core/f64.wast:104 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/f64.wast:105 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/f64.wast:106 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ], +); + +// ./test/core/f64.wast:107 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/f64.wast:108 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:109 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:110 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/f64.wast:111 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:112 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:113 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:114 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:115 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:116 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:117 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:118 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:119 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:120 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:121 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:122 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:123 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:124 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:125 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:126 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:127 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:128 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:129 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:130 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:131 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:132 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:133 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:134 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:135 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:136 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:137 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:138 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:139 +assert_return(() => invoke($0, `add`, [value("f64", -0.5), value("f64", -0)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:140 +assert_return(() => invoke($0, `add`, [value("f64", -0.5), value("f64", 0)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:141 +assert_return(() => invoke($0, `add`, [value("f64", 0.5), value("f64", -0)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:142 +assert_return(() => invoke($0, `add`, [value("f64", 0.5), value("f64", 0)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:143 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:144 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:145 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:146 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:147 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:148 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:149 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:150 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:151 +assert_return(() => invoke($0, `add`, [value("f64", -0.5), value("f64", -0.5)]), [value("f64", -1)]); + +// ./test/core/f64.wast:152 +assert_return(() => invoke($0, `add`, [value("f64", -0.5), value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:153 +assert_return(() => invoke($0, `add`, [value("f64", 0.5), value("f64", -0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:154 +assert_return(() => invoke($0, `add`, [value("f64", 0.5), value("f64", 0.5)]), [value("f64", 1)]); + +// ./test/core/f64.wast:155 +assert_return(() => invoke($0, `add`, [value("f64", -0.5), value("f64", -1)]), [value("f64", -1.5)]); + +// ./test/core/f64.wast:156 +assert_return(() => invoke($0, `add`, [value("f64", -0.5), value("f64", 1)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:157 +assert_return(() => invoke($0, `add`, [value("f64", 0.5), value("f64", -1)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:158 +assert_return(() => invoke($0, `add`, [value("f64", 0.5), value("f64", 1)]), [value("f64", 1.5)]); + +// ./test/core/f64.wast:159 +assert_return( + () => invoke($0, `add`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("f64", -6.783185307179586)], +); + +// ./test/core/f64.wast:160 +assert_return( + () => invoke($0, `add`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("f64", 5.783185307179586)], +); + +// ./test/core/f64.wast:161 +assert_return( + () => invoke($0, `add`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("f64", -5.783185307179586)], +); + +// ./test/core/f64.wast:162 +assert_return( + () => invoke($0, `add`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("f64", 6.783185307179586)], +); + +// ./test/core/f64.wast:163 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:164 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:165 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:166 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:167 +assert_return( + () => invoke($0, `add`, [value("f64", -0.5), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:168 +assert_return( + () => invoke($0, `add`, [value("f64", -0.5), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:169 +assert_return( + () => invoke($0, `add`, [value("f64", 0.5), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:170 +assert_return( + () => invoke($0, `add`, [value("f64", 0.5), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:171 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:172 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:173 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:174 +assert_return( + () => invoke($0, `add`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:175 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:176 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:177 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:178 +assert_return( + () => invoke($0, `add`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:179 +assert_return(() => invoke($0, `add`, [value("f64", -1), value("f64", -0)]), [value("f64", -1)]); + +// ./test/core/f64.wast:180 +assert_return(() => invoke($0, `add`, [value("f64", -1), value("f64", 0)]), [value("f64", -1)]); + +// ./test/core/f64.wast:181 +assert_return(() => invoke($0, `add`, [value("f64", 1), value("f64", -0)]), [value("f64", 1)]); + +// ./test/core/f64.wast:182 +assert_return(() => invoke($0, `add`, [value("f64", 1), value("f64", 0)]), [value("f64", 1)]); + +// ./test/core/f64.wast:183 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:184 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:185 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:186 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:187 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:188 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:189 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:190 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:191 +assert_return(() => invoke($0, `add`, [value("f64", -1), value("f64", -0.5)]), [value("f64", -1.5)]); + +// ./test/core/f64.wast:192 +assert_return(() => invoke($0, `add`, [value("f64", -1), value("f64", 0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:193 +assert_return(() => invoke($0, `add`, [value("f64", 1), value("f64", -0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:194 +assert_return(() => invoke($0, `add`, [value("f64", 1), value("f64", 0.5)]), [value("f64", 1.5)]); + +// ./test/core/f64.wast:195 +assert_return(() => invoke($0, `add`, [value("f64", -1), value("f64", -1)]), [value("f64", -2)]); + +// ./test/core/f64.wast:196 +assert_return(() => invoke($0, `add`, [value("f64", -1), value("f64", 1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:197 +assert_return(() => invoke($0, `add`, [value("f64", 1), value("f64", -1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:198 +assert_return(() => invoke($0, `add`, [value("f64", 1), value("f64", 1)]), [value("f64", 2)]); + +// ./test/core/f64.wast:199 +assert_return( + () => invoke($0, `add`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("f64", -7.283185307179586)], +); + +// ./test/core/f64.wast:200 +assert_return( + () => invoke($0, `add`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("f64", 5.283185307179586)], +); + +// ./test/core/f64.wast:201 +assert_return( + () => invoke($0, `add`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("f64", -5.283185307179586)], +); + +// ./test/core/f64.wast:202 +assert_return( + () => invoke($0, `add`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("f64", 7.283185307179586)], +); + +// ./test/core/f64.wast:203 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:204 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:205 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:206 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:207 +assert_return( + () => invoke($0, `add`, [value("f64", -1), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:208 +assert_return( + () => invoke($0, `add`, [value("f64", -1), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:209 +assert_return( + () => invoke($0, `add`, [value("f64", 1), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:210 +assert_return( + () => invoke($0, `add`, [value("f64", 1), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:211 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:212 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:213 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:214 +assert_return( + () => invoke($0, `add`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:215 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:216 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:217 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:218 +assert_return( + () => invoke($0, `add`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:219 +assert_return( + () => invoke($0, `add`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:220 +assert_return( + () => invoke($0, `add`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:221 +assert_return( + () => invoke($0, `add`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:222 +assert_return( + () => invoke($0, `add`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:223 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:224 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:225 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:226 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:227 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:228 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:229 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:230 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:231 +assert_return( + () => invoke($0, `add`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("f64", -6.783185307179586)], +); + +// ./test/core/f64.wast:232 +assert_return( + () => invoke($0, `add`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("f64", -5.783185307179586)], +); + +// ./test/core/f64.wast:233 +assert_return( + () => invoke($0, `add`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("f64", 5.783185307179586)], +); + +// ./test/core/f64.wast:234 +assert_return( + () => invoke($0, `add`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("f64", 6.783185307179586)], +); + +// ./test/core/f64.wast:235 +assert_return( + () => invoke($0, `add`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("f64", -7.283185307179586)], +); + +// ./test/core/f64.wast:236 +assert_return( + () => invoke($0, `add`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("f64", -5.283185307179586)], +); + +// ./test/core/f64.wast:237 +assert_return( + () => invoke($0, `add`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("f64", 5.283185307179586)], +); + +// ./test/core/f64.wast:238 +assert_return( + () => invoke($0, `add`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("f64", 7.283185307179586)], +); + +// ./test/core/f64.wast:239 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", -12.566370614359172)], +); + +// ./test/core/f64.wast:240 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:241 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:242 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 12.566370614359172)], +); + +// ./test/core/f64.wast:243 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:244 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:245 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:246 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:247 +assert_return( + () => invoke($0, `add`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:248 +assert_return( + () => invoke($0, `add`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:249 +assert_return( + () => invoke($0, `add`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:250 +assert_return( + () => invoke($0, `add`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:251 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:252 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:253 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:254 +assert_return( + () => invoke($0, `add`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:255 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:256 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:257 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:258 +assert_return( + () => invoke($0, `add`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:259 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:260 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:261 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:262 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:263 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:264 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:265 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:266 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:267 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:268 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:269 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:270 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:271 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:272 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:273 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:274 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:275 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:276 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:277 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:278 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:279 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:280 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:281 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:282 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:283 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:284 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:285 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:286 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:287 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:288 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:289 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:290 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:291 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:292 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:293 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:294 +assert_return( + () => invoke($0, `add`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:295 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:296 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:297 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:298 +assert_return( + () => invoke($0, `add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:299 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", -0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:300 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", 0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:301 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", -0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:302 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", 0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:303 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:304 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:305 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:306 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:307 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:308 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:309 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:310 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:311 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", -0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:312 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", 0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:313 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", -0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:314 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", 0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:315 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", -1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:316 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", 1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:317 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", -1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:318 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", 1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:319 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:320 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:321 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:322 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:323 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:324 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:325 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:326 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:327 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:328 +assert_return( + () => invoke($0, `add`, [value("f64", -Infinity), value("f64", Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:329 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", -Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:330 +assert_return( + () => invoke($0, `add`, [value("f64", Infinity), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:331 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:332 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:333 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:334 +assert_return( + () => invoke($0, `add`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:335 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:336 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:337 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:338 +assert_return( + () => invoke($0, `add`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:339 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:340 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:341 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:342 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:343 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:344 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:345 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:346 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:347 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:348 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:349 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:350 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:351 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:352 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:353 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:354 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:355 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:356 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:357 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:358 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:359 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:360 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:361 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:362 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:363 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:364 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:365 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:366 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:367 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:368 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:369 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:370 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:371 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:372 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:373 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:374 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:375 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:376 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:377 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:378 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:379 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:380 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:381 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:382 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:383 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:384 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:385 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:386 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:387 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:388 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:389 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:390 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:391 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:392 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:393 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:394 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:395 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:396 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:397 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:398 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:399 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:400 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:401 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:402 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:403 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:404 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:405 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:406 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:407 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:408 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:409 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:410 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:411 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:412 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:413 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:414 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:415 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:416 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:417 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:418 +assert_return( + () => invoke($0, `add`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:419 +assert_return(() => invoke($0, `sub`, [value("f64", -0), value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:420 +assert_return(() => invoke($0, `sub`, [value("f64", -0), value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:421 +assert_return(() => invoke($0, `sub`, [value("f64", 0), value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:422 +assert_return(() => invoke($0, `sub`, [value("f64", 0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:423 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:424 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:425 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:426 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:427 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:428 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:429 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:430 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:431 +assert_return(() => invoke($0, `sub`, [value("f64", -0), value("f64", -0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:432 +assert_return(() => invoke($0, `sub`, [value("f64", -0), value("f64", 0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:433 +assert_return(() => invoke($0, `sub`, [value("f64", 0), value("f64", -0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:434 +assert_return(() => invoke($0, `sub`, [value("f64", 0), value("f64", 0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:435 +assert_return(() => invoke($0, `sub`, [value("f64", -0), value("f64", -1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:436 +assert_return(() => invoke($0, `sub`, [value("f64", -0), value("f64", 1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:437 +assert_return(() => invoke($0, `sub`, [value("f64", 0), value("f64", -1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:438 +assert_return(() => invoke($0, `sub`, [value("f64", 0), value("f64", 1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:439 +assert_return( + () => invoke($0, `sub`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:440 +assert_return( + () => invoke($0, `sub`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:441 +assert_return( + () => invoke($0, `sub`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:442 +assert_return( + () => invoke($0, `sub`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:443 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:444 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:445 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:446 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:447 +assert_return( + () => invoke($0, `sub`, [value("f64", -0), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:448 +assert_return( + () => invoke($0, `sub`, [value("f64", -0), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:449 +assert_return( + () => invoke($0, `sub`, [value("f64", 0), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:450 +assert_return( + () => invoke($0, `sub`, [value("f64", 0), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:451 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:452 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:453 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:454 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:455 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:456 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:457 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:458 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:459 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:460 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:461 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:462 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:463 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:464 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/f64.wast:465 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/f64.wast:466 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:467 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/f64.wast:468 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ], +); + +// ./test/core/f64.wast:469 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ], +); + +// ./test/core/f64.wast:470 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/f64.wast:471 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:472 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:473 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:474 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:475 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:476 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:477 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:478 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:479 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:480 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:481 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:482 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:483 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:484 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:485 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:486 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:487 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:488 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:489 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:490 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:491 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:492 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:493 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:494 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:495 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:496 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:497 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:498 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:499 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:500 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:501 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:502 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:503 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/f64.wast:504 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ], +); + +// ./test/core/f64.wast:505 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ], +); + +// ./test/core/f64.wast:506 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/f64.wast:507 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:508 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/f64.wast:509 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/f64.wast:510 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:511 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:512 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:513 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:514 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:515 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:516 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:517 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:518 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:519 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:520 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:521 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:522 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:523 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:524 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:525 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:526 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:527 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:528 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:529 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:530 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:531 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:532 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:533 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:534 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:535 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:536 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:537 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:538 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:539 +assert_return(() => invoke($0, `sub`, [value("f64", -0.5), value("f64", -0)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:540 +assert_return(() => invoke($0, `sub`, [value("f64", -0.5), value("f64", 0)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:541 +assert_return(() => invoke($0, `sub`, [value("f64", 0.5), value("f64", -0)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:542 +assert_return(() => invoke($0, `sub`, [value("f64", 0.5), value("f64", 0)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:543 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:544 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:545 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:546 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:547 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:548 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:549 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:550 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:551 +assert_return(() => invoke($0, `sub`, [value("f64", -0.5), value("f64", -0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:552 +assert_return(() => invoke($0, `sub`, [value("f64", -0.5), value("f64", 0.5)]), [value("f64", -1)]); + +// ./test/core/f64.wast:553 +assert_return(() => invoke($0, `sub`, [value("f64", 0.5), value("f64", -0.5)]), [value("f64", 1)]); + +// ./test/core/f64.wast:554 +assert_return(() => invoke($0, `sub`, [value("f64", 0.5), value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:555 +assert_return(() => invoke($0, `sub`, [value("f64", -0.5), value("f64", -1)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:556 +assert_return(() => invoke($0, `sub`, [value("f64", -0.5), value("f64", 1)]), [value("f64", -1.5)]); + +// ./test/core/f64.wast:557 +assert_return(() => invoke($0, `sub`, [value("f64", 0.5), value("f64", -1)]), [value("f64", 1.5)]); + +// ./test/core/f64.wast:558 +assert_return(() => invoke($0, `sub`, [value("f64", 0.5), value("f64", 1)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:559 +assert_return( + () => invoke($0, `sub`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("f64", 5.783185307179586)], +); + +// ./test/core/f64.wast:560 +assert_return( + () => invoke($0, `sub`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("f64", -6.783185307179586)], +); + +// ./test/core/f64.wast:561 +assert_return( + () => invoke($0, `sub`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("f64", 6.783185307179586)], +); + +// ./test/core/f64.wast:562 +assert_return( + () => invoke($0, `sub`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("f64", -5.783185307179586)], +); + +// ./test/core/f64.wast:563 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:564 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:565 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:566 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:567 +assert_return( + () => invoke($0, `sub`, [value("f64", -0.5), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:568 +assert_return( + () => invoke($0, `sub`, [value("f64", -0.5), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:569 +assert_return( + () => invoke($0, `sub`, [value("f64", 0.5), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:570 +assert_return( + () => invoke($0, `sub`, [value("f64", 0.5), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:571 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:572 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:573 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:574 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:575 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:576 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:577 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:578 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:579 +assert_return(() => invoke($0, `sub`, [value("f64", -1), value("f64", -0)]), [value("f64", -1)]); + +// ./test/core/f64.wast:580 +assert_return(() => invoke($0, `sub`, [value("f64", -1), value("f64", 0)]), [value("f64", -1)]); + +// ./test/core/f64.wast:581 +assert_return(() => invoke($0, `sub`, [value("f64", 1), value("f64", -0)]), [value("f64", 1)]); + +// ./test/core/f64.wast:582 +assert_return(() => invoke($0, `sub`, [value("f64", 1), value("f64", 0)]), [value("f64", 1)]); + +// ./test/core/f64.wast:583 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:584 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:585 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:586 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:587 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:588 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:589 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:590 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:591 +assert_return(() => invoke($0, `sub`, [value("f64", -1), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:592 +assert_return(() => invoke($0, `sub`, [value("f64", -1), value("f64", 0.5)]), [value("f64", -1.5)]); + +// ./test/core/f64.wast:593 +assert_return(() => invoke($0, `sub`, [value("f64", 1), value("f64", -0.5)]), [value("f64", 1.5)]); + +// ./test/core/f64.wast:594 +assert_return(() => invoke($0, `sub`, [value("f64", 1), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:595 +assert_return(() => invoke($0, `sub`, [value("f64", -1), value("f64", -1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:596 +assert_return(() => invoke($0, `sub`, [value("f64", -1), value("f64", 1)]), [value("f64", -2)]); + +// ./test/core/f64.wast:597 +assert_return(() => invoke($0, `sub`, [value("f64", 1), value("f64", -1)]), [value("f64", 2)]); + +// ./test/core/f64.wast:598 +assert_return(() => invoke($0, `sub`, [value("f64", 1), value("f64", 1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:599 +assert_return( + () => invoke($0, `sub`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("f64", 5.283185307179586)], +); + +// ./test/core/f64.wast:600 +assert_return( + () => invoke($0, `sub`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("f64", -7.283185307179586)], +); + +// ./test/core/f64.wast:601 +assert_return( + () => invoke($0, `sub`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("f64", 7.283185307179586)], +); + +// ./test/core/f64.wast:602 +assert_return( + () => invoke($0, `sub`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("f64", -5.283185307179586)], +); + +// ./test/core/f64.wast:603 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:604 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:605 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:606 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:607 +assert_return( + () => invoke($0, `sub`, [value("f64", -1), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:608 +assert_return( + () => invoke($0, `sub`, [value("f64", -1), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:609 +assert_return( + () => invoke($0, `sub`, [value("f64", 1), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:610 +assert_return( + () => invoke($0, `sub`, [value("f64", 1), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:611 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:612 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:613 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:614 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:615 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:616 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:617 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:618 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:619 +assert_return( + () => invoke($0, `sub`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:620 +assert_return( + () => invoke($0, `sub`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:621 +assert_return( + () => invoke($0, `sub`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:622 +assert_return( + () => invoke($0, `sub`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:623 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:624 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:625 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:626 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:627 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:628 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:629 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:630 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:631 +assert_return( + () => invoke($0, `sub`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("f64", -5.783185307179586)], +); + +// ./test/core/f64.wast:632 +assert_return( + () => invoke($0, `sub`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("f64", -6.783185307179586)], +); + +// ./test/core/f64.wast:633 +assert_return( + () => invoke($0, `sub`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("f64", 6.783185307179586)], +); + +// ./test/core/f64.wast:634 +assert_return( + () => invoke($0, `sub`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("f64", 5.783185307179586)], +); + +// ./test/core/f64.wast:635 +assert_return( + () => invoke($0, `sub`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("f64", -5.283185307179586)], +); + +// ./test/core/f64.wast:636 +assert_return( + () => invoke($0, `sub`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("f64", -7.283185307179586)], +); + +// ./test/core/f64.wast:637 +assert_return( + () => invoke($0, `sub`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("f64", 7.283185307179586)], +); + +// ./test/core/f64.wast:638 +assert_return( + () => invoke($0, `sub`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("f64", 5.283185307179586)], +); + +// ./test/core/f64.wast:639 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:640 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", -12.566370614359172)], +); + +// ./test/core/f64.wast:641 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", 12.566370614359172)], +); + +// ./test/core/f64.wast:642 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:643 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:644 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:645 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:646 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:647 +assert_return( + () => invoke($0, `sub`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:648 +assert_return( + () => invoke($0, `sub`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:649 +assert_return( + () => invoke($0, `sub`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:650 +assert_return( + () => invoke($0, `sub`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:651 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:652 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:653 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:654 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:655 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:656 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:657 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:658 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:659 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:660 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:661 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:662 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:663 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:664 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:665 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:666 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:667 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:668 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:669 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:670 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:671 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:672 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:673 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:674 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:675 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:676 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:677 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:678 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:679 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:680 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:681 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:682 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:683 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:684 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:685 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:686 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:687 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:688 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:689 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:690 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:691 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:692 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:693 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:694 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:695 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:696 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:697 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:698 +assert_return( + () => invoke($0, `sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:699 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", -0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:700 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", 0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:701 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", -0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:702 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", 0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:703 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:704 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:705 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:706 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:707 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:708 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:709 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:710 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:711 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", -0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:712 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", 0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:713 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", -0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:714 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", 0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:715 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", -1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:716 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", 1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:717 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", -1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:718 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", 1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:719 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:720 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:721 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:722 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:723 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:724 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:725 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:726 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:727 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", -Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:728 +assert_return( + () => invoke($0, `sub`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:729 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:730 +assert_return( + () => invoke($0, `sub`, [value("f64", Infinity), value("f64", Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:731 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:732 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:733 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:734 +assert_return( + () => invoke($0, `sub`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:735 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:736 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:737 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:738 +assert_return( + () => invoke($0, `sub`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:739 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:740 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:741 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:742 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:743 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:744 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:745 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:746 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:747 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:748 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:749 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:750 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:751 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:752 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:753 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:754 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:755 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:756 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:757 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:758 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:759 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:760 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:761 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:762 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:763 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:764 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:765 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:766 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:767 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:768 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:769 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:770 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:771 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:772 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:773 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:774 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:775 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:776 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:777 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:778 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:779 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:780 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:781 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:782 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:783 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:784 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:785 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:786 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:787 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:788 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:789 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:790 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:791 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:792 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:793 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:794 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:795 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:796 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:797 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:798 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:799 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:800 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:801 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:802 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:803 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:804 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:805 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:806 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:807 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:808 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:809 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:810 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:811 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:812 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:813 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:814 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:815 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:816 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:817 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:818 +assert_return( + () => invoke($0, `sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:819 +assert_return(() => invoke($0, `mul`, [value("f64", -0), value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:820 +assert_return(() => invoke($0, `mul`, [value("f64", -0), value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:821 +assert_return(() => invoke($0, `mul`, [value("f64", 0), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:822 +assert_return(() => invoke($0, `mul`, [value("f64", 0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:823 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:824 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:825 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:826 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:827 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:828 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:829 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:830 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:831 +assert_return(() => invoke($0, `mul`, [value("f64", -0), value("f64", -0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:832 +assert_return(() => invoke($0, `mul`, [value("f64", -0), value("f64", 0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:833 +assert_return(() => invoke($0, `mul`, [value("f64", 0), value("f64", -0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:834 +assert_return(() => invoke($0, `mul`, [value("f64", 0), value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:835 +assert_return(() => invoke($0, `mul`, [value("f64", -0), value("f64", -1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:836 +assert_return(() => invoke($0, `mul`, [value("f64", -0), value("f64", 1)]), [value("f64", -0)]); + +// ./test/core/f64.wast:837 +assert_return(() => invoke($0, `mul`, [value("f64", 0), value("f64", -1)]), [value("f64", -0)]); + +// ./test/core/f64.wast:838 +assert_return(() => invoke($0, `mul`, [value("f64", 0), value("f64", 1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:839 +assert_return( + () => invoke($0, `mul`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:840 +assert_return( + () => invoke($0, `mul`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:841 +assert_return( + () => invoke($0, `mul`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:842 +assert_return( + () => invoke($0, `mul`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:843 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:844 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:845 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:846 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:847 +assert_return(() => invoke($0, `mul`, [value("f64", -0), value("f64", -Infinity)]), [`canonical_nan`]); + +// ./test/core/f64.wast:848 +assert_return(() => invoke($0, `mul`, [value("f64", -0), value("f64", Infinity)]), [`canonical_nan`]); + +// ./test/core/f64.wast:849 +assert_return(() => invoke($0, `mul`, [value("f64", 0), value("f64", -Infinity)]), [`canonical_nan`]); + +// ./test/core/f64.wast:850 +assert_return(() => invoke($0, `mul`, [value("f64", 0), value("f64", Infinity)]), [`canonical_nan`]); + +// ./test/core/f64.wast:851 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:852 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:853 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:854 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:855 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:856 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:857 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:858 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:859 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:860 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:861 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:862 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:863 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:864 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:865 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:866 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:867 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:868 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:869 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:870 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:871 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:872 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:873 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:874 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:875 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:876 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:877 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:878 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:879 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ], +); + +// ./test/core/f64.wast:880 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ], +); + +// ./test/core/f64.wast:881 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ], +); + +// ./test/core/f64.wast:882 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ], +); + +// ./test/core/f64.wast:883 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0.0000000000000008881784197001251)], +); + +// ./test/core/f64.wast:884 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.0000000000000008881784197001251)], +); + +// ./test/core/f64.wast:885 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.0000000000000008881784197001251)], +); + +// ./test/core/f64.wast:886 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0.0000000000000008881784197001251)], +); + +// ./test/core/f64.wast:887 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:888 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:889 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:890 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:891 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:892 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:893 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:894 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:895 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:896 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:897 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:898 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:899 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:900 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:901 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:902 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:903 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:904 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:905 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:906 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:907 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:908 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:909 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:910 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:911 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ], +); + +// ./test/core/f64.wast:912 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ], +); + +// ./test/core/f64.wast:913 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ], +); + +// ./test/core/f64.wast:914 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ], +); + +// ./test/core/f64.wast:915 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:916 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:917 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:918 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:919 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ], +); + +// ./test/core/f64.wast:920 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ], +); + +// ./test/core/f64.wast:921 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ], +); + +// ./test/core/f64.wast:922 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ], +); + +// ./test/core/f64.wast:923 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 3.9999999999999996)], +); + +// ./test/core/f64.wast:924 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -3.9999999999999996)], +); + +// ./test/core/f64.wast:925 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -3.9999999999999996)], +); + +// ./test/core/f64.wast:926 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 3.9999999999999996)], +); + +// ./test/core/f64.wast:927 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:928 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:929 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:930 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:931 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:932 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:933 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:934 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:935 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:936 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:937 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:938 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:939 +assert_return(() => invoke($0, `mul`, [value("f64", -0.5), value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:940 +assert_return(() => invoke($0, `mul`, [value("f64", -0.5), value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:941 +assert_return(() => invoke($0, `mul`, [value("f64", 0.5), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:942 +assert_return(() => invoke($0, `mul`, [value("f64", 0.5), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:943 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:944 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:945 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:946 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:947 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ], +); + +// ./test/core/f64.wast:948 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ], +); + +// ./test/core/f64.wast:949 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ], +); + +// ./test/core/f64.wast:950 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ], +); + +// ./test/core/f64.wast:951 +assert_return(() => invoke($0, `mul`, [value("f64", -0.5), value("f64", -0.5)]), [value("f64", 0.25)]); + +// ./test/core/f64.wast:952 +assert_return(() => invoke($0, `mul`, [value("f64", -0.5), value("f64", 0.5)]), [value("f64", -0.25)]); + +// ./test/core/f64.wast:953 +assert_return(() => invoke($0, `mul`, [value("f64", 0.5), value("f64", -0.5)]), [value("f64", -0.25)]); + +// ./test/core/f64.wast:954 +assert_return(() => invoke($0, `mul`, [value("f64", 0.5), value("f64", 0.5)]), [value("f64", 0.25)]); + +// ./test/core/f64.wast:955 +assert_return(() => invoke($0, `mul`, [value("f64", -0.5), value("f64", -1)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:956 +assert_return(() => invoke($0, `mul`, [value("f64", -0.5), value("f64", 1)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:957 +assert_return(() => invoke($0, `mul`, [value("f64", 0.5), value("f64", -1)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:958 +assert_return(() => invoke($0, `mul`, [value("f64", 0.5), value("f64", 1)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:959 +assert_return( + () => invoke($0, `mul`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("f64", 3.141592653589793)], +); + +// ./test/core/f64.wast:960 +assert_return( + () => invoke($0, `mul`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("f64", -3.141592653589793)], +); + +// ./test/core/f64.wast:961 +assert_return( + () => invoke($0, `mul`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("f64", -3.141592653589793)], +); + +// ./test/core/f64.wast:962 +assert_return( + () => invoke($0, `mul`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("f64", 3.141592653589793)], +); + +// ./test/core/f64.wast:963 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:964 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:965 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:966 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:967 +assert_return( + () => invoke($0, `mul`, [value("f64", -0.5), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:968 +assert_return( + () => invoke($0, `mul`, [value("f64", -0.5), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:969 +assert_return( + () => invoke($0, `mul`, [value("f64", 0.5), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:970 +assert_return( + () => invoke($0, `mul`, [value("f64", 0.5), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:971 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:972 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:973 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:974 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:975 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:976 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:977 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:978 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:979 +assert_return(() => invoke($0, `mul`, [value("f64", -1), value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:980 +assert_return(() => invoke($0, `mul`, [value("f64", -1), value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:981 +assert_return(() => invoke($0, `mul`, [value("f64", 1), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:982 +assert_return(() => invoke($0, `mul`, [value("f64", 1), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:983 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:984 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:985 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:986 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:987 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:988 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:989 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:990 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:991 +assert_return(() => invoke($0, `mul`, [value("f64", -1), value("f64", -0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:992 +assert_return(() => invoke($0, `mul`, [value("f64", -1), value("f64", 0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:993 +assert_return(() => invoke($0, `mul`, [value("f64", 1), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:994 +assert_return(() => invoke($0, `mul`, [value("f64", 1), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:995 +assert_return(() => invoke($0, `mul`, [value("f64", -1), value("f64", -1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:996 +assert_return(() => invoke($0, `mul`, [value("f64", -1), value("f64", 1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:997 +assert_return(() => invoke($0, `mul`, [value("f64", 1), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:998 +assert_return(() => invoke($0, `mul`, [value("f64", 1), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:999 +assert_return( + () => invoke($0, `mul`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1000 +assert_return( + () => invoke($0, `mul`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1001 +assert_return( + () => invoke($0, `mul`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1002 +assert_return( + () => invoke($0, `mul`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1003 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1004 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1005 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1006 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1007 +assert_return( + () => invoke($0, `mul`, [value("f64", -1), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1008 +assert_return( + () => invoke($0, `mul`, [value("f64", -1), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1009 +assert_return( + () => invoke($0, `mul`, [value("f64", 1), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1010 +assert_return( + () => invoke($0, `mul`, [value("f64", 1), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1011 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1012 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1013 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1014 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1015 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1016 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1017 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1018 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1019 +assert_return( + () => invoke($0, `mul`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1020 +assert_return( + () => invoke($0, `mul`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1021 +assert_return( + () => invoke($0, `mul`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1022 +assert_return( + () => invoke($0, `mul`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1023 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ], +); + +// ./test/core/f64.wast:1024 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ], +); + +// ./test/core/f64.wast:1025 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ], +); + +// ./test/core/f64.wast:1026 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ], +); + +// ./test/core/f64.wast:1027 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ], +); + +// ./test/core/f64.wast:1028 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ], +); + +// ./test/core/f64.wast:1029 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ], +); + +// ./test/core/f64.wast:1030 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ], +); + +// ./test/core/f64.wast:1031 +assert_return( + () => invoke($0, `mul`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("f64", 3.141592653589793)], +); + +// ./test/core/f64.wast:1032 +assert_return( + () => invoke($0, `mul`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("f64", -3.141592653589793)], +); + +// ./test/core/f64.wast:1033 +assert_return( + () => invoke($0, `mul`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("f64", -3.141592653589793)], +); + +// ./test/core/f64.wast:1034 +assert_return( + () => invoke($0, `mul`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("f64", 3.141592653589793)], +); + +// ./test/core/f64.wast:1035 +assert_return( + () => invoke($0, `mul`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1036 +assert_return( + () => invoke($0, `mul`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1037 +assert_return( + () => invoke($0, `mul`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1038 +assert_return( + () => invoke($0, `mul`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1039 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", 39.47841760435743)], +); + +// ./test/core/f64.wast:1040 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", -39.47841760435743)], +); + +// ./test/core/f64.wast:1041 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", -39.47841760435743)], +); + +// ./test/core/f64.wast:1042 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 39.47841760435743)], +); + +// ./test/core/f64.wast:1043 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1044 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1045 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1046 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1047 +assert_return( + () => invoke($0, `mul`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1048 +assert_return( + () => invoke($0, `mul`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1049 +assert_return( + () => invoke($0, `mul`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1050 +assert_return( + () => invoke($0, `mul`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1051 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1052 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1053 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1054 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1055 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1056 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1057 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1058 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1059 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1060 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1061 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1062 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1063 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.0000000000000008881784197001251)], +); + +// ./test/core/f64.wast:1064 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.0000000000000008881784197001251)], +); + +// ./test/core/f64.wast:1065 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.0000000000000008881784197001251)], +); + +// ./test/core/f64.wast:1066 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.0000000000000008881784197001251)], +); + +// ./test/core/f64.wast:1067 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 3.9999999999999996)], +); + +// ./test/core/f64.wast:1068 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -3.9999999999999996)], +); + +// ./test/core/f64.wast:1069 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -3.9999999999999996)], +); + +// ./test/core/f64.wast:1070 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 3.9999999999999996)], +); + +// ./test/core/f64.wast:1071 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1072 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1073 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1074 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1075 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1076 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1077 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1078 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1079 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1080 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1081 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1082 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1083 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1084 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1085 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1086 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1087 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1088 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1089 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1090 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1091 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1092 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1093 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1094 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1095 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1096 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1097 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1098 +assert_return( + () => invoke($0, `mul`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1099 +assert_return(() => invoke($0, `mul`, [value("f64", -Infinity), value("f64", -0)]), [`canonical_nan`]); + +// ./test/core/f64.wast:1100 +assert_return(() => invoke($0, `mul`, [value("f64", -Infinity), value("f64", 0)]), [`canonical_nan`]); + +// ./test/core/f64.wast:1101 +assert_return(() => invoke($0, `mul`, [value("f64", Infinity), value("f64", -0)]), [`canonical_nan`]); + +// ./test/core/f64.wast:1102 +assert_return(() => invoke($0, `mul`, [value("f64", Infinity), value("f64", 0)]), [`canonical_nan`]); + +// ./test/core/f64.wast:1103 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1104 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1105 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1106 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1107 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1108 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1109 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1110 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1111 +assert_return( + () => invoke($0, `mul`, [value("f64", -Infinity), value("f64", -0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1112 +assert_return( + () => invoke($0, `mul`, [value("f64", -Infinity), value("f64", 0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1113 +assert_return( + () => invoke($0, `mul`, [value("f64", Infinity), value("f64", -0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1114 +assert_return( + () => invoke($0, `mul`, [value("f64", Infinity), value("f64", 0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1115 +assert_return( + () => invoke($0, `mul`, [value("f64", -Infinity), value("f64", -1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1116 +assert_return( + () => invoke($0, `mul`, [value("f64", -Infinity), value("f64", 1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1117 +assert_return( + () => invoke($0, `mul`, [value("f64", Infinity), value("f64", -1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1118 +assert_return( + () => invoke($0, `mul`, [value("f64", Infinity), value("f64", 1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1119 +assert_return( + () => invoke($0, `mul`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1120 +assert_return( + () => invoke($0, `mul`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1121 +assert_return( + () => invoke($0, `mul`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1122 +assert_return( + () => invoke($0, `mul`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1123 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1124 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1125 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1126 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1127 +assert_return( + () => invoke($0, `mul`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1128 +assert_return( + () => invoke($0, `mul`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1129 +assert_return( + () => invoke($0, `mul`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1130 +assert_return( + () => invoke($0, `mul`, [value("f64", Infinity), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1131 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1132 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1133 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1134 +assert_return( + () => invoke($0, `mul`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1135 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1136 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1137 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1138 +assert_return( + () => invoke($0, `mul`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1139 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1140 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1141 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1142 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1143 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1144 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1145 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1146 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1147 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1148 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1149 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1150 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1151 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1152 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1153 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1154 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1155 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1156 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1157 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1158 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1159 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1160 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1161 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1162 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1163 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1164 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1165 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1166 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1167 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1168 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1169 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1170 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1171 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1172 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1173 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1174 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1175 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1176 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1177 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1178 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1179 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1180 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1181 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1182 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1183 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1184 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1185 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1186 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1187 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1188 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1189 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1190 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1191 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1192 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1193 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1194 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1195 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1196 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1197 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1198 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1199 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1200 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1201 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1202 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1203 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1204 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1205 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1206 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1207 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1208 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1209 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1210 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1211 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1212 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1213 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1214 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1215 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1216 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1217 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1218 +assert_return( + () => invoke($0, `mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1219 +assert_return(() => invoke($0, `div`, [value("f64", -0), value("f64", -0)]), [`canonical_nan`]); + +// ./test/core/f64.wast:1220 +assert_return(() => invoke($0, `div`, [value("f64", -0), value("f64", 0)]), [`canonical_nan`]); + +// ./test/core/f64.wast:1221 +assert_return(() => invoke($0, `div`, [value("f64", 0), value("f64", -0)]), [`canonical_nan`]); + +// ./test/core/f64.wast:1222 +assert_return(() => invoke($0, `div`, [value("f64", 0), value("f64", 0)]), [`canonical_nan`]); + +// ./test/core/f64.wast:1223 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1224 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1225 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1226 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1227 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1228 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1229 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1230 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1231 +assert_return(() => invoke($0, `div`, [value("f64", -0), value("f64", -0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1232 +assert_return(() => invoke($0, `div`, [value("f64", -0), value("f64", 0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1233 +assert_return(() => invoke($0, `div`, [value("f64", 0), value("f64", -0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1234 +assert_return(() => invoke($0, `div`, [value("f64", 0), value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1235 +assert_return(() => invoke($0, `div`, [value("f64", -0), value("f64", -1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1236 +assert_return(() => invoke($0, `div`, [value("f64", -0), value("f64", 1)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1237 +assert_return(() => invoke($0, `div`, [value("f64", 0), value("f64", -1)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1238 +assert_return(() => invoke($0, `div`, [value("f64", 0), value("f64", 1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1239 +assert_return( + () => invoke($0, `div`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1240 +assert_return( + () => invoke($0, `div`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1241 +assert_return( + () => invoke($0, `div`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1242 +assert_return( + () => invoke($0, `div`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1243 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1244 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1245 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1246 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1247 +assert_return(() => invoke($0, `div`, [value("f64", -0), value("f64", -Infinity)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1248 +assert_return(() => invoke($0, `div`, [value("f64", -0), value("f64", Infinity)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1249 +assert_return(() => invoke($0, `div`, [value("f64", 0), value("f64", -Infinity)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1250 +assert_return(() => invoke($0, `div`, [value("f64", 0), value("f64", Infinity)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1251 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1252 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1253 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1254 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1255 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1256 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1257 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1258 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1259 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1260 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1261 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1262 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1263 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1264 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1265 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1266 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1267 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.0000000000000002220446049250313)], +); + +// ./test/core/f64.wast:1268 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.0000000000000002220446049250313)], +); + +// ./test/core/f64.wast:1269 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.0000000000000002220446049250313)], +); + +// ./test/core/f64.wast:1270 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.0000000000000002220446049250313)], +); + +// ./test/core/f64.wast:1271 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/f64.wast:1272 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/f64.wast:1273 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/f64.wast:1274 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/f64.wast:1275 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1276 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1277 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1278 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1279 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1280 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1281 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1282 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1283 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1284 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1285 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1286 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1287 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1288 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1289 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1290 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1291 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1292 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1293 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1294 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1295 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1296 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1297 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1298 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1299 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1300 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1301 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1302 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1303 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 4503599627370496)], +); + +// ./test/core/f64.wast:1304 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -4503599627370496)], +); + +// ./test/core/f64.wast:1305 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -4503599627370496)], +); + +// ./test/core/f64.wast:1306 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 4503599627370496)], +); + +// ./test/core/f64.wast:1307 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1308 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1309 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1310 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1311 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/f64.wast:1312 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/f64.wast:1313 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/f64.wast:1314 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/f64.wast:1315 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1316 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1317 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1318 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1319 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + ], +); + +// ./test/core/f64.wast:1320 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + ], +); + +// ./test/core/f64.wast:1321 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + ], +); + +// ./test/core/f64.wast:1322 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + ], +); + +// ./test/core/f64.wast:1323 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1324 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1325 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1326 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1327 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1328 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1329 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1330 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1331 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1332 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1333 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1334 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1335 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1336 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1337 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1338 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1339 +assert_return(() => invoke($0, `div`, [value("f64", -0.5), value("f64", -0)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:1340 +assert_return(() => invoke($0, `div`, [value("f64", -0.5), value("f64", 0)]), [value("f64", -Infinity)]); + +// ./test/core/f64.wast:1341 +assert_return(() => invoke($0, `div`, [value("f64", 0.5), value("f64", -0)]), [value("f64", -Infinity)]); + +// ./test/core/f64.wast:1342 +assert_return(() => invoke($0, `div`, [value("f64", 0.5), value("f64", 0)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:1343 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1344 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1345 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1346 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1347 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1348 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1349 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1350 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1351 +assert_return(() => invoke($0, `div`, [value("f64", -0.5), value("f64", -0.5)]), [value("f64", 1)]); + +// ./test/core/f64.wast:1352 +assert_return(() => invoke($0, `div`, [value("f64", -0.5), value("f64", 0.5)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1353 +assert_return(() => invoke($0, `div`, [value("f64", 0.5), value("f64", -0.5)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1354 +assert_return(() => invoke($0, `div`, [value("f64", 0.5), value("f64", 0.5)]), [value("f64", 1)]); + +// ./test/core/f64.wast:1355 +assert_return(() => invoke($0, `div`, [value("f64", -0.5), value("f64", -1)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:1356 +assert_return(() => invoke($0, `div`, [value("f64", -0.5), value("f64", 1)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1357 +assert_return(() => invoke($0, `div`, [value("f64", 0.5), value("f64", -1)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1358 +assert_return(() => invoke($0, `div`, [value("f64", 0.5), value("f64", 1)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:1359 +assert_return( + () => invoke($0, `div`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("f64", 0.07957747154594767)], +); + +// ./test/core/f64.wast:1360 +assert_return( + () => invoke($0, `div`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("f64", -0.07957747154594767)], +); + +// ./test/core/f64.wast:1361 +assert_return( + () => invoke($0, `div`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("f64", -0.07957747154594767)], +); + +// ./test/core/f64.wast:1362 +assert_return( + () => invoke($0, `div`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("f64", 0.07957747154594767)], +); + +// ./test/core/f64.wast:1363 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + ], +); + +// ./test/core/f64.wast:1364 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + ], +); + +// ./test/core/f64.wast:1365 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + ], +); + +// ./test/core/f64.wast:1366 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + ], +); + +// ./test/core/f64.wast:1367 +assert_return(() => invoke($0, `div`, [value("f64", -0.5), value("f64", -Infinity)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1368 +assert_return(() => invoke($0, `div`, [value("f64", -0.5), value("f64", Infinity)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1369 +assert_return(() => invoke($0, `div`, [value("f64", 0.5), value("f64", -Infinity)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1370 +assert_return(() => invoke($0, `div`, [value("f64", 0.5), value("f64", Infinity)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1371 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1372 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1373 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1374 +assert_return( + () => invoke($0, `div`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1375 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1376 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1377 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1378 +assert_return( + () => invoke($0, `div`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1379 +assert_return(() => invoke($0, `div`, [value("f64", -1), value("f64", -0)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:1380 +assert_return(() => invoke($0, `div`, [value("f64", -1), value("f64", 0)]), [value("f64", -Infinity)]); + +// ./test/core/f64.wast:1381 +assert_return(() => invoke($0, `div`, [value("f64", 1), value("f64", -0)]), [value("f64", -Infinity)]); + +// ./test/core/f64.wast:1382 +assert_return(() => invoke($0, `div`, [value("f64", 1), value("f64", 0)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:1383 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1384 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1385 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1386 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1387 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1388 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1389 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1390 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1391 +assert_return(() => invoke($0, `div`, [value("f64", -1), value("f64", -0.5)]), [value("f64", 2)]); + +// ./test/core/f64.wast:1392 +assert_return(() => invoke($0, `div`, [value("f64", -1), value("f64", 0.5)]), [value("f64", -2)]); + +// ./test/core/f64.wast:1393 +assert_return(() => invoke($0, `div`, [value("f64", 1), value("f64", -0.5)]), [value("f64", -2)]); + +// ./test/core/f64.wast:1394 +assert_return(() => invoke($0, `div`, [value("f64", 1), value("f64", 0.5)]), [value("f64", 2)]); + +// ./test/core/f64.wast:1395 +assert_return(() => invoke($0, `div`, [value("f64", -1), value("f64", -1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:1396 +assert_return(() => invoke($0, `div`, [value("f64", -1), value("f64", 1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1397 +assert_return(() => invoke($0, `div`, [value("f64", 1), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1398 +assert_return(() => invoke($0, `div`, [value("f64", 1), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:1399 +assert_return( + () => invoke($0, `div`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("f64", 0.15915494309189535)], +); + +// ./test/core/f64.wast:1400 +assert_return( + () => invoke($0, `div`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("f64", -0.15915494309189535)], +); + +// ./test/core/f64.wast:1401 +assert_return( + () => invoke($0, `div`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("f64", -0.15915494309189535)], +); + +// ./test/core/f64.wast:1402 +assert_return( + () => invoke($0, `div`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("f64", 0.15915494309189535)], +); + +// ./test/core/f64.wast:1403 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ], +); + +// ./test/core/f64.wast:1404 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ], +); + +// ./test/core/f64.wast:1405 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ], +); + +// ./test/core/f64.wast:1406 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ], +); + +// ./test/core/f64.wast:1407 +assert_return(() => invoke($0, `div`, [value("f64", -1), value("f64", -Infinity)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1408 +assert_return(() => invoke($0, `div`, [value("f64", -1), value("f64", Infinity)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1409 +assert_return(() => invoke($0, `div`, [value("f64", 1), value("f64", -Infinity)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1410 +assert_return(() => invoke($0, `div`, [value("f64", 1), value("f64", Infinity)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1411 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1412 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1413 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1414 +assert_return( + () => invoke($0, `div`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1415 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1416 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1417 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1418 +assert_return( + () => invoke($0, `div`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1419 +assert_return( + () => invoke($0, `div`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1420 +assert_return( + () => invoke($0, `div`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1421 +assert_return( + () => invoke($0, `div`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1422 +assert_return( + () => invoke($0, `div`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1423 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1424 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1425 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1426 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1427 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1428 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1429 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1430 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1431 +assert_return( + () => invoke($0, `div`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("f64", 12.566370614359172)], +); + +// ./test/core/f64.wast:1432 +assert_return( + () => invoke($0, `div`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("f64", -12.566370614359172)], +); + +// ./test/core/f64.wast:1433 +assert_return( + () => invoke($0, `div`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("f64", -12.566370614359172)], +); + +// ./test/core/f64.wast:1434 +assert_return( + () => invoke($0, `div`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("f64", 12.566370614359172)], +); + +// ./test/core/f64.wast:1435 +assert_return( + () => invoke($0, `div`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1436 +assert_return( + () => invoke($0, `div`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1437 +assert_return( + () => invoke($0, `div`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1438 +assert_return( + () => invoke($0, `div`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1439 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1440 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1441 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1442 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1443 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + ], +); + +// ./test/core/f64.wast:1444 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + ], +); + +// ./test/core/f64.wast:1445 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + ], +); + +// ./test/core/f64.wast:1446 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + ], +); + +// ./test/core/f64.wast:1447 +assert_return( + () => invoke($0, `div`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1448 +assert_return( + () => invoke($0, `div`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1449 +assert_return( + () => invoke($0, `div`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1450 +assert_return( + () => invoke($0, `div`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1451 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1452 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1453 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1454 +assert_return( + () => invoke($0, `div`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1455 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1456 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1457 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1458 +assert_return( + () => invoke($0, `div`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1459 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1460 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1461 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1462 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1463 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1464 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1465 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1466 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1467 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1468 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1469 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1470 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1471 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1472 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1473 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1474 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1475 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1476 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1477 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1478 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1479 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1480 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1481 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1482 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1483 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1484 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1485 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1486 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1487 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1488 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1489 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1490 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1491 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1492 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1493 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1494 +assert_return( + () => invoke($0, `div`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1495 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1496 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1497 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1498 +assert_return( + () => invoke($0, `div`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1499 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", -0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1500 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", 0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1501 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", -0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1502 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", 0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1503 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1504 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1505 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1506 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1507 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1508 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1509 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1510 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1511 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", -0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1512 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", 0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1513 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", -0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1514 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", 0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1515 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", -1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1516 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", 1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1517 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", -1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1518 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", 1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1519 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1520 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1521 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1522 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1523 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1524 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1525 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1526 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1527 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", -Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1528 +assert_return( + () => invoke($0, `div`, [value("f64", -Infinity), value("f64", Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1529 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", -Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1530 +assert_return( + () => invoke($0, `div`, [value("f64", Infinity), value("f64", Infinity)]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1531 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1532 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1533 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1534 +assert_return( + () => invoke($0, `div`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1535 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1536 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1537 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1538 +assert_return( + () => invoke($0, `div`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1539 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1540 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1541 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1542 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1543 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1544 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1545 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1546 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1547 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1548 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1549 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1550 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1551 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1552 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1553 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1554 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1555 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1556 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1557 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1558 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1559 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1560 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1561 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1562 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1563 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1564 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1565 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1566 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1567 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1568 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1569 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1570 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1571 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1572 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1573 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1574 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1575 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1576 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1577 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1578 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1579 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1580 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1581 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1582 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1583 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1584 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1585 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1586 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1587 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1588 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1589 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1590 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1591 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1592 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1593 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1594 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1595 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1596 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1597 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1598 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1599 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1600 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1601 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1602 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1603 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1604 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1605 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1606 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1607 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1608 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1609 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1610 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1611 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1612 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1613 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1614 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1615 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1616 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1617 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1618 +assert_return( + () => invoke($0, `div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1619 +assert_return(() => invoke($0, `min`, [value("f64", -0), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1620 +assert_return(() => invoke($0, `min`, [value("f64", -0), value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1621 +assert_return(() => invoke($0, `min`, [value("f64", 0), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1622 +assert_return(() => invoke($0, `min`, [value("f64", 0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1623 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1624 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1625 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1626 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1627 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1628 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1629 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1630 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1631 +assert_return(() => invoke($0, `min`, [value("f64", -0), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1632 +assert_return(() => invoke($0, `min`, [value("f64", -0), value("f64", 0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1633 +assert_return(() => invoke($0, `min`, [value("f64", 0), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1634 +assert_return(() => invoke($0, `min`, [value("f64", 0), value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1635 +assert_return(() => invoke($0, `min`, [value("f64", -0), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1636 +assert_return(() => invoke($0, `min`, [value("f64", -0), value("f64", 1)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1637 +assert_return(() => invoke($0, `min`, [value("f64", 0), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1638 +assert_return(() => invoke($0, `min`, [value("f64", 0), value("f64", 1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1639 +assert_return( + () => invoke($0, `min`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1640 +assert_return( + () => invoke($0, `min`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1641 +assert_return( + () => invoke($0, `min`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1642 +assert_return( + () => invoke($0, `min`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1643 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1644 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1645 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1646 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1647 +assert_return( + () => invoke($0, `min`, [value("f64", -0), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1648 +assert_return(() => invoke($0, `min`, [value("f64", -0), value("f64", Infinity)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1649 +assert_return( + () => invoke($0, `min`, [value("f64", 0), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1650 +assert_return(() => invoke($0, `min`, [value("f64", 0), value("f64", Infinity)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1651 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1652 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1653 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1654 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1655 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1656 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1657 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1658 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1659 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1660 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1661 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1662 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1663 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1664 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1665 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1666 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1667 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1668 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1669 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1670 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1671 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1672 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1673 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1674 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1675 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1676 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1677 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1678 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1679 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1680 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1681 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1682 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1683 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1684 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1685 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1686 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1687 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1688 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1689 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1690 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1691 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1692 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1693 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1694 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1695 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1696 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1697 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1698 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1699 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1700 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1701 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1702 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1703 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1704 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1705 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1706 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1707 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1708 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1709 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1710 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1711 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1712 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1713 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1714 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1715 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1716 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1717 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1718 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1719 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1720 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1721 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1722 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1723 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1724 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1725 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1726 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1727 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1728 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1729 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1730 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1731 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1732 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1733 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1734 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1735 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1736 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1737 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1738 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1739 +assert_return(() => invoke($0, `min`, [value("f64", -0.5), value("f64", -0)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1740 +assert_return(() => invoke($0, `min`, [value("f64", -0.5), value("f64", 0)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1741 +assert_return(() => invoke($0, `min`, [value("f64", 0.5), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1742 +assert_return(() => invoke($0, `min`, [value("f64", 0.5), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1743 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1744 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1745 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1746 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1747 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1748 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1749 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1750 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1751 +assert_return(() => invoke($0, `min`, [value("f64", -0.5), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1752 +assert_return(() => invoke($0, `min`, [value("f64", -0.5), value("f64", 0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1753 +assert_return(() => invoke($0, `min`, [value("f64", 0.5), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1754 +assert_return(() => invoke($0, `min`, [value("f64", 0.5), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:1755 +assert_return(() => invoke($0, `min`, [value("f64", -0.5), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1756 +assert_return(() => invoke($0, `min`, [value("f64", -0.5), value("f64", 1)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1757 +assert_return(() => invoke($0, `min`, [value("f64", 0.5), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1758 +assert_return(() => invoke($0, `min`, [value("f64", 0.5), value("f64", 1)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:1759 +assert_return( + () => invoke($0, `min`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1760 +assert_return( + () => invoke($0, `min`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1761 +assert_return( + () => invoke($0, `min`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1762 +assert_return( + () => invoke($0, `min`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:1763 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1764 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1765 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1766 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:1767 +assert_return( + () => invoke($0, `min`, [value("f64", -0.5), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1768 +assert_return( + () => invoke($0, `min`, [value("f64", -0.5), value("f64", Infinity)]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1769 +assert_return( + () => invoke($0, `min`, [value("f64", 0.5), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1770 +assert_return(() => invoke($0, `min`, [value("f64", 0.5), value("f64", Infinity)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:1771 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1772 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1773 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1774 +assert_return( + () => invoke($0, `min`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1775 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1776 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1777 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1778 +assert_return( + () => invoke($0, `min`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1779 +assert_return(() => invoke($0, `min`, [value("f64", -1), value("f64", -0)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1780 +assert_return(() => invoke($0, `min`, [value("f64", -1), value("f64", 0)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1781 +assert_return(() => invoke($0, `min`, [value("f64", 1), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1782 +assert_return(() => invoke($0, `min`, [value("f64", 1), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1783 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1784 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1785 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1786 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1787 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1788 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1789 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1790 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1791 +assert_return(() => invoke($0, `min`, [value("f64", -1), value("f64", -0.5)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1792 +assert_return(() => invoke($0, `min`, [value("f64", -1), value("f64", 0.5)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1793 +assert_return(() => invoke($0, `min`, [value("f64", 1), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:1794 +assert_return(() => invoke($0, `min`, [value("f64", 1), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:1795 +assert_return(() => invoke($0, `min`, [value("f64", -1), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1796 +assert_return(() => invoke($0, `min`, [value("f64", -1), value("f64", 1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1797 +assert_return(() => invoke($0, `min`, [value("f64", 1), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1798 +assert_return(() => invoke($0, `min`, [value("f64", 1), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:1799 +assert_return( + () => invoke($0, `min`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1800 +assert_return( + () => invoke($0, `min`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1801 +assert_return( + () => invoke($0, `min`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1802 +assert_return( + () => invoke($0, `min`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1803 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1804 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1805 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1806 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1807 +assert_return( + () => invoke($0, `min`, [value("f64", -1), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1808 +assert_return(() => invoke($0, `min`, [value("f64", -1), value("f64", Infinity)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1809 +assert_return( + () => invoke($0, `min`, [value("f64", 1), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1810 +assert_return(() => invoke($0, `min`, [value("f64", 1), value("f64", Infinity)]), [value("f64", 1)]); + +// ./test/core/f64.wast:1811 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1812 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1813 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1814 +assert_return( + () => invoke($0, `min`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1815 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1816 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1817 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1818 +assert_return( + () => invoke($0, `min`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1819 +assert_return( + () => invoke($0, `min`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1820 +assert_return( + () => invoke($0, `min`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1821 +assert_return( + () => invoke($0, `min`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1822 +assert_return( + () => invoke($0, `min`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1823 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1824 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1825 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1826 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1827 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1828 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1829 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1830 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1831 +assert_return( + () => invoke($0, `min`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1832 +assert_return( + () => invoke($0, `min`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1833 +assert_return( + () => invoke($0, `min`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1834 +assert_return( + () => invoke($0, `min`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:1835 +assert_return( + () => invoke($0, `min`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1836 +assert_return( + () => invoke($0, `min`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1837 +assert_return( + () => invoke($0, `min`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1838 +assert_return( + () => invoke($0, `min`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1839 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1840 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1841 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1842 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1843 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1844 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1845 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1846 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1847 +assert_return( + () => invoke($0, `min`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1848 +assert_return( + () => invoke($0, `min`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1849 +assert_return( + () => invoke($0, `min`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1850 +assert_return( + () => invoke($0, `min`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1851 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1852 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1853 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1854 +assert_return( + () => invoke($0, `min`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1855 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1856 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1857 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1858 +assert_return( + () => invoke($0, `min`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1859 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1860 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1861 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:1862 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:1863 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1864 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1865 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1866 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1867 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1868 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1869 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1870 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1871 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1872 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1873 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1874 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:1875 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1876 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1877 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:1878 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:1879 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1880 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1881 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1882 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1883 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1884 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1885 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1886 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1887 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1888 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1889 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1890 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1891 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1892 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1893 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1894 +assert_return( + () => invoke($0, `min`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1895 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1896 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1897 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1898 +assert_return( + () => invoke($0, `min`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1899 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", -0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1900 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", 0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1901 +assert_return(() => invoke($0, `min`, [value("f64", Infinity), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:1902 +assert_return(() => invoke($0, `min`, [value("f64", Infinity), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:1903 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1904 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1905 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1906 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:1907 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1908 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1909 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1910 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:1911 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", -0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1912 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", 0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1913 +assert_return( + () => invoke($0, `min`, [value("f64", Infinity), value("f64", -0.5)]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:1914 +assert_return(() => invoke($0, `min`, [value("f64", Infinity), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:1915 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", -1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1916 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", 1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1917 +assert_return(() => invoke($0, `min`, [value("f64", Infinity), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:1918 +assert_return(() => invoke($0, `min`, [value("f64", Infinity), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:1919 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1920 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1921 +assert_return( + () => invoke($0, `min`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:1922 +assert_return( + () => invoke($0, `min`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:1923 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1924 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1925 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1926 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:1927 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1928 +assert_return( + () => invoke($0, `min`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1929 +assert_return( + () => invoke($0, `min`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:1930 +assert_return( + () => invoke($0, `min`, [value("f64", Infinity), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:1931 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1932 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1933 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1934 +assert_return( + () => invoke($0, `min`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1935 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1936 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1937 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1938 +assert_return( + () => invoke($0, `min`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1939 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1940 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1941 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1942 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1943 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1944 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1945 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1946 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1947 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1948 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1949 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1950 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1951 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1952 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1953 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1954 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1955 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1956 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1957 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1958 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1959 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1960 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1961 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1962 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1963 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1964 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1965 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1966 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1967 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1968 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1969 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1970 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1971 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1972 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1973 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1974 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1975 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1976 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1977 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1978 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1979 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1980 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1981 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1982 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1983 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1984 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1985 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1986 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1987 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1988 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1989 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1990 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1991 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1992 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1993 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1994 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1995 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1996 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1997 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:1998 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:1999 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2000 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2001 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2002 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2003 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2004 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2005 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2006 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2007 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2008 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2009 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2010 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2011 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2012 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2013 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2014 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2015 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2016 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2017 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2018 +assert_return( + () => invoke($0, `min`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2019 +assert_return(() => invoke($0, `max`, [value("f64", -0), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2020 +assert_return(() => invoke($0, `max`, [value("f64", -0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2021 +assert_return(() => invoke($0, `max`, [value("f64", 0), value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2022 +assert_return(() => invoke($0, `max`, [value("f64", 0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2023 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2024 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2025 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2026 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2027 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2028 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2029 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2030 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2031 +assert_return(() => invoke($0, `max`, [value("f64", -0), value("f64", -0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2032 +assert_return(() => invoke($0, `max`, [value("f64", -0), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2033 +assert_return(() => invoke($0, `max`, [value("f64", 0), value("f64", -0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2034 +assert_return(() => invoke($0, `max`, [value("f64", 0), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2035 +assert_return(() => invoke($0, `max`, [value("f64", -0), value("f64", -1)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2036 +assert_return(() => invoke($0, `max`, [value("f64", -0), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2037 +assert_return(() => invoke($0, `max`, [value("f64", 0), value("f64", -1)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2038 +assert_return(() => invoke($0, `max`, [value("f64", 0), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2039 +assert_return( + () => invoke($0, `max`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2040 +assert_return( + () => invoke($0, `max`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2041 +assert_return( + () => invoke($0, `max`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2042 +assert_return( + () => invoke($0, `max`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2043 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2044 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2045 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2046 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2047 +assert_return(() => invoke($0, `max`, [value("f64", -0), value("f64", -Infinity)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2048 +assert_return( + () => invoke($0, `max`, [value("f64", -0), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2049 +assert_return(() => invoke($0, `max`, [value("f64", 0), value("f64", -Infinity)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2050 +assert_return( + () => invoke($0, `max`, [value("f64", 0), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2051 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2052 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2053 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2054 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2055 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2056 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2057 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2058 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2059 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2060 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2061 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2062 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2063 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2064 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2065 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2066 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2067 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2068 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2069 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2070 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2071 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2072 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2073 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2074 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2075 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2076 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2077 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2078 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2079 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2080 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2081 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2082 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2083 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2084 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2085 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2086 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2087 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2088 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2089 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2090 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2091 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2092 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2093 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2094 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2095 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2096 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2097 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2098 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2099 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2100 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2101 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2102 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2103 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2104 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2105 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2106 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2107 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2108 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2109 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2110 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2111 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2112 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2113 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2114 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2115 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2116 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2117 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2118 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2119 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2120 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2121 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2122 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2123 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2124 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2125 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2126 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2127 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2128 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2129 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2130 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2131 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2132 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2133 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2134 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2135 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2136 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2137 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2138 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2139 +assert_return(() => invoke($0, `max`, [value("f64", -0.5), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2140 +assert_return(() => invoke($0, `max`, [value("f64", -0.5), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2141 +assert_return(() => invoke($0, `max`, [value("f64", 0.5), value("f64", -0)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2142 +assert_return(() => invoke($0, `max`, [value("f64", 0.5), value("f64", 0)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2143 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2144 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2145 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2146 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2147 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2148 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2149 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2150 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2151 +assert_return(() => invoke($0, `max`, [value("f64", -0.5), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:2152 +assert_return(() => invoke($0, `max`, [value("f64", -0.5), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2153 +assert_return(() => invoke($0, `max`, [value("f64", 0.5), value("f64", -0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2154 +assert_return(() => invoke($0, `max`, [value("f64", 0.5), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2155 +assert_return(() => invoke($0, `max`, [value("f64", -0.5), value("f64", -1)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:2156 +assert_return(() => invoke($0, `max`, [value("f64", -0.5), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2157 +assert_return(() => invoke($0, `max`, [value("f64", 0.5), value("f64", -1)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2158 +assert_return(() => invoke($0, `max`, [value("f64", 0.5), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2159 +assert_return( + () => invoke($0, `max`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:2160 +assert_return( + () => invoke($0, `max`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2161 +assert_return( + () => invoke($0, `max`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2162 +assert_return( + () => invoke($0, `max`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2163 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:2164 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2165 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2166 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2167 +assert_return( + () => invoke($0, `max`, [value("f64", -0.5), value("f64", -Infinity)]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:2168 +assert_return( + () => invoke($0, `max`, [value("f64", -0.5), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2169 +assert_return( + () => invoke($0, `max`, [value("f64", 0.5), value("f64", -Infinity)]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2170 +assert_return( + () => invoke($0, `max`, [value("f64", 0.5), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2171 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2172 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2173 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2174 +assert_return( + () => invoke($0, `max`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2175 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2176 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2177 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2178 +assert_return( + () => invoke($0, `max`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2179 +assert_return(() => invoke($0, `max`, [value("f64", -1), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2180 +assert_return(() => invoke($0, `max`, [value("f64", -1), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2181 +assert_return(() => invoke($0, `max`, [value("f64", 1), value("f64", -0)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2182 +assert_return(() => invoke($0, `max`, [value("f64", 1), value("f64", 0)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2183 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2184 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2185 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2186 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2187 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2188 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2189 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2190 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2191 +assert_return(() => invoke($0, `max`, [value("f64", -1), value("f64", -0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64.wast:2192 +assert_return(() => invoke($0, `max`, [value("f64", -1), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64.wast:2193 +assert_return(() => invoke($0, `max`, [value("f64", 1), value("f64", -0.5)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2194 +assert_return(() => invoke($0, `max`, [value("f64", 1), value("f64", 0.5)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2195 +assert_return(() => invoke($0, `max`, [value("f64", -1), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:2196 +assert_return(() => invoke($0, `max`, [value("f64", -1), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2197 +assert_return(() => invoke($0, `max`, [value("f64", 1), value("f64", -1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2198 +assert_return(() => invoke($0, `max`, [value("f64", 1), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2199 +assert_return( + () => invoke($0, `max`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:2200 +assert_return( + () => invoke($0, `max`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2201 +assert_return( + () => invoke($0, `max`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2202 +assert_return( + () => invoke($0, `max`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2203 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:2204 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2205 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2206 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2207 +assert_return(() => invoke($0, `max`, [value("f64", -1), value("f64", -Infinity)]), [value("f64", -1)]); + +// ./test/core/f64.wast:2208 +assert_return( + () => invoke($0, `max`, [value("f64", -1), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2209 +assert_return(() => invoke($0, `max`, [value("f64", 1), value("f64", -Infinity)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2210 +assert_return( + () => invoke($0, `max`, [value("f64", 1), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2211 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2212 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2213 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2214 +assert_return( + () => invoke($0, `max`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2215 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2216 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2217 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2218 +assert_return( + () => invoke($0, `max`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2219 +assert_return( + () => invoke($0, `max`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2220 +assert_return( + () => invoke($0, `max`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2221 +assert_return( + () => invoke($0, `max`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2222 +assert_return( + () => invoke($0, `max`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2223 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2224 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2225 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2226 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2227 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2228 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2229 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2230 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2231 +assert_return( + () => invoke($0, `max`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:2232 +assert_return( + () => invoke($0, `max`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2233 +assert_return( + () => invoke($0, `max`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2234 +assert_return( + () => invoke($0, `max`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2235 +assert_return( + () => invoke($0, `max`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:2236 +assert_return( + () => invoke($0, `max`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2237 +assert_return( + () => invoke($0, `max`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2238 +assert_return( + () => invoke($0, `max`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2239 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:2240 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2241 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2242 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2243 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:2244 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2245 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2246 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2247 +assert_return( + () => invoke($0, `max`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:2248 +assert_return( + () => invoke($0, `max`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2249 +assert_return( + () => invoke($0, `max`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2250 +assert_return( + () => invoke($0, `max`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2251 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2252 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2253 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2254 +assert_return( + () => invoke($0, `max`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2255 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2256 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2257 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2258 +assert_return( + () => invoke($0, `max`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2259 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2260 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2261 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2262 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2263 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2264 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2265 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2266 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2267 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2268 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2269 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2270 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2271 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:2272 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2273 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2274 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2275 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:2276 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2277 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2278 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2279 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:2280 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2281 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2282 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2283 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2284 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2285 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2286 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2287 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2288 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2289 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2290 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2291 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2292 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2293 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2294 +assert_return( + () => invoke($0, `max`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2295 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2296 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2297 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2298 +assert_return( + () => invoke($0, `max`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2299 +assert_return(() => invoke($0, `max`, [value("f64", -Infinity), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2300 +assert_return(() => invoke($0, `max`, [value("f64", -Infinity), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2301 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", -0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2302 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", 0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2303 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2304 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64.wast:2305 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2306 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2307 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2308 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64.wast:2309 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2310 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2311 +assert_return( + () => invoke($0, `max`, [value("f64", -Infinity), value("f64", -0.5)]), + [value("f64", -0.5)], +); + +// ./test/core/f64.wast:2312 +assert_return( + () => invoke($0, `max`, [value("f64", -Infinity), value("f64", 0.5)]), + [value("f64", 0.5)], +); + +// ./test/core/f64.wast:2313 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", -0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2314 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", 0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2315 +assert_return(() => invoke($0, `max`, [value("f64", -Infinity), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:2316 +assert_return(() => invoke($0, `max`, [value("f64", -Infinity), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2317 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", -1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2318 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", 1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2319 +assert_return( + () => invoke($0, `max`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64.wast:2320 +assert_return( + () => invoke($0, `max`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64.wast:2321 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2322 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2323 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2324 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2325 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2326 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2327 +assert_return( + () => invoke($0, `max`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64.wast:2328 +assert_return( + () => invoke($0, `max`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2329 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2330 +assert_return( + () => invoke($0, `max`, [value("f64", Infinity), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64.wast:2331 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2332 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2333 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2334 +assert_return( + () => invoke($0, `max`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2335 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2336 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2337 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2338 +assert_return( + () => invoke($0, `max`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2339 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2340 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2341 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2342 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2343 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2344 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2345 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2346 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2347 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2348 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2349 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2350 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2351 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2352 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2353 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2354 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2355 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2356 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2357 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2358 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2359 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2360 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2361 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2362 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2363 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2364 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2365 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2366 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2367 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2368 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2369 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2370 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2371 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2372 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2373 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2374 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2375 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2376 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2377 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2378 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2379 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2380 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2381 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2382 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2383 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2384 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2385 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2386 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2387 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2388 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2389 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2390 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2391 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2392 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2393 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2394 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2395 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2396 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2397 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2398 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2399 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2400 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2401 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2402 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2403 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2404 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2405 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2406 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2407 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2408 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2409 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2410 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2411 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2412 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2413 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2414 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2415 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2416 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2417 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2418 +assert_return( + () => invoke($0, `max`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2419 +assert_return(() => invoke($0, `sqrt`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2420 +assert_return(() => invoke($0, `sqrt`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2421 +assert_return( + () => invoke($0, `sqrt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2422 +assert_return( + () => invoke($0, `sqrt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022227587494850775), + ], +); + +// ./test/core/f64.wast:2423 +assert_return( + () => invoke($0, `sqrt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2424 +assert_return( + () => invoke($0, `sqrt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014916681462400413), + ], +); + +// ./test/core/f64.wast:2425 +assert_return(() => invoke($0, `sqrt`, [value("f64", -0.5)]), [`canonical_nan`]); + +// ./test/core/f64.wast:2426 +assert_return(() => invoke($0, `sqrt`, [value("f64", 0.5)]), [value("f64", 0.7071067811865476)]); + +// ./test/core/f64.wast:2427 +assert_return(() => invoke($0, `sqrt`, [value("f64", -1)]), [`canonical_nan`]); + +// ./test/core/f64.wast:2428 +assert_return(() => invoke($0, `sqrt`, [value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2429 +assert_return(() => invoke($0, `sqrt`, [value("f64", -6.283185307179586)]), [`canonical_nan`]); + +// ./test/core/f64.wast:2430 +assert_return( + () => invoke($0, `sqrt`, [value("f64", 6.283185307179586)]), + [value("f64", 2.5066282746310002)], +); + +// ./test/core/f64.wast:2431 +assert_return( + () => invoke($0, `sqrt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2432 +assert_return( + () => invoke($0, `sqrt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 13407807929942596000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2433 +assert_return(() => invoke($0, `sqrt`, [value("f64", -Infinity)]), [`canonical_nan`]); + +// ./test/core/f64.wast:2434 +assert_return(() => invoke($0, `sqrt`, [value("f64", Infinity)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:2435 +assert_return( + () => invoke($0, `sqrt`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2436 +assert_return( + () => invoke($0, `sqrt`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2437 +assert_return( + () => invoke($0, `sqrt`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2438 +assert_return( + () => invoke($0, `sqrt`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2439 +assert_return(() => invoke($0, `floor`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2440 +assert_return(() => invoke($0, `floor`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2441 +assert_return( + () => invoke($0, `floor`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:2442 +assert_return( + () => invoke($0, `floor`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2443 +assert_return( + () => invoke($0, `floor`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64.wast:2444 +assert_return( + () => invoke($0, `floor`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2445 +assert_return(() => invoke($0, `floor`, [value("f64", -0.5)]), [value("f64", -1)]); + +// ./test/core/f64.wast:2446 +assert_return(() => invoke($0, `floor`, [value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2447 +assert_return(() => invoke($0, `floor`, [value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:2448 +assert_return(() => invoke($0, `floor`, [value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2449 +assert_return(() => invoke($0, `floor`, [value("f64", -6.283185307179586)]), [value("f64", -7)]); + +// ./test/core/f64.wast:2450 +assert_return(() => invoke($0, `floor`, [value("f64", 6.283185307179586)]), [value("f64", 6)]); + +// ./test/core/f64.wast:2451 +assert_return( + () => invoke($0, `floor`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2452 +assert_return( + () => invoke($0, `floor`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2453 +assert_return(() => invoke($0, `floor`, [value("f64", -Infinity)]), [value("f64", -Infinity)]); + +// ./test/core/f64.wast:2454 +assert_return(() => invoke($0, `floor`, [value("f64", Infinity)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:2455 +assert_return( + () => invoke($0, `floor`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2456 +assert_return( + () => invoke($0, `floor`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2457 +assert_return( + () => invoke($0, `floor`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2458 +assert_return( + () => invoke($0, `floor`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2459 +assert_return(() => invoke($0, `ceil`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2460 +assert_return(() => invoke($0, `ceil`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2461 +assert_return( + () => invoke($0, `ceil`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2462 +assert_return( + () => invoke($0, `ceil`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2463 +assert_return( + () => invoke($0, `ceil`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2464 +assert_return( + () => invoke($0, `ceil`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64.wast:2465 +assert_return(() => invoke($0, `ceil`, [value("f64", -0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2466 +assert_return(() => invoke($0, `ceil`, [value("f64", 0.5)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2467 +assert_return(() => invoke($0, `ceil`, [value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:2468 +assert_return(() => invoke($0, `ceil`, [value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2469 +assert_return(() => invoke($0, `ceil`, [value("f64", -6.283185307179586)]), [value("f64", -6)]); + +// ./test/core/f64.wast:2470 +assert_return(() => invoke($0, `ceil`, [value("f64", 6.283185307179586)]), [value("f64", 7)]); + +// ./test/core/f64.wast:2471 +assert_return( + () => invoke($0, `ceil`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2472 +assert_return( + () => invoke($0, `ceil`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2473 +assert_return(() => invoke($0, `ceil`, [value("f64", -Infinity)]), [value("f64", -Infinity)]); + +// ./test/core/f64.wast:2474 +assert_return(() => invoke($0, `ceil`, [value("f64", Infinity)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:2475 +assert_return( + () => invoke($0, `ceil`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2476 +assert_return( + () => invoke($0, `ceil`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2477 +assert_return( + () => invoke($0, `ceil`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2478 +assert_return( + () => invoke($0, `ceil`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2479 +assert_return(() => invoke($0, `trunc`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2480 +assert_return(() => invoke($0, `trunc`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2481 +assert_return( + () => invoke($0, `trunc`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2482 +assert_return( + () => invoke($0, `trunc`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2483 +assert_return( + () => invoke($0, `trunc`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2484 +assert_return( + () => invoke($0, `trunc`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2485 +assert_return(() => invoke($0, `trunc`, [value("f64", -0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2486 +assert_return(() => invoke($0, `trunc`, [value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2487 +assert_return(() => invoke($0, `trunc`, [value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:2488 +assert_return(() => invoke($0, `trunc`, [value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2489 +assert_return(() => invoke($0, `trunc`, [value("f64", -6.283185307179586)]), [value("f64", -6)]); + +// ./test/core/f64.wast:2490 +assert_return(() => invoke($0, `trunc`, [value("f64", 6.283185307179586)]), [value("f64", 6)]); + +// ./test/core/f64.wast:2491 +assert_return( + () => invoke($0, `trunc`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2492 +assert_return( + () => invoke($0, `trunc`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2493 +assert_return(() => invoke($0, `trunc`, [value("f64", -Infinity)]), [value("f64", -Infinity)]); + +// ./test/core/f64.wast:2494 +assert_return(() => invoke($0, `trunc`, [value("f64", Infinity)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:2495 +assert_return( + () => invoke($0, `trunc`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2496 +assert_return( + () => invoke($0, `trunc`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2497 +assert_return( + () => invoke($0, `trunc`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2498 +assert_return( + () => invoke($0, `trunc`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2499 +assert_return(() => invoke($0, `nearest`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2500 +assert_return(() => invoke($0, `nearest`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2501 +assert_return( + () => invoke($0, `nearest`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2502 +assert_return( + () => invoke($0, `nearest`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2503 +assert_return( + () => invoke($0, `nearest`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64.wast:2504 +assert_return( + () => invoke($0, `nearest`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64.wast:2505 +assert_return(() => invoke($0, `nearest`, [value("f64", -0.5)]), [value("f64", -0)]); + +// ./test/core/f64.wast:2506 +assert_return(() => invoke($0, `nearest`, [value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64.wast:2507 +assert_return(() => invoke($0, `nearest`, [value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64.wast:2508 +assert_return(() => invoke($0, `nearest`, [value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64.wast:2509 +assert_return(() => invoke($0, `nearest`, [value("f64", -6.283185307179586)]), [value("f64", -6)]); + +// ./test/core/f64.wast:2510 +assert_return(() => invoke($0, `nearest`, [value("f64", 6.283185307179586)]), [value("f64", 6)]); + +// ./test/core/f64.wast:2511 +assert_return( + () => invoke($0, `nearest`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2512 +assert_return( + () => invoke($0, `nearest`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64.wast:2513 +assert_return(() => invoke($0, `nearest`, [value("f64", -Infinity)]), [value("f64", -Infinity)]); + +// ./test/core/f64.wast:2514 +assert_return(() => invoke($0, `nearest`, [value("f64", Infinity)]), [value("f64", Infinity)]); + +// ./test/core/f64.wast:2515 +assert_return( + () => invoke($0, `nearest`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2516 +assert_return( + () => invoke($0, `nearest`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2517 +assert_return( + () => invoke($0, `nearest`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/f64.wast:2518 +assert_return( + () => invoke($0, `nearest`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/f64.wast:2523 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.add (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2524 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.div (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2525 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.max (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2526 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.min (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2527 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.mul (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2528 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.sub (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2529 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.ceil (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2530 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.floor (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2531 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.nearest (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2532 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.sqrt (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2533 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.trunc (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64.wast:2536 +assert_malformed( + () => instantiate(`(func (result f64) (f64.const nan:arithmetic)) `), + `unexpected token`, +); + +// ./test/core/f64.wast:2540 +assert_malformed( + () => instantiate(`(func (result f64) (f64.const nan:canonical)) `), + `unexpected token`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/f64_bitwise.wast.js b/js/src/jit-test/tests/wasm/spec/spec/f64_bitwise.wast.js new file mode 100644 index 0000000000..3fc6e365b9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/f64_bitwise.wast.js @@ -0,0 +1,3032 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/f64_bitwise.wast + +// ./test/core/f64_bitwise.wast:4 +let $0 = instantiate(`(module + (func (export "abs") (param $$x f64) (result f64) (f64.abs (local.get $$x))) + (func (export "neg") (param $$x f64) (result f64) (f64.neg (local.get $$x))) + (func (export "copysign") (param $$x f64) (param $$y f64) (result f64) (f64.copysign (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/f64_bitwise.wast:10 +assert_return(() => invoke($0, `copysign`, [value("f64", -0), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64_bitwise.wast:11 +assert_return(() => invoke($0, `copysign`, [value("f64", -0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:12 +assert_return(() => invoke($0, `copysign`, [value("f64", 0), value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/f64_bitwise.wast:13 +assert_return(() => invoke($0, `copysign`, [value("f64", 0), value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:14 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:15 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:16 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:17 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:18 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:19 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:20 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:21 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:22 +assert_return(() => invoke($0, `copysign`, [value("f64", -0), value("f64", -0.5)]), [value("f64", -0)]); + +// ./test/core/f64_bitwise.wast:23 +assert_return(() => invoke($0, `copysign`, [value("f64", -0), value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:24 +assert_return(() => invoke($0, `copysign`, [value("f64", 0), value("f64", -0.5)]), [value("f64", -0)]); + +// ./test/core/f64_bitwise.wast:25 +assert_return(() => invoke($0, `copysign`, [value("f64", 0), value("f64", 0.5)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:26 +assert_return(() => invoke($0, `copysign`, [value("f64", -0), value("f64", -1)]), [value("f64", -0)]); + +// ./test/core/f64_bitwise.wast:27 +assert_return(() => invoke($0, `copysign`, [value("f64", -0), value("f64", 1)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:28 +assert_return(() => invoke($0, `copysign`, [value("f64", 0), value("f64", -1)]), [value("f64", -0)]); + +// ./test/core/f64_bitwise.wast:29 +assert_return(() => invoke($0, `copysign`, [value("f64", 0), value("f64", 1)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:30 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:31 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:32 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:33 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:34 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:35 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:36 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:37 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:38 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0), value("f64", -Infinity)]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:39 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0), value("f64", Infinity)]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:40 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0), value("f64", -Infinity)]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:41 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0), value("f64", Infinity)]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:42 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:43 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:44 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -0)], +); + +// ./test/core/f64_bitwise.wast:45 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", 0)], +); + +// ./test/core/f64_bitwise.wast:46 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:47 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:48 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:49 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:50 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:51 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:52 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:53 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:54 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:55 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:56 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:57 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:58 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:59 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:60 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:61 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:62 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:63 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:64 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:65 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:66 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:67 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:68 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:69 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:70 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:71 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:72 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:73 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:74 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:75 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:76 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:77 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:78 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:79 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:80 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:81 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:82 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:83 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:84 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:85 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:86 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:87 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:88 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:89 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:90 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:91 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:92 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:93 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:94 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:95 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:96 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:97 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:98 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:99 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:100 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:101 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:102 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:103 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:104 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:105 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:106 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:107 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:108 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:109 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:110 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:111 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:112 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:113 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:114 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:115 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:116 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:117 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:118 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0.5), value("f64", -0)]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:119 +assert_return(() => invoke($0, `copysign`, [value("f64", -0.5), value("f64", 0)]), [value("f64", 0.5)]); + +// ./test/core/f64_bitwise.wast:120 +assert_return(() => invoke($0, `copysign`, [value("f64", 0.5), value("f64", -0)]), [value("f64", -0.5)]); + +// ./test/core/f64_bitwise.wast:121 +assert_return(() => invoke($0, `copysign`, [value("f64", 0.5), value("f64", 0)]), [value("f64", 0.5)]); + +// ./test/core/f64_bitwise.wast:122 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:123 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:124 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:125 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:126 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:127 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:128 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:129 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:130 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0.5), value("f64", -0.5)]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:131 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0.5), value("f64", 0.5)]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:132 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0.5), value("f64", -0.5)]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:133 +assert_return(() => invoke($0, `copysign`, [value("f64", 0.5), value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64_bitwise.wast:134 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0.5), value("f64", -1)]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:135 +assert_return(() => invoke($0, `copysign`, [value("f64", -0.5), value("f64", 1)]), [value("f64", 0.5)]); + +// ./test/core/f64_bitwise.wast:136 +assert_return(() => invoke($0, `copysign`, [value("f64", 0.5), value("f64", -1)]), [value("f64", -0.5)]); + +// ./test/core/f64_bitwise.wast:137 +assert_return(() => invoke($0, `copysign`, [value("f64", 0.5), value("f64", 1)]), [value("f64", 0.5)]); + +// ./test/core/f64_bitwise.wast:138 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:139 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:140 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:141 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:142 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:143 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:144 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:145 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:146 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0.5), value("f64", -Infinity)]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:147 +assert_return( + () => invoke($0, `copysign`, [value("f64", -0.5), value("f64", Infinity)]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:148 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0.5), value("f64", -Infinity)]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:149 +assert_return( + () => invoke($0, `copysign`, [value("f64", 0.5), value("f64", Infinity)]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:150 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:151 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:152 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -0.5)], +); + +// ./test/core/f64_bitwise.wast:153 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", 0.5)], +); + +// ./test/core/f64_bitwise.wast:154 +assert_return(() => invoke($0, `copysign`, [value("f64", -1), value("f64", -0)]), [value("f64", -1)]); + +// ./test/core/f64_bitwise.wast:155 +assert_return(() => invoke($0, `copysign`, [value("f64", -1), value("f64", 0)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:156 +assert_return(() => invoke($0, `copysign`, [value("f64", 1), value("f64", -0)]), [value("f64", -1)]); + +// ./test/core/f64_bitwise.wast:157 +assert_return(() => invoke($0, `copysign`, [value("f64", 1), value("f64", 0)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:158 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:159 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:160 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:161 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:162 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:163 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:164 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:165 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:166 +assert_return(() => invoke($0, `copysign`, [value("f64", -1), value("f64", -0.5)]), [value("f64", -1)]); + +// ./test/core/f64_bitwise.wast:167 +assert_return(() => invoke($0, `copysign`, [value("f64", -1), value("f64", 0.5)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:168 +assert_return(() => invoke($0, `copysign`, [value("f64", 1), value("f64", -0.5)]), [value("f64", -1)]); + +// ./test/core/f64_bitwise.wast:169 +assert_return(() => invoke($0, `copysign`, [value("f64", 1), value("f64", 0.5)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:170 +assert_return(() => invoke($0, `copysign`, [value("f64", -1), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64_bitwise.wast:171 +assert_return(() => invoke($0, `copysign`, [value("f64", -1), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:172 +assert_return(() => invoke($0, `copysign`, [value("f64", 1), value("f64", -1)]), [value("f64", -1)]); + +// ./test/core/f64_bitwise.wast:173 +assert_return(() => invoke($0, `copysign`, [value("f64", 1), value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:174 +assert_return( + () => invoke($0, `copysign`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:175 +assert_return( + () => invoke($0, `copysign`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:176 +assert_return( + () => invoke($0, `copysign`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:177 +assert_return( + () => invoke($0, `copysign`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:178 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:179 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:180 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:181 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:182 +assert_return( + () => invoke($0, `copysign`, [value("f64", -1), value("f64", -Infinity)]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:183 +assert_return( + () => invoke($0, `copysign`, [value("f64", -1), value("f64", Infinity)]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:184 +assert_return( + () => invoke($0, `copysign`, [value("f64", 1), value("f64", -Infinity)]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:185 +assert_return( + () => invoke($0, `copysign`, [value("f64", 1), value("f64", Infinity)]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:186 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:187 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:188 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -1)], +); + +// ./test/core/f64_bitwise.wast:189 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", 1)], +); + +// ./test/core/f64_bitwise.wast:190 +assert_return( + () => invoke($0, `copysign`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:191 +assert_return( + () => invoke($0, `copysign`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:192 +assert_return( + () => invoke($0, `copysign`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:193 +assert_return( + () => invoke($0, `copysign`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:194 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:195 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:196 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:197 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:198 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:199 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:200 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:201 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:202 +assert_return( + () => invoke($0, `copysign`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:203 +assert_return( + () => invoke($0, `copysign`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:204 +assert_return( + () => invoke($0, `copysign`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:205 +assert_return( + () => invoke($0, `copysign`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:206 +assert_return( + () => invoke($0, `copysign`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:207 +assert_return( + () => invoke($0, `copysign`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:208 +assert_return( + () => invoke($0, `copysign`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:209 +assert_return( + () => invoke($0, `copysign`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:210 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:211 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:212 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:213 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:214 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:215 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:216 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:217 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:218 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", -Infinity), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:219 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + value("f64", Infinity), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:220 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", -Infinity), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:221 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + value("f64", Infinity), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:222 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:223 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:224 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:225 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:226 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:227 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:228 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:229 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:230 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:231 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:232 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:233 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:234 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:235 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:236 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:237 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:238 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:239 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:240 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:241 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:242 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:243 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:244 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:245 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:246 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:247 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:248 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:249 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:250 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:251 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:252 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:253 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:254 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:255 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:256 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:257 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:258 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:259 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:260 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:261 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:262 +assert_return( + () => invoke($0, `copysign`, [value("f64", -Infinity), value("f64", -0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:263 +assert_return( + () => invoke($0, `copysign`, [value("f64", -Infinity), value("f64", 0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:264 +assert_return( + () => invoke($0, `copysign`, [value("f64", Infinity), value("f64", -0)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:265 +assert_return( + () => invoke($0, `copysign`, [value("f64", Infinity), value("f64", 0)]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:266 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:267 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:268 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:269 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:270 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:271 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:272 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:273 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:274 +assert_return( + () => invoke($0, `copysign`, [value("f64", -Infinity), value("f64", -0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:275 +assert_return( + () => invoke($0, `copysign`, [value("f64", -Infinity), value("f64", 0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:276 +assert_return( + () => invoke($0, `copysign`, [value("f64", Infinity), value("f64", -0.5)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:277 +assert_return( + () => invoke($0, `copysign`, [value("f64", Infinity), value("f64", 0.5)]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:278 +assert_return( + () => invoke($0, `copysign`, [value("f64", -Infinity), value("f64", -1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:279 +assert_return( + () => invoke($0, `copysign`, [value("f64", -Infinity), value("f64", 1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:280 +assert_return( + () => invoke($0, `copysign`, [value("f64", Infinity), value("f64", -1)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:281 +assert_return( + () => invoke($0, `copysign`, [value("f64", Infinity), value("f64", 1)]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:282 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + value("f64", -6.283185307179586), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:283 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + value("f64", 6.283185307179586), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:284 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + value("f64", -6.283185307179586), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:285 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + value("f64", 6.283185307179586), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:286 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:287 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:288 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:289 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:290 +assert_return( + () => invoke($0, `copysign`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:291 +assert_return( + () => invoke($0, `copysign`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:292 +assert_return( + () => invoke($0, `copysign`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:293 +assert_return( + () => invoke($0, `copysign`, [value("f64", Infinity), value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:294 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:295 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:296 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/f64_bitwise.wast:297 +assert_return( + () => invoke($0, `copysign`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("f64", Infinity)], +); + +// ./test/core/f64_bitwise.wast:298 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:299 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:300 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:301 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:302 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:303 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:304 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:305 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:306 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:307 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:308 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:309 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:310 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:311 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:312 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:313 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:314 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:315 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:316 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:317 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:318 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:319 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:320 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:321 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:322 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:323 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:324 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:325 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:326 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:327 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:328 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:329 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:330 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:331 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:332 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:333 +assert_return( + () => invoke($0, `copysign`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:334 +assert_return(() => invoke($0, `abs`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:335 +assert_return(() => invoke($0, `abs`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:336 +assert_return( + () => invoke($0, `abs`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:337 +assert_return( + () => invoke($0, `abs`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:338 +assert_return( + () => invoke($0, `abs`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:339 +assert_return( + () => invoke($0, `abs`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:340 +assert_return(() => invoke($0, `abs`, [value("f64", -0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64_bitwise.wast:341 +assert_return(() => invoke($0, `abs`, [value("f64", 0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64_bitwise.wast:342 +assert_return(() => invoke($0, `abs`, [value("f64", -1)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:343 +assert_return(() => invoke($0, `abs`, [value("f64", 1)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:344 +assert_return( + () => invoke($0, `abs`, [value("f64", -6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:345 +assert_return( + () => invoke($0, `abs`, [value("f64", 6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:346 +assert_return( + () => invoke($0, `abs`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:347 +assert_return( + () => invoke($0, `abs`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:348 +assert_return(() => invoke($0, `abs`, [value("f64", -Infinity)]), [value("f64", Infinity)]); + +// ./test/core/f64_bitwise.wast:349 +assert_return(() => invoke($0, `abs`, [value("f64", Infinity)]), [value("f64", Infinity)]); + +// ./test/core/f64_bitwise.wast:350 +assert_return( + () => invoke($0, `abs`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:351 +assert_return( + () => invoke($0, `abs`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:352 +assert_return(() => invoke($0, `neg`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/f64_bitwise.wast:353 +assert_return(() => invoke($0, `neg`, [value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/f64_bitwise.wast:354 +assert_return( + () => invoke($0, `neg`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:355 +assert_return( + () => invoke($0, `neg`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/f64_bitwise.wast:356 +assert_return( + () => invoke($0, `neg`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:357 +assert_return( + () => invoke($0, `neg`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/f64_bitwise.wast:358 +assert_return(() => invoke($0, `neg`, [value("f64", -0.5)]), [value("f64", 0.5)]); + +// ./test/core/f64_bitwise.wast:359 +assert_return(() => invoke($0, `neg`, [value("f64", 0.5)]), [value("f64", -0.5)]); + +// ./test/core/f64_bitwise.wast:360 +assert_return(() => invoke($0, `neg`, [value("f64", -1)]), [value("f64", 1)]); + +// ./test/core/f64_bitwise.wast:361 +assert_return(() => invoke($0, `neg`, [value("f64", 1)]), [value("f64", -1)]); + +// ./test/core/f64_bitwise.wast:362 +assert_return( + () => invoke($0, `neg`, [value("f64", -6.283185307179586)]), + [value("f64", 6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:363 +assert_return( + () => invoke($0, `neg`, [value("f64", 6.283185307179586)]), + [value("f64", -6.283185307179586)], +); + +// ./test/core/f64_bitwise.wast:364 +assert_return( + () => invoke($0, `neg`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:365 +assert_return( + () => invoke($0, `neg`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/f64_bitwise.wast:366 +assert_return(() => invoke($0, `neg`, [value("f64", -Infinity)]), [value("f64", Infinity)]); + +// ./test/core/f64_bitwise.wast:367 +assert_return(() => invoke($0, `neg`, [value("f64", Infinity)]), [value("f64", -Infinity)]); + +// ./test/core/f64_bitwise.wast:368 +assert_return( + () => invoke($0, `neg`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/f64_bitwise.wast:369 +assert_return( + () => invoke($0, `neg`, [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/f64_bitwise.wast:374 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.copysign (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64_bitwise.wast:375 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.abs (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64_bitwise.wast:376 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.neg (i64.const 0))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/f64_cmp.wast.js b/js/src/jit-test/tests/wasm/spec/spec/f64_cmp.wast.js new file mode 100644 index 0000000000..45ea523bcd --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/f64_cmp.wast.js @@ -0,0 +1,18854 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/f64_cmp.wast + +// ./test/core/f64_cmp.wast:4 +let $0 = instantiate(`(module + (func (export "eq") (param $$x f64) (param $$y f64) (result i32) (f64.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x f64) (param $$y f64) (result i32) (f64.ne (local.get $$x) (local.get $$y))) + (func (export "lt") (param $$x f64) (param $$y f64) (result i32) (f64.lt (local.get $$x) (local.get $$y))) + (func (export "le") (param $$x f64) (param $$y f64) (result i32) (f64.le (local.get $$x) (local.get $$y))) + (func (export "gt") (param $$x f64) (param $$y f64) (result i32) (f64.gt (local.get $$x) (local.get $$y))) + (func (export "ge") (param $$x f64) (param $$y f64) (result i32) (f64.ge (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/f64_cmp.wast:13 +assert_return(() => invoke($0, `eq`, [value("f64", -0), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:14 +assert_return(() => invoke($0, `eq`, [value("f64", -0), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:15 +assert_return(() => invoke($0, `eq`, [value("f64", 0), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:16 +assert_return(() => invoke($0, `eq`, [value("f64", 0), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:17 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:18 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:19 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:20 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:21 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:22 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:23 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:24 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:25 +assert_return(() => invoke($0, `eq`, [value("f64", -0), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:26 +assert_return(() => invoke($0, `eq`, [value("f64", -0), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:27 +assert_return(() => invoke($0, `eq`, [value("f64", 0), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:28 +assert_return(() => invoke($0, `eq`, [value("f64", 0), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:29 +assert_return(() => invoke($0, `eq`, [value("f64", -0), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:30 +assert_return(() => invoke($0, `eq`, [value("f64", -0), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:31 +assert_return(() => invoke($0, `eq`, [value("f64", 0), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:32 +assert_return(() => invoke($0, `eq`, [value("f64", 0), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:33 +assert_return( + () => invoke($0, `eq`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:34 +assert_return( + () => invoke($0, `eq`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:35 +assert_return( + () => invoke($0, `eq`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:36 +assert_return( + () => invoke($0, `eq`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:37 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:38 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:39 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:40 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:41 +assert_return(() => invoke($0, `eq`, [value("f64", -0), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:42 +assert_return(() => invoke($0, `eq`, [value("f64", -0), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:43 +assert_return(() => invoke($0, `eq`, [value("f64", 0), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:44 +assert_return(() => invoke($0, `eq`, [value("f64", 0), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:45 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:46 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:47 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:48 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:49 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:50 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:51 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:52 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:53 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:54 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:55 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:56 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:57 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:58 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:59 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:60 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:61 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:62 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:63 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:64 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:65 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:66 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:67 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:68 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:69 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:70 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:71 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:72 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:73 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:74 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:75 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:76 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:77 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:78 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:79 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:80 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:81 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:82 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:83 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:84 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:85 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:86 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:87 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:88 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:89 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:90 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:91 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:92 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:93 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:94 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:95 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:96 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:97 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:98 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:99 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:100 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:101 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:102 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:103 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:104 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:105 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:106 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:107 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:108 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:109 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:110 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:111 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:112 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:113 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:114 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:115 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:116 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:117 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:118 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:119 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:120 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:121 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:122 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:123 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:124 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:125 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:126 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:127 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:128 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:129 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:130 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:131 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:132 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:133 +assert_return(() => invoke($0, `eq`, [value("f64", -0.5), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:134 +assert_return(() => invoke($0, `eq`, [value("f64", -0.5), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:135 +assert_return(() => invoke($0, `eq`, [value("f64", 0.5), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:136 +assert_return(() => invoke($0, `eq`, [value("f64", 0.5), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:137 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:138 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:139 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:140 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:141 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:142 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:143 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:144 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:145 +assert_return(() => invoke($0, `eq`, [value("f64", -0.5), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:146 +assert_return(() => invoke($0, `eq`, [value("f64", -0.5), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:147 +assert_return(() => invoke($0, `eq`, [value("f64", 0.5), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:148 +assert_return(() => invoke($0, `eq`, [value("f64", 0.5), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:149 +assert_return(() => invoke($0, `eq`, [value("f64", -0.5), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:150 +assert_return(() => invoke($0, `eq`, [value("f64", -0.5), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:151 +assert_return(() => invoke($0, `eq`, [value("f64", 0.5), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:152 +assert_return(() => invoke($0, `eq`, [value("f64", 0.5), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:153 +assert_return( + () => invoke($0, `eq`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:154 +assert_return( + () => invoke($0, `eq`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:155 +assert_return( + () => invoke($0, `eq`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:156 +assert_return( + () => invoke($0, `eq`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:157 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:158 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:159 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:160 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:161 +assert_return(() => invoke($0, `eq`, [value("f64", -0.5), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:162 +assert_return(() => invoke($0, `eq`, [value("f64", -0.5), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:163 +assert_return(() => invoke($0, `eq`, [value("f64", 0.5), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:164 +assert_return(() => invoke($0, `eq`, [value("f64", 0.5), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:165 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:166 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:167 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:168 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:169 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:170 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:171 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:172 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:173 +assert_return(() => invoke($0, `eq`, [value("f64", -1), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:174 +assert_return(() => invoke($0, `eq`, [value("f64", -1), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:175 +assert_return(() => invoke($0, `eq`, [value("f64", 1), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:176 +assert_return(() => invoke($0, `eq`, [value("f64", 1), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:177 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:178 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:179 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:180 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:181 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:182 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:183 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:184 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:185 +assert_return(() => invoke($0, `eq`, [value("f64", -1), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:186 +assert_return(() => invoke($0, `eq`, [value("f64", -1), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:187 +assert_return(() => invoke($0, `eq`, [value("f64", 1), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:188 +assert_return(() => invoke($0, `eq`, [value("f64", 1), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:189 +assert_return(() => invoke($0, `eq`, [value("f64", -1), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:190 +assert_return(() => invoke($0, `eq`, [value("f64", -1), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:191 +assert_return(() => invoke($0, `eq`, [value("f64", 1), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:192 +assert_return(() => invoke($0, `eq`, [value("f64", 1), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:193 +assert_return( + () => invoke($0, `eq`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:194 +assert_return( + () => invoke($0, `eq`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:195 +assert_return( + () => invoke($0, `eq`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:196 +assert_return( + () => invoke($0, `eq`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:197 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:198 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:199 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:200 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:201 +assert_return(() => invoke($0, `eq`, [value("f64", -1), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:202 +assert_return(() => invoke($0, `eq`, [value("f64", -1), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:203 +assert_return(() => invoke($0, `eq`, [value("f64", 1), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:204 +assert_return(() => invoke($0, `eq`, [value("f64", 1), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:205 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:206 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:207 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:208 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:209 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:210 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:211 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:212 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:213 +assert_return( + () => invoke($0, `eq`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:214 +assert_return( + () => invoke($0, `eq`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:215 +assert_return( + () => invoke($0, `eq`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:216 +assert_return( + () => invoke($0, `eq`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:217 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:218 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:219 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:220 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:221 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:222 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:223 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:224 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:225 +assert_return( + () => invoke($0, `eq`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:226 +assert_return( + () => invoke($0, `eq`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:227 +assert_return( + () => invoke($0, `eq`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:228 +assert_return( + () => invoke($0, `eq`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:229 +assert_return( + () => invoke($0, `eq`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:230 +assert_return( + () => invoke($0, `eq`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:231 +assert_return( + () => invoke($0, `eq`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:232 +assert_return( + () => invoke($0, `eq`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:233 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:234 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:235 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:236 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:237 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:238 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:239 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:240 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:241 +assert_return( + () => invoke($0, `eq`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:242 +assert_return( + () => invoke($0, `eq`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:243 +assert_return( + () => invoke($0, `eq`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:244 +assert_return( + () => invoke($0, `eq`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:245 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:246 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:247 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:248 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:249 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:250 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:251 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:252 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:253 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:254 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:255 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:256 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:257 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:258 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:259 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:260 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:261 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:262 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:263 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:264 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:265 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:266 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:267 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:268 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:269 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:270 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:271 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:272 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:273 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:274 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:275 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:276 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:277 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:278 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:279 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:280 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:281 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:282 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:283 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:284 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:285 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:286 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:287 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:288 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:289 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:290 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:291 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:292 +assert_return( + () => invoke($0, `eq`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:293 +assert_return(() => invoke($0, `eq`, [value("f64", -Infinity), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:294 +assert_return(() => invoke($0, `eq`, [value("f64", -Infinity), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:295 +assert_return(() => invoke($0, `eq`, [value("f64", Infinity), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:296 +assert_return(() => invoke($0, `eq`, [value("f64", Infinity), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:297 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:298 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:299 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:300 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:301 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:302 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:303 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:304 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:305 +assert_return(() => invoke($0, `eq`, [value("f64", -Infinity), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:306 +assert_return(() => invoke($0, `eq`, [value("f64", -Infinity), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:307 +assert_return(() => invoke($0, `eq`, [value("f64", Infinity), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:308 +assert_return(() => invoke($0, `eq`, [value("f64", Infinity), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:309 +assert_return(() => invoke($0, `eq`, [value("f64", -Infinity), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:310 +assert_return(() => invoke($0, `eq`, [value("f64", -Infinity), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:311 +assert_return(() => invoke($0, `eq`, [value("f64", Infinity), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:312 +assert_return(() => invoke($0, `eq`, [value("f64", Infinity), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:313 +assert_return( + () => invoke($0, `eq`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:314 +assert_return( + () => invoke($0, `eq`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:315 +assert_return( + () => invoke($0, `eq`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:316 +assert_return( + () => invoke($0, `eq`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:317 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:318 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:319 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:320 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:321 +assert_return( + () => invoke($0, `eq`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:322 +assert_return( + () => invoke($0, `eq`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:323 +assert_return( + () => invoke($0, `eq`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:324 +assert_return( + () => invoke($0, `eq`, [value("f64", Infinity), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:325 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:326 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:327 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:328 +assert_return( + () => invoke($0, `eq`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:329 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:330 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:331 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:332 +assert_return( + () => invoke($0, `eq`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:333 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:334 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:335 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:336 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:337 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:338 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:339 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:340 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:341 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:342 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:343 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:344 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:345 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:346 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:347 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:348 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:349 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:350 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:351 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:352 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:353 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:354 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:355 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:356 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:357 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:358 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:359 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:360 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:361 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:362 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:363 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:364 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:365 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:366 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:367 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:368 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:369 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:370 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:371 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:372 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:373 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:374 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:375 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:376 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:377 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:378 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:379 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:380 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:381 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:382 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:383 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:384 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:385 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:386 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:387 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:388 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:389 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:390 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:391 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:392 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:393 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:394 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:395 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:396 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:397 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:398 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:399 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:400 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:401 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:402 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:403 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:404 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:405 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:406 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:407 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:408 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:409 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:410 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:411 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:412 +assert_return( + () => invoke($0, `eq`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:413 +assert_return(() => invoke($0, `ne`, [value("f64", -0), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:414 +assert_return(() => invoke($0, `ne`, [value("f64", -0), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:415 +assert_return(() => invoke($0, `ne`, [value("f64", 0), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:416 +assert_return(() => invoke($0, `ne`, [value("f64", 0), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:417 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:418 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:419 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:420 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:421 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:422 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:423 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:424 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:425 +assert_return(() => invoke($0, `ne`, [value("f64", -0), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:426 +assert_return(() => invoke($0, `ne`, [value("f64", -0), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:427 +assert_return(() => invoke($0, `ne`, [value("f64", 0), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:428 +assert_return(() => invoke($0, `ne`, [value("f64", 0), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:429 +assert_return(() => invoke($0, `ne`, [value("f64", -0), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:430 +assert_return(() => invoke($0, `ne`, [value("f64", -0), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:431 +assert_return(() => invoke($0, `ne`, [value("f64", 0), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:432 +assert_return(() => invoke($0, `ne`, [value("f64", 0), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:433 +assert_return( + () => invoke($0, `ne`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:434 +assert_return( + () => invoke($0, `ne`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:435 +assert_return( + () => invoke($0, `ne`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:436 +assert_return( + () => invoke($0, `ne`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:437 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:438 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:439 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:440 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:441 +assert_return(() => invoke($0, `ne`, [value("f64", -0), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:442 +assert_return(() => invoke($0, `ne`, [value("f64", -0), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:443 +assert_return(() => invoke($0, `ne`, [value("f64", 0), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:444 +assert_return(() => invoke($0, `ne`, [value("f64", 0), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:445 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:446 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:447 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:448 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:449 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:450 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:451 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:452 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:453 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:454 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:455 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:456 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:457 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:458 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:459 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:460 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:461 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:462 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:463 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:464 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:465 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:466 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:467 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:468 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:469 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:470 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:471 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:472 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:473 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:474 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:475 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:476 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:477 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:478 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:479 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:480 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:481 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:482 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:483 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:484 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:485 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:486 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:487 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:488 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:489 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:490 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:491 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:492 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:493 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:494 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:495 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:496 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:497 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:498 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:499 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:500 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:501 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:502 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:503 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:504 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:505 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:506 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:507 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:508 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:509 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:510 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:511 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:512 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:513 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:514 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:515 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:516 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:517 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:518 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:519 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:520 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:521 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:522 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:523 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:524 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:525 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:526 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:527 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:528 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:529 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:530 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:531 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:532 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:533 +assert_return(() => invoke($0, `ne`, [value("f64", -0.5), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:534 +assert_return(() => invoke($0, `ne`, [value("f64", -0.5), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:535 +assert_return(() => invoke($0, `ne`, [value("f64", 0.5), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:536 +assert_return(() => invoke($0, `ne`, [value("f64", 0.5), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:537 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:538 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:539 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:540 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:541 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:542 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:543 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:544 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:545 +assert_return(() => invoke($0, `ne`, [value("f64", -0.5), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:546 +assert_return(() => invoke($0, `ne`, [value("f64", -0.5), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:547 +assert_return(() => invoke($0, `ne`, [value("f64", 0.5), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:548 +assert_return(() => invoke($0, `ne`, [value("f64", 0.5), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:549 +assert_return(() => invoke($0, `ne`, [value("f64", -0.5), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:550 +assert_return(() => invoke($0, `ne`, [value("f64", -0.5), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:551 +assert_return(() => invoke($0, `ne`, [value("f64", 0.5), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:552 +assert_return(() => invoke($0, `ne`, [value("f64", 0.5), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:553 +assert_return( + () => invoke($0, `ne`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:554 +assert_return( + () => invoke($0, `ne`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:555 +assert_return( + () => invoke($0, `ne`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:556 +assert_return( + () => invoke($0, `ne`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:557 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:558 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:559 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:560 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:561 +assert_return(() => invoke($0, `ne`, [value("f64", -0.5), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:562 +assert_return(() => invoke($0, `ne`, [value("f64", -0.5), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:563 +assert_return(() => invoke($0, `ne`, [value("f64", 0.5), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:564 +assert_return(() => invoke($0, `ne`, [value("f64", 0.5), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:565 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:566 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:567 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:568 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:569 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:570 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:571 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:572 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:573 +assert_return(() => invoke($0, `ne`, [value("f64", -1), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:574 +assert_return(() => invoke($0, `ne`, [value("f64", -1), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:575 +assert_return(() => invoke($0, `ne`, [value("f64", 1), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:576 +assert_return(() => invoke($0, `ne`, [value("f64", 1), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:577 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:578 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:579 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:580 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:581 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:582 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:583 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:584 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:585 +assert_return(() => invoke($0, `ne`, [value("f64", -1), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:586 +assert_return(() => invoke($0, `ne`, [value("f64", -1), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:587 +assert_return(() => invoke($0, `ne`, [value("f64", 1), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:588 +assert_return(() => invoke($0, `ne`, [value("f64", 1), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:589 +assert_return(() => invoke($0, `ne`, [value("f64", -1), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:590 +assert_return(() => invoke($0, `ne`, [value("f64", -1), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:591 +assert_return(() => invoke($0, `ne`, [value("f64", 1), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:592 +assert_return(() => invoke($0, `ne`, [value("f64", 1), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:593 +assert_return( + () => invoke($0, `ne`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:594 +assert_return( + () => invoke($0, `ne`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:595 +assert_return( + () => invoke($0, `ne`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:596 +assert_return( + () => invoke($0, `ne`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:597 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:598 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:599 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:600 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:601 +assert_return(() => invoke($0, `ne`, [value("f64", -1), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:602 +assert_return(() => invoke($0, `ne`, [value("f64", -1), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:603 +assert_return(() => invoke($0, `ne`, [value("f64", 1), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:604 +assert_return(() => invoke($0, `ne`, [value("f64", 1), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:605 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:606 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:607 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:608 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:609 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:610 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:611 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:612 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:613 +assert_return( + () => invoke($0, `ne`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:614 +assert_return( + () => invoke($0, `ne`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:615 +assert_return( + () => invoke($0, `ne`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:616 +assert_return( + () => invoke($0, `ne`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:617 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:618 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:619 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:620 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:621 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:622 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:623 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:624 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:625 +assert_return( + () => invoke($0, `ne`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:626 +assert_return( + () => invoke($0, `ne`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:627 +assert_return( + () => invoke($0, `ne`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:628 +assert_return( + () => invoke($0, `ne`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:629 +assert_return( + () => invoke($0, `ne`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:630 +assert_return( + () => invoke($0, `ne`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:631 +assert_return( + () => invoke($0, `ne`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:632 +assert_return( + () => invoke($0, `ne`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:633 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:634 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:635 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:636 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:637 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:638 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:639 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:640 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:641 +assert_return( + () => invoke($0, `ne`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:642 +assert_return( + () => invoke($0, `ne`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:643 +assert_return( + () => invoke($0, `ne`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:644 +assert_return( + () => invoke($0, `ne`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:645 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:646 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:647 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:648 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:649 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:650 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:651 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:652 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:653 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:654 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:655 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:656 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:657 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:658 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:659 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:660 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:661 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:662 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:663 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:664 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:665 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:666 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:667 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:668 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:669 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:670 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:671 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:672 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:673 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:674 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:675 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:676 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:677 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:678 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:679 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:680 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:681 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:682 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:683 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:684 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:685 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:686 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:687 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:688 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:689 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:690 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:691 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:692 +assert_return( + () => invoke($0, `ne`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:693 +assert_return(() => invoke($0, `ne`, [value("f64", -Infinity), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:694 +assert_return(() => invoke($0, `ne`, [value("f64", -Infinity), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:695 +assert_return(() => invoke($0, `ne`, [value("f64", Infinity), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:696 +assert_return(() => invoke($0, `ne`, [value("f64", Infinity), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:697 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:698 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:699 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:700 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:701 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:702 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:703 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:704 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:705 +assert_return(() => invoke($0, `ne`, [value("f64", -Infinity), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:706 +assert_return(() => invoke($0, `ne`, [value("f64", -Infinity), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:707 +assert_return(() => invoke($0, `ne`, [value("f64", Infinity), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:708 +assert_return(() => invoke($0, `ne`, [value("f64", Infinity), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:709 +assert_return(() => invoke($0, `ne`, [value("f64", -Infinity), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:710 +assert_return(() => invoke($0, `ne`, [value("f64", -Infinity), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:711 +assert_return(() => invoke($0, `ne`, [value("f64", Infinity), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:712 +assert_return(() => invoke($0, `ne`, [value("f64", Infinity), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:713 +assert_return( + () => invoke($0, `ne`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:714 +assert_return( + () => invoke($0, `ne`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:715 +assert_return( + () => invoke($0, `ne`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:716 +assert_return( + () => invoke($0, `ne`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:717 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:718 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:719 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:720 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:721 +assert_return( + () => invoke($0, `ne`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:722 +assert_return( + () => invoke($0, `ne`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:723 +assert_return( + () => invoke($0, `ne`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:724 +assert_return( + () => invoke($0, `ne`, [value("f64", Infinity), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:725 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:726 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:727 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:728 +assert_return( + () => invoke($0, `ne`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:729 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:730 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:731 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:732 +assert_return( + () => invoke($0, `ne`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:733 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:734 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:735 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:736 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:737 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:738 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:739 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:740 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:741 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:742 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:743 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:744 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:745 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:746 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:747 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:748 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:749 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:750 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:751 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:752 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:753 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:754 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:755 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:756 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:757 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:758 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:759 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:760 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:761 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:762 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:763 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:764 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:765 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:766 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:767 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:768 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:769 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:770 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:771 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:772 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:773 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:774 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:775 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:776 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:777 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:778 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:779 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:780 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:781 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:782 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:783 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:784 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:785 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:786 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:787 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:788 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:789 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:790 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:791 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:792 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:793 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:794 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:795 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:796 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:797 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:798 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:799 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:800 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:801 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:802 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:803 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:804 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:805 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:806 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:807 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:808 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:809 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:810 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:811 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:812 +assert_return( + () => invoke($0, `ne`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:813 +assert_return(() => invoke($0, `lt`, [value("f64", -0), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:814 +assert_return(() => invoke($0, `lt`, [value("f64", -0), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:815 +assert_return(() => invoke($0, `lt`, [value("f64", 0), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:816 +assert_return(() => invoke($0, `lt`, [value("f64", 0), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:817 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:818 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:819 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:820 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:821 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:822 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:823 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:824 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:825 +assert_return(() => invoke($0, `lt`, [value("f64", -0), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:826 +assert_return(() => invoke($0, `lt`, [value("f64", -0), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:827 +assert_return(() => invoke($0, `lt`, [value("f64", 0), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:828 +assert_return(() => invoke($0, `lt`, [value("f64", 0), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:829 +assert_return(() => invoke($0, `lt`, [value("f64", -0), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:830 +assert_return(() => invoke($0, `lt`, [value("f64", -0), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:831 +assert_return(() => invoke($0, `lt`, [value("f64", 0), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:832 +assert_return(() => invoke($0, `lt`, [value("f64", 0), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:833 +assert_return( + () => invoke($0, `lt`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:834 +assert_return( + () => invoke($0, `lt`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:835 +assert_return( + () => invoke($0, `lt`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:836 +assert_return( + () => invoke($0, `lt`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:837 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:838 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:839 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:840 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:841 +assert_return(() => invoke($0, `lt`, [value("f64", -0), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:842 +assert_return(() => invoke($0, `lt`, [value("f64", -0), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:843 +assert_return(() => invoke($0, `lt`, [value("f64", 0), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:844 +assert_return(() => invoke($0, `lt`, [value("f64", 0), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:845 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:846 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:847 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:848 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:849 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:850 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:851 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:852 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:853 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:854 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:855 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:856 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:857 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:858 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:859 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:860 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:861 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:862 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:863 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:864 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:865 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:866 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:867 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:868 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:869 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:870 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:871 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:872 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:873 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:874 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:875 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:876 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:877 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:878 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:879 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:880 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:881 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:882 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:883 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:884 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:885 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:886 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:887 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:888 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:889 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:890 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:891 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:892 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:893 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:894 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:895 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:896 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:897 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:898 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:899 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:900 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:901 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:902 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:903 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:904 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:905 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:906 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:907 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:908 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:909 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:910 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:911 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:912 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:913 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:914 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:915 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:916 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:917 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:918 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:919 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:920 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:921 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:922 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:923 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:924 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:925 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:926 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:927 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:928 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:929 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:930 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:931 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:932 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:933 +assert_return(() => invoke($0, `lt`, [value("f64", -0.5), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:934 +assert_return(() => invoke($0, `lt`, [value("f64", -0.5), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:935 +assert_return(() => invoke($0, `lt`, [value("f64", 0.5), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:936 +assert_return(() => invoke($0, `lt`, [value("f64", 0.5), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:937 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:938 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:939 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:940 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:941 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:942 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:943 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:944 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:945 +assert_return(() => invoke($0, `lt`, [value("f64", -0.5), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:946 +assert_return(() => invoke($0, `lt`, [value("f64", -0.5), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:947 +assert_return(() => invoke($0, `lt`, [value("f64", 0.5), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:948 +assert_return(() => invoke($0, `lt`, [value("f64", 0.5), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:949 +assert_return(() => invoke($0, `lt`, [value("f64", -0.5), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:950 +assert_return(() => invoke($0, `lt`, [value("f64", -0.5), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:951 +assert_return(() => invoke($0, `lt`, [value("f64", 0.5), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:952 +assert_return(() => invoke($0, `lt`, [value("f64", 0.5), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:953 +assert_return( + () => invoke($0, `lt`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:954 +assert_return( + () => invoke($0, `lt`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:955 +assert_return( + () => invoke($0, `lt`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:956 +assert_return( + () => invoke($0, `lt`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:957 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:958 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:959 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:960 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:961 +assert_return(() => invoke($0, `lt`, [value("f64", -0.5), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:962 +assert_return(() => invoke($0, `lt`, [value("f64", -0.5), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:963 +assert_return(() => invoke($0, `lt`, [value("f64", 0.5), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:964 +assert_return(() => invoke($0, `lt`, [value("f64", 0.5), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:965 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:966 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:967 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:968 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:969 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:970 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:971 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:972 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:973 +assert_return(() => invoke($0, `lt`, [value("f64", -1), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:974 +assert_return(() => invoke($0, `lt`, [value("f64", -1), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:975 +assert_return(() => invoke($0, `lt`, [value("f64", 1), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:976 +assert_return(() => invoke($0, `lt`, [value("f64", 1), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:977 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:978 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:979 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:980 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:981 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:982 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:983 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:984 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:985 +assert_return(() => invoke($0, `lt`, [value("f64", -1), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:986 +assert_return(() => invoke($0, `lt`, [value("f64", -1), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:987 +assert_return(() => invoke($0, `lt`, [value("f64", 1), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:988 +assert_return(() => invoke($0, `lt`, [value("f64", 1), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:989 +assert_return(() => invoke($0, `lt`, [value("f64", -1), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:990 +assert_return(() => invoke($0, `lt`, [value("f64", -1), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:991 +assert_return(() => invoke($0, `lt`, [value("f64", 1), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:992 +assert_return(() => invoke($0, `lt`, [value("f64", 1), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:993 +assert_return( + () => invoke($0, `lt`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:994 +assert_return( + () => invoke($0, `lt`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:995 +assert_return( + () => invoke($0, `lt`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:996 +assert_return( + () => invoke($0, `lt`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:997 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:998 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:999 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1000 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1001 +assert_return(() => invoke($0, `lt`, [value("f64", -1), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1002 +assert_return(() => invoke($0, `lt`, [value("f64", -1), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1003 +assert_return(() => invoke($0, `lt`, [value("f64", 1), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1004 +assert_return(() => invoke($0, `lt`, [value("f64", 1), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1005 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1006 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1007 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1008 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1009 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1010 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1011 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1012 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1013 +assert_return( + () => invoke($0, `lt`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1014 +assert_return( + () => invoke($0, `lt`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1015 +assert_return( + () => invoke($0, `lt`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1016 +assert_return( + () => invoke($0, `lt`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1017 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1018 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1019 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1020 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1021 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1022 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1023 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1024 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1025 +assert_return( + () => invoke($0, `lt`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1026 +assert_return( + () => invoke($0, `lt`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1027 +assert_return( + () => invoke($0, `lt`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1028 +assert_return( + () => invoke($0, `lt`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1029 +assert_return( + () => invoke($0, `lt`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1030 +assert_return( + () => invoke($0, `lt`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1031 +assert_return( + () => invoke($0, `lt`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1032 +assert_return( + () => invoke($0, `lt`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1033 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1034 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1035 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1036 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1037 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1038 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1039 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1040 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1041 +assert_return( + () => invoke($0, `lt`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1042 +assert_return( + () => invoke($0, `lt`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1043 +assert_return( + () => invoke($0, `lt`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1044 +assert_return( + () => invoke($0, `lt`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1045 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1046 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1047 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1048 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1049 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1050 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1051 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1052 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1053 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1054 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1055 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1056 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1057 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1058 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1059 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1060 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1061 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1062 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1063 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1064 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1065 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1066 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1067 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1068 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1069 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1070 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1071 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1072 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1073 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1074 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1075 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1076 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1077 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1078 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1079 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1080 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1081 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1082 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1083 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1084 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1085 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1086 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1087 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1088 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1089 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1090 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1091 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1092 +assert_return( + () => invoke($0, `lt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1093 +assert_return(() => invoke($0, `lt`, [value("f64", -Infinity), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1094 +assert_return(() => invoke($0, `lt`, [value("f64", -Infinity), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1095 +assert_return(() => invoke($0, `lt`, [value("f64", Infinity), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1096 +assert_return(() => invoke($0, `lt`, [value("f64", Infinity), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1097 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1098 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1099 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1100 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1101 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1102 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1103 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1104 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1105 +assert_return(() => invoke($0, `lt`, [value("f64", -Infinity), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1106 +assert_return(() => invoke($0, `lt`, [value("f64", -Infinity), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1107 +assert_return(() => invoke($0, `lt`, [value("f64", Infinity), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1108 +assert_return(() => invoke($0, `lt`, [value("f64", Infinity), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1109 +assert_return(() => invoke($0, `lt`, [value("f64", -Infinity), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1110 +assert_return(() => invoke($0, `lt`, [value("f64", -Infinity), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1111 +assert_return(() => invoke($0, `lt`, [value("f64", Infinity), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1112 +assert_return(() => invoke($0, `lt`, [value("f64", Infinity), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1113 +assert_return( + () => invoke($0, `lt`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1114 +assert_return( + () => invoke($0, `lt`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1115 +assert_return( + () => invoke($0, `lt`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1116 +assert_return( + () => invoke($0, `lt`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1117 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1118 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1119 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1120 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1121 +assert_return( + () => invoke($0, `lt`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1122 +assert_return( + () => invoke($0, `lt`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1123 +assert_return( + () => invoke($0, `lt`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1124 +assert_return( + () => invoke($0, `lt`, [value("f64", Infinity), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1125 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1126 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1127 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1128 +assert_return( + () => invoke($0, `lt`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1129 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1130 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1131 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1132 +assert_return( + () => invoke($0, `lt`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1133 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1134 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1135 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1136 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1137 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1138 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1139 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1140 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1141 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1142 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1143 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1144 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1145 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1146 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1147 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1148 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1149 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1150 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1151 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1152 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1153 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1154 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1155 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1156 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1157 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1158 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1159 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1160 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1161 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1162 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1163 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1164 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1165 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1166 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1167 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1168 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1169 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1170 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1171 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1172 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1173 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1174 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1175 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1176 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1177 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1178 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1179 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1180 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1181 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1182 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1183 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1184 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1185 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1186 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1187 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1188 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1189 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1190 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1191 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1192 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1193 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1194 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1195 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1196 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1197 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1198 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1199 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1200 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1201 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1202 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1203 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1204 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1205 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1206 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1207 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1208 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1209 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1210 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1211 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1212 +assert_return( + () => invoke($0, `lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1213 +assert_return(() => invoke($0, `le`, [value("f64", -0), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1214 +assert_return(() => invoke($0, `le`, [value("f64", -0), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1215 +assert_return(() => invoke($0, `le`, [value("f64", 0), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1216 +assert_return(() => invoke($0, `le`, [value("f64", 0), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1217 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1218 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1219 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1220 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1221 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1222 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1223 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1224 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1225 +assert_return(() => invoke($0, `le`, [value("f64", -0), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1226 +assert_return(() => invoke($0, `le`, [value("f64", -0), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1227 +assert_return(() => invoke($0, `le`, [value("f64", 0), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1228 +assert_return(() => invoke($0, `le`, [value("f64", 0), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1229 +assert_return(() => invoke($0, `le`, [value("f64", -0), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1230 +assert_return(() => invoke($0, `le`, [value("f64", -0), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1231 +assert_return(() => invoke($0, `le`, [value("f64", 0), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1232 +assert_return(() => invoke($0, `le`, [value("f64", 0), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1233 +assert_return( + () => invoke($0, `le`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1234 +assert_return( + () => invoke($0, `le`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1235 +assert_return( + () => invoke($0, `le`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1236 +assert_return( + () => invoke($0, `le`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1237 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1238 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1239 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1240 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1241 +assert_return(() => invoke($0, `le`, [value("f64", -0), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1242 +assert_return(() => invoke($0, `le`, [value("f64", -0), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1243 +assert_return(() => invoke($0, `le`, [value("f64", 0), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1244 +assert_return(() => invoke($0, `le`, [value("f64", 0), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1245 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1246 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1247 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1248 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1249 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1250 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1251 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1252 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1253 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1254 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1255 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1256 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1257 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1258 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1259 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1260 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1261 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1262 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1263 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1264 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1265 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1266 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1267 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1268 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1269 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1270 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1271 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1272 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1273 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1274 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1275 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1276 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1277 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1278 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1279 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1280 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1281 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1282 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1283 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1284 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1285 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1286 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1287 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1288 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1289 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1290 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1291 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1292 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1293 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1294 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1295 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1296 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1297 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1298 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1299 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1300 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1301 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1302 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1303 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1304 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1305 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1306 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1307 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1308 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1309 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1310 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1311 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1312 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1313 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1314 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1315 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1316 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1317 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1318 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1319 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1320 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1321 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1322 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1323 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1324 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1325 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1326 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1327 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1328 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1329 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1330 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1331 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1332 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1333 +assert_return(() => invoke($0, `le`, [value("f64", -0.5), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1334 +assert_return(() => invoke($0, `le`, [value("f64", -0.5), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1335 +assert_return(() => invoke($0, `le`, [value("f64", 0.5), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1336 +assert_return(() => invoke($0, `le`, [value("f64", 0.5), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1337 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1338 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1339 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1340 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1341 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1342 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1343 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1344 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1345 +assert_return(() => invoke($0, `le`, [value("f64", -0.5), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1346 +assert_return(() => invoke($0, `le`, [value("f64", -0.5), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1347 +assert_return(() => invoke($0, `le`, [value("f64", 0.5), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1348 +assert_return(() => invoke($0, `le`, [value("f64", 0.5), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1349 +assert_return(() => invoke($0, `le`, [value("f64", -0.5), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1350 +assert_return(() => invoke($0, `le`, [value("f64", -0.5), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1351 +assert_return(() => invoke($0, `le`, [value("f64", 0.5), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1352 +assert_return(() => invoke($0, `le`, [value("f64", 0.5), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1353 +assert_return( + () => invoke($0, `le`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1354 +assert_return( + () => invoke($0, `le`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1355 +assert_return( + () => invoke($0, `le`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1356 +assert_return( + () => invoke($0, `le`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1357 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1358 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1359 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1360 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1361 +assert_return(() => invoke($0, `le`, [value("f64", -0.5), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1362 +assert_return(() => invoke($0, `le`, [value("f64", -0.5), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1363 +assert_return(() => invoke($0, `le`, [value("f64", 0.5), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1364 +assert_return(() => invoke($0, `le`, [value("f64", 0.5), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1365 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1366 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1367 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1368 +assert_return( + () => invoke($0, `le`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1369 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1370 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1371 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1372 +assert_return( + () => invoke($0, `le`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1373 +assert_return(() => invoke($0, `le`, [value("f64", -1), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1374 +assert_return(() => invoke($0, `le`, [value("f64", -1), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1375 +assert_return(() => invoke($0, `le`, [value("f64", 1), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1376 +assert_return(() => invoke($0, `le`, [value("f64", 1), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1377 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1378 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1379 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1380 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1381 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1382 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1383 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1384 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1385 +assert_return(() => invoke($0, `le`, [value("f64", -1), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1386 +assert_return(() => invoke($0, `le`, [value("f64", -1), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1387 +assert_return(() => invoke($0, `le`, [value("f64", 1), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1388 +assert_return(() => invoke($0, `le`, [value("f64", 1), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1389 +assert_return(() => invoke($0, `le`, [value("f64", -1), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1390 +assert_return(() => invoke($0, `le`, [value("f64", -1), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1391 +assert_return(() => invoke($0, `le`, [value("f64", 1), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1392 +assert_return(() => invoke($0, `le`, [value("f64", 1), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1393 +assert_return( + () => invoke($0, `le`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1394 +assert_return( + () => invoke($0, `le`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1395 +assert_return( + () => invoke($0, `le`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1396 +assert_return( + () => invoke($0, `le`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1397 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1398 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1399 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1400 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1401 +assert_return(() => invoke($0, `le`, [value("f64", -1), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1402 +assert_return(() => invoke($0, `le`, [value("f64", -1), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1403 +assert_return(() => invoke($0, `le`, [value("f64", 1), value("f64", -Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1404 +assert_return(() => invoke($0, `le`, [value("f64", 1), value("f64", Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1405 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1406 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1407 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1408 +assert_return( + () => invoke($0, `le`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1409 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1410 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1411 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1412 +assert_return( + () => invoke($0, `le`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1413 +assert_return( + () => invoke($0, `le`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1414 +assert_return( + () => invoke($0, `le`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1415 +assert_return( + () => invoke($0, `le`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1416 +assert_return( + () => invoke($0, `le`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1417 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1418 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1419 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1420 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1421 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1422 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1423 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1424 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1425 +assert_return( + () => invoke($0, `le`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1426 +assert_return( + () => invoke($0, `le`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1427 +assert_return( + () => invoke($0, `le`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1428 +assert_return( + () => invoke($0, `le`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1429 +assert_return( + () => invoke($0, `le`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1430 +assert_return( + () => invoke($0, `le`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1431 +assert_return( + () => invoke($0, `le`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1432 +assert_return( + () => invoke($0, `le`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1433 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1434 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1435 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1436 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1437 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1438 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1439 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1440 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1441 +assert_return( + () => invoke($0, `le`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1442 +assert_return( + () => invoke($0, `le`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1443 +assert_return( + () => invoke($0, `le`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1444 +assert_return( + () => invoke($0, `le`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1445 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1446 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1447 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1448 +assert_return( + () => invoke($0, `le`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1449 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1450 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1451 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1452 +assert_return( + () => invoke($0, `le`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1453 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1454 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1455 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1456 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1457 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1458 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1459 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1460 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1461 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1462 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1463 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1464 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1465 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1466 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1467 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1468 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1469 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1470 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1471 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1472 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1473 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1474 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1475 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1476 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1477 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1478 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1479 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1480 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1481 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1482 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1483 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1484 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1485 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1486 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1487 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1488 +assert_return( + () => invoke($0, `le`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1489 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1490 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1491 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1492 +assert_return( + () => invoke($0, `le`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1493 +assert_return(() => invoke($0, `le`, [value("f64", -Infinity), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1494 +assert_return(() => invoke($0, `le`, [value("f64", -Infinity), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1495 +assert_return(() => invoke($0, `le`, [value("f64", Infinity), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1496 +assert_return(() => invoke($0, `le`, [value("f64", Infinity), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1497 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1498 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1499 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1500 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1501 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1502 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1503 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1504 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1505 +assert_return(() => invoke($0, `le`, [value("f64", -Infinity), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1506 +assert_return(() => invoke($0, `le`, [value("f64", -Infinity), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1507 +assert_return(() => invoke($0, `le`, [value("f64", Infinity), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1508 +assert_return(() => invoke($0, `le`, [value("f64", Infinity), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1509 +assert_return(() => invoke($0, `le`, [value("f64", -Infinity), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1510 +assert_return(() => invoke($0, `le`, [value("f64", -Infinity), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1511 +assert_return(() => invoke($0, `le`, [value("f64", Infinity), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1512 +assert_return(() => invoke($0, `le`, [value("f64", Infinity), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1513 +assert_return( + () => invoke($0, `le`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1514 +assert_return( + () => invoke($0, `le`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1515 +assert_return( + () => invoke($0, `le`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1516 +assert_return( + () => invoke($0, `le`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1517 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1518 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1519 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1520 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1521 +assert_return( + () => invoke($0, `le`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1522 +assert_return( + () => invoke($0, `le`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1523 +assert_return( + () => invoke($0, `le`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1524 +assert_return( + () => invoke($0, `le`, [value("f64", Infinity), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1525 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1526 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1527 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1528 +assert_return( + () => invoke($0, `le`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1529 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1530 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1531 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1532 +assert_return( + () => invoke($0, `le`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1533 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1534 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1535 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1536 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1537 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1538 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1539 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1540 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1541 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1542 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1543 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1544 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1545 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1546 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1547 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1548 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1549 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1550 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1551 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1552 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1553 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1554 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1555 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1556 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1557 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1558 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1559 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1560 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1561 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1562 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1563 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1564 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1565 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1566 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1567 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1568 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1569 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1570 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1571 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1572 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1573 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1574 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1575 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1576 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1577 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1578 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1579 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1580 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1581 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1582 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1583 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1584 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1585 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1586 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1587 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1588 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1589 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1590 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1591 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1592 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1593 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1594 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1595 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1596 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1597 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1598 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1599 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1600 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1601 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1602 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1603 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1604 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1605 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1606 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1607 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1608 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1609 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1610 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1611 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1612 +assert_return( + () => invoke($0, `le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1613 +assert_return(() => invoke($0, `gt`, [value("f64", -0), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1614 +assert_return(() => invoke($0, `gt`, [value("f64", -0), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1615 +assert_return(() => invoke($0, `gt`, [value("f64", 0), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1616 +assert_return(() => invoke($0, `gt`, [value("f64", 0), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1617 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1618 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1619 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1620 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1621 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1622 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1623 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1624 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1625 +assert_return(() => invoke($0, `gt`, [value("f64", -0), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1626 +assert_return(() => invoke($0, `gt`, [value("f64", -0), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1627 +assert_return(() => invoke($0, `gt`, [value("f64", 0), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1628 +assert_return(() => invoke($0, `gt`, [value("f64", 0), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1629 +assert_return(() => invoke($0, `gt`, [value("f64", -0), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1630 +assert_return(() => invoke($0, `gt`, [value("f64", -0), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1631 +assert_return(() => invoke($0, `gt`, [value("f64", 0), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1632 +assert_return(() => invoke($0, `gt`, [value("f64", 0), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1633 +assert_return( + () => invoke($0, `gt`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1634 +assert_return( + () => invoke($0, `gt`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1635 +assert_return( + () => invoke($0, `gt`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1636 +assert_return( + () => invoke($0, `gt`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1637 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1638 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1639 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1640 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1641 +assert_return(() => invoke($0, `gt`, [value("f64", -0), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1642 +assert_return(() => invoke($0, `gt`, [value("f64", -0), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1643 +assert_return(() => invoke($0, `gt`, [value("f64", 0), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1644 +assert_return(() => invoke($0, `gt`, [value("f64", 0), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1645 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1646 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1647 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1648 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1649 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1650 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1651 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1652 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1653 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1654 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1655 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1656 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1657 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1658 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1659 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1660 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1661 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1662 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1663 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1664 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1665 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1666 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1667 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1668 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1669 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1670 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1671 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1672 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1673 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1674 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1675 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1676 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1677 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1678 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1679 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1680 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1681 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1682 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1683 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1684 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1685 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1686 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1687 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1688 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1689 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1690 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1691 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1692 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1693 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1694 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1695 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1696 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1697 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1698 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1699 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1700 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1701 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1702 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1703 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1704 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1705 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1706 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1707 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1708 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1709 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1710 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1711 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1712 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1713 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1714 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1715 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1716 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1717 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1718 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1719 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1720 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1721 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1722 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1723 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1724 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1725 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1726 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1727 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1728 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1729 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1730 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1731 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1732 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1733 +assert_return(() => invoke($0, `gt`, [value("f64", -0.5), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1734 +assert_return(() => invoke($0, `gt`, [value("f64", -0.5), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1735 +assert_return(() => invoke($0, `gt`, [value("f64", 0.5), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1736 +assert_return(() => invoke($0, `gt`, [value("f64", 0.5), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1737 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1738 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1739 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1740 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1741 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1742 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1743 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1744 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1745 +assert_return(() => invoke($0, `gt`, [value("f64", -0.5), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1746 +assert_return(() => invoke($0, `gt`, [value("f64", -0.5), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1747 +assert_return(() => invoke($0, `gt`, [value("f64", 0.5), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1748 +assert_return(() => invoke($0, `gt`, [value("f64", 0.5), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1749 +assert_return(() => invoke($0, `gt`, [value("f64", -0.5), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1750 +assert_return(() => invoke($0, `gt`, [value("f64", -0.5), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1751 +assert_return(() => invoke($0, `gt`, [value("f64", 0.5), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1752 +assert_return(() => invoke($0, `gt`, [value("f64", 0.5), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1753 +assert_return( + () => invoke($0, `gt`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1754 +assert_return( + () => invoke($0, `gt`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1755 +assert_return( + () => invoke($0, `gt`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1756 +assert_return( + () => invoke($0, `gt`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1757 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1758 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1759 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1760 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1761 +assert_return(() => invoke($0, `gt`, [value("f64", -0.5), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1762 +assert_return(() => invoke($0, `gt`, [value("f64", -0.5), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1763 +assert_return(() => invoke($0, `gt`, [value("f64", 0.5), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1764 +assert_return(() => invoke($0, `gt`, [value("f64", 0.5), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1765 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1766 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1767 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1768 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1769 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1770 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1771 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1772 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1773 +assert_return(() => invoke($0, `gt`, [value("f64", -1), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1774 +assert_return(() => invoke($0, `gt`, [value("f64", -1), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1775 +assert_return(() => invoke($0, `gt`, [value("f64", 1), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1776 +assert_return(() => invoke($0, `gt`, [value("f64", 1), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1777 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1778 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1779 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1780 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1781 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1782 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1783 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1784 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1785 +assert_return(() => invoke($0, `gt`, [value("f64", -1), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1786 +assert_return(() => invoke($0, `gt`, [value("f64", -1), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1787 +assert_return(() => invoke($0, `gt`, [value("f64", 1), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1788 +assert_return(() => invoke($0, `gt`, [value("f64", 1), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1789 +assert_return(() => invoke($0, `gt`, [value("f64", -1), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1790 +assert_return(() => invoke($0, `gt`, [value("f64", -1), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1791 +assert_return(() => invoke($0, `gt`, [value("f64", 1), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1792 +assert_return(() => invoke($0, `gt`, [value("f64", 1), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1793 +assert_return( + () => invoke($0, `gt`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1794 +assert_return( + () => invoke($0, `gt`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1795 +assert_return( + () => invoke($0, `gt`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1796 +assert_return( + () => invoke($0, `gt`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1797 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1798 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1799 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1800 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1801 +assert_return(() => invoke($0, `gt`, [value("f64", -1), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1802 +assert_return(() => invoke($0, `gt`, [value("f64", -1), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1803 +assert_return(() => invoke($0, `gt`, [value("f64", 1), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1804 +assert_return(() => invoke($0, `gt`, [value("f64", 1), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1805 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1806 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1807 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1808 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1809 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1810 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1811 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1812 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1813 +assert_return( + () => invoke($0, `gt`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1814 +assert_return( + () => invoke($0, `gt`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1815 +assert_return( + () => invoke($0, `gt`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1816 +assert_return( + () => invoke($0, `gt`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1817 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1818 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1819 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1820 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1821 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1822 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1823 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1824 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1825 +assert_return( + () => invoke($0, `gt`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1826 +assert_return( + () => invoke($0, `gt`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1827 +assert_return( + () => invoke($0, `gt`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1828 +assert_return( + () => invoke($0, `gt`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1829 +assert_return( + () => invoke($0, `gt`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1830 +assert_return( + () => invoke($0, `gt`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1831 +assert_return( + () => invoke($0, `gt`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1832 +assert_return( + () => invoke($0, `gt`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1833 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1834 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1835 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1836 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1837 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1838 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1839 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1840 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1841 +assert_return( + () => invoke($0, `gt`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1842 +assert_return( + () => invoke($0, `gt`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1843 +assert_return( + () => invoke($0, `gt`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1844 +assert_return( + () => invoke($0, `gt`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1845 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1846 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1847 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1848 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1849 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1850 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1851 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1852 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1853 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1854 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1855 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1856 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1857 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1858 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1859 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1860 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1861 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1862 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1863 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1864 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1865 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1866 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1867 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1868 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1869 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1870 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1871 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1872 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1873 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1874 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1875 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1876 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1877 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1878 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1879 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1880 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1881 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1882 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1883 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1884 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1885 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1886 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1887 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1888 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1889 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1890 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1891 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1892 +assert_return( + () => invoke($0, `gt`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1893 +assert_return(() => invoke($0, `gt`, [value("f64", -Infinity), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1894 +assert_return(() => invoke($0, `gt`, [value("f64", -Infinity), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1895 +assert_return(() => invoke($0, `gt`, [value("f64", Infinity), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1896 +assert_return(() => invoke($0, `gt`, [value("f64", Infinity), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1897 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1898 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1899 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1900 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1901 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1902 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1903 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1904 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1905 +assert_return(() => invoke($0, `gt`, [value("f64", -Infinity), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1906 +assert_return(() => invoke($0, `gt`, [value("f64", -Infinity), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1907 +assert_return(() => invoke($0, `gt`, [value("f64", Infinity), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1908 +assert_return(() => invoke($0, `gt`, [value("f64", Infinity), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1909 +assert_return(() => invoke($0, `gt`, [value("f64", -Infinity), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1910 +assert_return(() => invoke($0, `gt`, [value("f64", -Infinity), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:1911 +assert_return(() => invoke($0, `gt`, [value("f64", Infinity), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1912 +assert_return(() => invoke($0, `gt`, [value("f64", Infinity), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:1913 +assert_return( + () => invoke($0, `gt`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1914 +assert_return( + () => invoke($0, `gt`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1915 +assert_return( + () => invoke($0, `gt`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1916 +assert_return( + () => invoke($0, `gt`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1917 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1918 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1919 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1920 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1921 +assert_return( + () => invoke($0, `gt`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1922 +assert_return( + () => invoke($0, `gt`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1923 +assert_return( + () => invoke($0, `gt`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:1924 +assert_return( + () => invoke($0, `gt`, [value("f64", Infinity), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1925 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1926 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1927 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1928 +assert_return( + () => invoke($0, `gt`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1929 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1930 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1931 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1932 +assert_return( + () => invoke($0, `gt`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1933 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1934 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1935 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1936 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1937 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1938 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1939 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1940 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1941 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1942 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1943 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1944 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1945 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1946 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1947 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1948 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1949 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1950 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1951 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1952 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1953 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1954 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1955 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1956 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1957 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1958 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1959 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1960 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1961 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1962 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1963 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1964 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1965 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1966 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1967 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1968 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1969 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1970 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1971 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1972 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1973 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1974 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1975 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1976 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1977 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1978 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1979 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1980 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1981 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1982 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1983 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1984 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1985 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1986 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1987 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1988 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1989 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1990 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1991 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1992 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1993 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1994 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1995 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1996 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1997 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1998 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:1999 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2000 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2001 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2002 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2003 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2004 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2005 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2006 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2007 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2008 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2009 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2010 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2011 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2012 +assert_return( + () => invoke($0, `gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2013 +assert_return(() => invoke($0, `ge`, [value("f64", -0), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2014 +assert_return(() => invoke($0, `ge`, [value("f64", -0), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2015 +assert_return(() => invoke($0, `ge`, [value("f64", 0), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2016 +assert_return(() => invoke($0, `ge`, [value("f64", 0), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2017 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2018 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2019 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2020 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2021 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2022 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2023 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2024 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2025 +assert_return(() => invoke($0, `ge`, [value("f64", -0), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2026 +assert_return(() => invoke($0, `ge`, [value("f64", -0), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2027 +assert_return(() => invoke($0, `ge`, [value("f64", 0), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2028 +assert_return(() => invoke($0, `ge`, [value("f64", 0), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2029 +assert_return(() => invoke($0, `ge`, [value("f64", -0), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2030 +assert_return(() => invoke($0, `ge`, [value("f64", -0), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2031 +assert_return(() => invoke($0, `ge`, [value("f64", 0), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2032 +assert_return(() => invoke($0, `ge`, [value("f64", 0), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2033 +assert_return( + () => invoke($0, `ge`, [value("f64", -0), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2034 +assert_return( + () => invoke($0, `ge`, [value("f64", -0), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2035 +assert_return( + () => invoke($0, `ge`, [value("f64", 0), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2036 +assert_return( + () => invoke($0, `ge`, [value("f64", 0), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2037 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2038 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2039 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2040 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2041 +assert_return(() => invoke($0, `ge`, [value("f64", -0), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2042 +assert_return(() => invoke($0, `ge`, [value("f64", -0), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2043 +assert_return(() => invoke($0, `ge`, [value("f64", 0), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2044 +assert_return(() => invoke($0, `ge`, [value("f64", 0), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2045 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2046 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2047 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2048 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2049 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2050 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2051 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2052 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2053 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2054 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2055 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2056 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2057 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2058 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2059 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2060 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2061 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2062 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2063 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2064 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2065 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2066 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2067 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2068 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2069 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2070 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2071 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2072 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2073 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2074 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2075 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2076 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2077 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2078 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2079 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2080 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2081 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2082 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2083 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2084 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2085 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2086 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2087 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2088 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2089 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2090 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2091 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2092 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2093 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2094 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2095 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2096 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2097 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2098 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2099 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2100 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2101 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2102 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2103 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2104 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2105 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2106 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2107 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2108 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2109 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2110 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2111 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2112 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2113 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2114 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2115 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2116 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2117 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2118 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2119 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2120 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2121 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2122 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2123 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2124 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2125 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2126 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2127 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2128 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2129 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2130 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2131 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2132 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2133 +assert_return(() => invoke($0, `ge`, [value("f64", -0.5), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2134 +assert_return(() => invoke($0, `ge`, [value("f64", -0.5), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2135 +assert_return(() => invoke($0, `ge`, [value("f64", 0.5), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2136 +assert_return(() => invoke($0, `ge`, [value("f64", 0.5), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2137 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2138 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2139 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2140 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2141 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2142 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2143 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2144 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2145 +assert_return(() => invoke($0, `ge`, [value("f64", -0.5), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2146 +assert_return(() => invoke($0, `ge`, [value("f64", -0.5), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2147 +assert_return(() => invoke($0, `ge`, [value("f64", 0.5), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2148 +assert_return(() => invoke($0, `ge`, [value("f64", 0.5), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2149 +assert_return(() => invoke($0, `ge`, [value("f64", -0.5), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2150 +assert_return(() => invoke($0, `ge`, [value("f64", -0.5), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2151 +assert_return(() => invoke($0, `ge`, [value("f64", 0.5), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2152 +assert_return(() => invoke($0, `ge`, [value("f64", 0.5), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2153 +assert_return( + () => invoke($0, `ge`, [value("f64", -0.5), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2154 +assert_return( + () => invoke($0, `ge`, [value("f64", -0.5), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2155 +assert_return( + () => invoke($0, `ge`, [value("f64", 0.5), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2156 +assert_return( + () => invoke($0, `ge`, [value("f64", 0.5), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2157 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2158 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2159 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2160 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2161 +assert_return(() => invoke($0, `ge`, [value("f64", -0.5), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2162 +assert_return(() => invoke($0, `ge`, [value("f64", -0.5), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2163 +assert_return(() => invoke($0, `ge`, [value("f64", 0.5), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2164 +assert_return(() => invoke($0, `ge`, [value("f64", 0.5), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2165 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2166 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2167 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2168 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2169 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2170 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2171 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2172 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 0.5), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2173 +assert_return(() => invoke($0, `ge`, [value("f64", -1), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2174 +assert_return(() => invoke($0, `ge`, [value("f64", -1), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2175 +assert_return(() => invoke($0, `ge`, [value("f64", 1), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2176 +assert_return(() => invoke($0, `ge`, [value("f64", 1), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2177 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2178 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2179 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2180 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2181 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2182 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2183 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2184 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2185 +assert_return(() => invoke($0, `ge`, [value("f64", -1), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2186 +assert_return(() => invoke($0, `ge`, [value("f64", -1), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2187 +assert_return(() => invoke($0, `ge`, [value("f64", 1), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2188 +assert_return(() => invoke($0, `ge`, [value("f64", 1), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2189 +assert_return(() => invoke($0, `ge`, [value("f64", -1), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2190 +assert_return(() => invoke($0, `ge`, [value("f64", -1), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2191 +assert_return(() => invoke($0, `ge`, [value("f64", 1), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2192 +assert_return(() => invoke($0, `ge`, [value("f64", 1), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2193 +assert_return( + () => invoke($0, `ge`, [value("f64", -1), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2194 +assert_return( + () => invoke($0, `ge`, [value("f64", -1), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2195 +assert_return( + () => invoke($0, `ge`, [value("f64", 1), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2196 +assert_return( + () => invoke($0, `ge`, [value("f64", 1), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2197 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2198 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2199 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2200 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2201 +assert_return(() => invoke($0, `ge`, [value("f64", -1), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2202 +assert_return(() => invoke($0, `ge`, [value("f64", -1), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2203 +assert_return(() => invoke($0, `ge`, [value("f64", 1), value("f64", -Infinity)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2204 +assert_return(() => invoke($0, `ge`, [value("f64", 1), value("f64", Infinity)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2205 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2206 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2207 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2208 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2209 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2210 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2211 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2212 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 1), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2213 +assert_return( + () => invoke($0, `ge`, [value("f64", -6.283185307179586), value("f64", -0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2214 +assert_return( + () => invoke($0, `ge`, [value("f64", -6.283185307179586), value("f64", 0)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2215 +assert_return( + () => invoke($0, `ge`, [value("f64", 6.283185307179586), value("f64", -0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2216 +assert_return( + () => invoke($0, `ge`, [value("f64", 6.283185307179586), value("f64", 0)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2217 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2218 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2219 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2220 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2221 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2222 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2223 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2224 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2225 +assert_return( + () => invoke($0, `ge`, [value("f64", -6.283185307179586), value("f64", -0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2226 +assert_return( + () => invoke($0, `ge`, [value("f64", -6.283185307179586), value("f64", 0.5)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2227 +assert_return( + () => invoke($0, `ge`, [value("f64", 6.283185307179586), value("f64", -0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2228 +assert_return( + () => invoke($0, `ge`, [value("f64", 6.283185307179586), value("f64", 0.5)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2229 +assert_return( + () => invoke($0, `ge`, [value("f64", -6.283185307179586), value("f64", -1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2230 +assert_return( + () => invoke($0, `ge`, [value("f64", -6.283185307179586), value("f64", 1)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2231 +assert_return( + () => invoke($0, `ge`, [value("f64", 6.283185307179586), value("f64", -1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2232 +assert_return( + () => invoke($0, `ge`, [value("f64", 6.283185307179586), value("f64", 1)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2233 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2234 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2235 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2236 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2237 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2238 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2239 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2240 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2241 +assert_return( + () => invoke($0, `ge`, [value("f64", -6.283185307179586), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2242 +assert_return( + () => invoke($0, `ge`, [value("f64", -6.283185307179586), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2243 +assert_return( + () => invoke($0, `ge`, [value("f64", 6.283185307179586), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2244 +assert_return( + () => invoke($0, `ge`, [value("f64", 6.283185307179586), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2245 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2246 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2247 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2248 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2249 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2250 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2251 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2252 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 6.283185307179586), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2253 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2254 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2255 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2256 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2257 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2258 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2259 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2260 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2261 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2262 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2263 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2264 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2265 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2266 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2267 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2268 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.5), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2269 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2270 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2271 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2272 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2273 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2274 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2275 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2276 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6.283185307179586), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2277 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2278 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2279 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2280 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2281 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2282 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2283 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -Infinity), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2284 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2285 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2286 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2287 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2288 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2289 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2290 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2291 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2292 +assert_return( + () => invoke($0, `ge`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2293 +assert_return(() => invoke($0, `ge`, [value("f64", -Infinity), value("f64", -0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2294 +assert_return(() => invoke($0, `ge`, [value("f64", -Infinity), value("f64", 0)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2295 +assert_return(() => invoke($0, `ge`, [value("f64", Infinity), value("f64", -0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2296 +assert_return(() => invoke($0, `ge`, [value("f64", Infinity), value("f64", 0)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2297 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2298 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2299 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2300 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2301 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2302 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2303 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2304 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2305 +assert_return(() => invoke($0, `ge`, [value("f64", -Infinity), value("f64", -0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2306 +assert_return(() => invoke($0, `ge`, [value("f64", -Infinity), value("f64", 0.5)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2307 +assert_return(() => invoke($0, `ge`, [value("f64", Infinity), value("f64", -0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2308 +assert_return(() => invoke($0, `ge`, [value("f64", Infinity), value("f64", 0.5)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2309 +assert_return(() => invoke($0, `ge`, [value("f64", -Infinity), value("f64", -1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2310 +assert_return(() => invoke($0, `ge`, [value("f64", -Infinity), value("f64", 1)]), [value("i32", 0)]); + +// ./test/core/f64_cmp.wast:2311 +assert_return(() => invoke($0, `ge`, [value("f64", Infinity), value("f64", -1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2312 +assert_return(() => invoke($0, `ge`, [value("f64", Infinity), value("f64", 1)]), [value("i32", 1)]); + +// ./test/core/f64_cmp.wast:2313 +assert_return( + () => invoke($0, `ge`, [value("f64", -Infinity), value("f64", -6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2314 +assert_return( + () => invoke($0, `ge`, [value("f64", -Infinity), value("f64", 6.283185307179586)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2315 +assert_return( + () => invoke($0, `ge`, [value("f64", Infinity), value("f64", -6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2316 +assert_return( + () => invoke($0, `ge`, [value("f64", Infinity), value("f64", 6.283185307179586)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2317 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2318 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2319 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2320 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2321 +assert_return( + () => invoke($0, `ge`, [value("f64", -Infinity), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2322 +assert_return( + () => invoke($0, `ge`, [value("f64", -Infinity), value("f64", Infinity)]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2323 +assert_return( + () => invoke($0, `ge`, [value("f64", Infinity), value("f64", -Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2324 +assert_return( + () => invoke($0, `ge`, [value("f64", Infinity), value("f64", Infinity)]), + [value("i32", 1)], +); + +// ./test/core/f64_cmp.wast:2325 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2326 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2327 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2328 +assert_return( + () => invoke($0, `ge`, [ + value("f64", -Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2329 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2330 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2331 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2332 +assert_return( + () => invoke($0, `ge`, [ + value("f64", Infinity), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2333 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2334 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2335 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2336 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2337 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2338 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2339 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2340 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2341 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2342 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2343 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2344 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2345 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2346 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2347 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2348 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2349 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2350 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2351 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2352 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2353 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2354 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2355 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2356 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2357 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2358 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2359 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2360 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2361 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2362 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2363 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2364 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 0.5), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2365 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2366 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2367 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2368 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2369 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2370 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2371 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2372 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 1), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2373 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2374 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2375 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2376 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2377 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2378 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2379 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2380 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 6.283185307179586), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2381 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2382 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2383 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2384 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2385 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2386 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2387 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2388 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2389 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2390 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2391 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2392 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2393 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2394 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", -Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2395 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2396 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2397 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2398 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2399 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2400 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2401 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2402 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2403 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2404 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2405 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2406 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2407 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2408 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2409 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2410 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2411 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2412 +assert_return( + () => invoke($0, `ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/f64_cmp.wast:2417 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.eq (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64_cmp.wast:2418 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.ge (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64_cmp.wast:2419 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.gt (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64_cmp.wast:2420 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.le (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64_cmp.wast:2421 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.lt (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/f64_cmp.wast:2422 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64.ne (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/fac.wast.js b/js/src/jit-test/tests/wasm/spec/spec/fac.wast.js new file mode 100644 index 0000000000..f356881230 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/fac.wast.js @@ -0,0 +1,139 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/fac.wast + +// ./test/core/fac.wast:1 +let $0 = instantiate(`(module + ;; Recursive factorial + (func (export "fac-rec") (param i64) (result i64) + (if (result i64) (i64.eq (local.get 0) (i64.const 0)) + (then (i64.const 1)) + (else + (i64.mul (local.get 0) (call 0 (i64.sub (local.get 0) (i64.const 1)))) + ) + ) + ) + + ;; Recursive factorial named + (func $$fac-rec-named (export "fac-rec-named") (param $$n i64) (result i64) + (if (result i64) (i64.eq (local.get $$n) (i64.const 0)) + (then (i64.const 1)) + (else + (i64.mul + (local.get $$n) + (call $$fac-rec-named (i64.sub (local.get $$n) (i64.const 1))) + ) + ) + ) + ) + + ;; Iterative factorial + (func (export "fac-iter") (param i64) (result i64) + (local i64 i64) + (local.set 1 (local.get 0)) + (local.set 2 (i64.const 1)) + (block + (loop + (if + (i64.eq (local.get 1) (i64.const 0)) + (then (br 2)) + (else + (local.set 2 (i64.mul (local.get 1) (local.get 2))) + (local.set 1 (i64.sub (local.get 1) (i64.const 1))) + ) + ) + (br 0) + ) + ) + (local.get 2) + ) + + ;; Iterative factorial named + (func (export "fac-iter-named") (param $$n i64) (result i64) + (local $$i i64) + (local $$res i64) + (local.set $$i (local.get $$n)) + (local.set $$res (i64.const 1)) + (block $$done + (loop $$loop + (if + (i64.eq (local.get $$i) (i64.const 0)) + (then (br $$done)) + (else + (local.set $$res (i64.mul (local.get $$i) (local.get $$res))) + (local.set $$i (i64.sub (local.get $$i) (i64.const 1))) + ) + ) + (br $$loop) + ) + ) + (local.get $$res) + ) + + ;; Optimized factorial. + (func (export "fac-opt") (param i64) (result i64) + (local i64) + (local.set 1 (i64.const 1)) + (block + (br_if 0 (i64.lt_s (local.get 0) (i64.const 2))) + (loop + (local.set 1 (i64.mul (local.get 1) (local.get 0))) + (local.set 0 (i64.add (local.get 0) (i64.const -1))) + (br_if 0 (i64.gt_s (local.get 0) (i64.const 1))) + ) + ) + (local.get 1) + ) + + ;; Iterative factorial without locals. + (func $$pick0 (param i64) (result i64 i64) + (local.get 0) (local.get 0) + ) + (func $$pick1 (param i64 i64) (result i64 i64 i64) + (local.get 0) (local.get 1) (local.get 0) + ) + (func (export "fac-ssa") (param i64) (result i64) + (i64.const 1) (local.get 0) + (loop $$l (param i64 i64) (result i64) + (call $$pick1) (call $$pick1) (i64.mul) + (call $$pick1) (i64.const 1) (i64.sub) + (call $$pick0) (i64.const 0) (i64.gt_u) + (br_if $$l) + (drop) (return) + ) + ) +)`); + +// ./test/core/fac.wast:102 +assert_return(() => invoke($0, `fac-rec`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/fac.wast:103 +assert_return(() => invoke($0, `fac-iter`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/fac.wast:104 +assert_return(() => invoke($0, `fac-rec-named`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/fac.wast:105 +assert_return(() => invoke($0, `fac-iter-named`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/fac.wast:106 +assert_return(() => invoke($0, `fac-opt`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/fac.wast:107 +assert_return(() => invoke($0, `fac-ssa`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/fac.wast:109 +assert_exhaustion(() => invoke($0, `fac-rec`, [1073741824n]), `call stack exhausted`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/float_exprs.wast.js b/js/src/jit-test/tests/wasm/spec/spec/float_exprs.wast.js new file mode 100644 index 0000000000..120b1402c4 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/float_exprs.wast.js @@ -0,0 +1,7295 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/float_exprs.wast + +// ./test/core/float_exprs.wast:6 +let $0 = instantiate(`(module + (func (export "f64.no_contraction") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.add (f64.mul (local.get $$x) (local.get $$y)) (local.get $$z))) +)`); + +// ./test/core/float_exprs.wast:11 +assert_return( + () => invoke($0, `f64.no_contraction`, [ + value("f64", -0.00000000000000000000000000000015967133604096234), + value("f64", 87633521608271230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 42896576204898460000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -13992561434270632000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:12 +assert_return( + () => invoke($0, `f64.no_contraction`, [ + value("f64", 8341016642481988), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003223424965918293), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000023310835741659086), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000026886641288847496), + ], +); + +// ./test/core/float_exprs.wast:13 +assert_return( + () => invoke($0, `f64.no_contraction`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030119045290520013), + value("f64", 52699336439236750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.00000000000000000000000000000006654454781339856), + ]), + [value("f64", -0.0000000000000000015872537009936566)], +); + +// ./test/core/float_exprs.wast:14 +assert_return( + () => invoke($0, `f64.no_contraction`, [ + value("f64", 0.0000000000000000000031413936116780743), + value("f64", -0.0000000000000000000000000000007262766035707377), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000004619684894228461), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000228152068276836), + ], +); + +// ./test/core/float_exprs.wast:15 +assert_return( + () => invoke($0, `f64.no_contraction`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016080464217402378), + value("f64", -382103410226833000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.00000000000000010541980504151345), + ]), + [value("f64", 0.00006144400215510552)], +); + +// ./test/core/float_exprs.wast:19 +let $1 = instantiate(`(module + (func (export "f32.no_fma") (param $$x f32) (param $$y f32) (param $$z f32) (result f32) + (f32.add (f32.mul (local.get $$x) (local.get $$y)) (local.get $$z))) + (func (export "f64.no_fma") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.add (f64.mul (local.get $$x) (local.get $$y)) (local.get $$z))) +)`); + +// ./test/core/float_exprs.wast:26 +assert_return( + () => invoke($1, `f32.no_fma`, [ + value("f32", 35184304000000000000000000000000000000), + value("f32", 0.00000021584361), + value("f32", 259340640000000000000000000000000), + ]), + [value("f32", 266934960000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:27 +assert_return( + () => invoke($1, `f32.no_fma`, [ + value("f32", 0.0000000071753243), + value("f32", -0.000000000000001225534), + value("f32", 0.0000000000000000000000000041316436), + ]), + [value("f32", -0.0000000000000000000000087894724)], +); + +// ./test/core/float_exprs.wast:28 +assert_return( + () => invoke($1, `f32.no_fma`, [ + value("f32", 231063440000), + value("f32", 0.00020773262), + value("f32", 1797.6421), + ]), + [value("f32", 48001210)], +); + +// ./test/core/float_exprs.wast:29 +assert_return( + () => invoke($1, `f32.no_fma`, [ + value("f32", 0.0045542703), + value("f32", -7265493.5), + value("f32", -2.3964283), + ]), + [value("f32", -33091.414)], +); + +// ./test/core/float_exprs.wast:30 +assert_return( + () => invoke($1, `f32.no_fma`, [ + value("f32", 98881730000000000000000000000000000000), + value("f32", -0.0000000000000000000008570631), + value("f32", -21579143000), + ]), + [value("f32", -84747910000000000)], +); + +// ./test/core/float_exprs.wast:31 +assert_return( + () => invoke($1, `f64.no_fma`, [ + value("f64", 789084284375179200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4215020052117360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1336601081131744700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 1989405000320312800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:32 +assert_return( + () => invoke($1, `f64.no_fma`, [ + value("f64", 5586822348009285500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.0000000000000000000000000000000000000007397302005677334), + value("f64", 36567834172040920000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 4132741216029240700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:33 +assert_return( + () => invoke($1, `f64.no_fma`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014260477822274587), + value("f64", -31087632036599860000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 343269235523777630000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -4433244872049653000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:34 +assert_return( + () => invoke($1, `f64.no_fma`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000809034701735478), + value("f64", -24874417850667450000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 49484765138510810), + ]), + [value("f64", 250727437405094720)], +); + +// ./test/core/float_exprs.wast:35 +assert_return( + () => invoke($1, `f64.no_fma`, [ + value("f64", 6723256985364377), + value("f64", 285456566692879460000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -5593839470050757000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 1919197856036028600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:40 +let $2 = instantiate(`(module + (func (export "f32.no_fold_add_zero") (param $$x f32) (result f32) + (f32.add (local.get $$x) (f32.const 0.0))) + (func (export "f64.no_fold_add_zero") (param $$x f64) (result f64) + (f64.add (local.get $$x) (f64.const 0.0))) +)`); + +// ./test/core/float_exprs.wast:47 +assert_return(() => invoke($2, `f32.no_fold_add_zero`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:48 +assert_return(() => invoke($2, `f64.no_fold_add_zero`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:49 +assert_return( + () => invoke($2, `f32.no_fold_add_zero`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:50 +assert_return( + () => invoke($2, `f64.no_fold_add_zero`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:54 +let $3 = instantiate(`(module + (func (export "f32.no_fold_zero_sub") (param $$x f32) (result f32) + (f32.sub (f32.const 0.0) (local.get $$x))) + (func (export "f64.no_fold_zero_sub") (param $$x f64) (result f64) + (f64.sub (f64.const 0.0) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:61 +assert_return(() => invoke($3, `f32.no_fold_zero_sub`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:62 +assert_return(() => invoke($3, `f64.no_fold_zero_sub`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:63 +assert_return( + () => invoke($3, `f32.no_fold_zero_sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:64 +assert_return( + () => invoke($3, `f64.no_fold_zero_sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:68 +let $4 = instantiate(`(module + (func (export "f32.no_fold_sub_zero") (param $$x f32) (result f32) + (f32.sub (local.get $$x) (f32.const 0.0))) + (func (export "f64.no_fold_sub_zero") (param $$x f64) (result f64) + (f64.sub (local.get $$x) (f64.const 0.0))) +)`); + +// ./test/core/float_exprs.wast:75 +assert_return( + () => invoke($4, `f32.no_fold_sub_zero`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:76 +assert_return( + () => invoke($4, `f64.no_fold_sub_zero`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:80 +let $5 = instantiate(`(module + (func (export "f32.no_fold_mul_zero") (param $$x f32) (result f32) + (f32.mul (local.get $$x) (f32.const 0.0))) + (func (export "f64.no_fold_mul_zero") (param $$x f64) (result f64) + (f64.mul (local.get $$x) (f64.const 0.0))) +)`); + +// ./test/core/float_exprs.wast:87 +assert_return(() => invoke($5, `f32.no_fold_mul_zero`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:88 +assert_return(() => invoke($5, `f32.no_fold_mul_zero`, [value("f32", -1)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:89 +assert_return(() => invoke($5, `f32.no_fold_mul_zero`, [value("f32", -2)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:90 +assert_return( + () => invoke($5, `f32.no_fold_mul_zero`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:91 +assert_return(() => invoke($5, `f64.no_fold_mul_zero`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:92 +assert_return(() => invoke($5, `f64.no_fold_mul_zero`, [value("f64", -1)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:93 +assert_return(() => invoke($5, `f64.no_fold_mul_zero`, [value("f64", -2)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:94 +assert_return( + () => invoke($5, `f64.no_fold_mul_zero`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:99 +let $6 = instantiate(`(module + (func (export "f32.no_fold_mul_one") (param $$x f32) (result f32) + (f32.mul (local.get $$x) (f32.const 1.0))) + (func (export "f64.no_fold_mul_one") (param $$x f64) (result f64) + (f64.mul (local.get $$x) (f64.const 1.0))) +)`); + +// ./test/core/float_exprs.wast:106 +assert_return( + () => invoke($6, `f32.no_fold_mul_one`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:107 +assert_return( + () => invoke($6, `f64.no_fold_mul_one`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:111 +let $7 = instantiate(`(module + (func (export "f32.no_fold_zero_div") (param $$x f32) (result f32) + (f32.div (f32.const 0.0) (local.get $$x))) + (func (export "f64.no_fold_zero_div") (param $$x f64) (result f64) + (f64.div (f64.const 0.0) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:118 +assert_return(() => invoke($7, `f32.no_fold_zero_div`, [value("f32", 0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:119 +assert_return(() => invoke($7, `f32.no_fold_zero_div`, [value("f32", -0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:120 +assert_return( + () => invoke($7, `f32.no_fold_zero_div`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:121 +assert_return( + () => invoke($7, `f32.no_fold_zero_div`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:122 +assert_return(() => invoke($7, `f64.no_fold_zero_div`, [value("f64", 0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:123 +assert_return(() => invoke($7, `f64.no_fold_zero_div`, [value("f64", -0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:124 +assert_return( + () => invoke($7, `f64.no_fold_zero_div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:125 +assert_return( + () => invoke($7, `f64.no_fold_zero_div`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:129 +let $8 = instantiate(`(module + (func (export "f32.no_fold_div_one") (param $$x f32) (result f32) + (f32.div (local.get $$x) (f32.const 1.0))) + (func (export "f64.no_fold_div_one") (param $$x f64) (result f64) + (f64.div (local.get $$x) (f64.const 1.0))) +)`); + +// ./test/core/float_exprs.wast:136 +assert_return( + () => invoke($8, `f32.no_fold_div_one`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:137 +assert_return( + () => invoke($8, `f64.no_fold_div_one`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:141 +let $9 = instantiate(`(module + (func (export "f32.no_fold_div_neg1") (param $$x f32) (result f32) + (f32.div (local.get $$x) (f32.const -1.0))) + (func (export "f64.no_fold_div_neg1") (param $$x f64) (result f64) + (f64.div (local.get $$x) (f64.const -1.0))) +)`); + +// ./test/core/float_exprs.wast:148 +assert_return( + () => invoke($9, `f32.no_fold_div_neg1`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:149 +assert_return( + () => invoke($9, `f64.no_fold_div_neg1`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:153 +let $10 = instantiate(`(module + (func (export "f32.no_fold_neg0_sub") (param $$x f32) (result f32) + (f32.sub (f32.const -0.0) (local.get $$x))) + (func (export "f64.no_fold_neg0_sub") (param $$x f64) (result f64) + (f64.sub (f64.const -0.0) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:160 +assert_return( + () => invoke($10, `f32.no_fold_neg0_sub`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:161 +assert_return( + () => invoke($10, `f64.no_fold_neg0_sub`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:165 +let $11 = instantiate(`(module + (func (export "f32.no_fold_neg1_mul") (param $$x f32) (result f32) + (f32.mul (f32.const -1.0) (local.get $$x))) + (func (export "f64.no_fold_neg1_mul") (param $$x f64) (result f64) + (f64.mul (f64.const -1.0) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:172 +assert_return( + () => invoke($11, `f32.no_fold_neg1_mul`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:173 +assert_return( + () => invoke($11, `f64.no_fold_neg1_mul`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:177 +let $12 = instantiate(`(module + (func (export "f32.no_fold_eq_self") (param $$x f32) (result i32) + (f32.eq (local.get $$x) (local.get $$x))) + (func (export "f64.no_fold_eq_self") (param $$x f64) (result i32) + (f64.eq (local.get $$x) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:184 +assert_return( + () => invoke($12, `f32.no_fold_eq_self`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:185 +assert_return( + () => invoke($12, `f64.no_fold_eq_self`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:189 +let $13 = instantiate(`(module + (func (export "f32.no_fold_ne_self") (param $$x f32) (result i32) + (f32.ne (local.get $$x) (local.get $$x))) + (func (export "f64.no_fold_ne_self") (param $$x f64) (result i32) + (f64.ne (local.get $$x) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:196 +assert_return( + () => invoke($13, `f32.no_fold_ne_self`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:197 +assert_return( + () => invoke($13, `f64.no_fold_ne_self`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:201 +let $14 = instantiate(`(module + (func (export "f32.no_fold_sub_self") (param $$x f32) (result f32) + (f32.sub (local.get $$x) (local.get $$x))) + (func (export "f64.no_fold_sub_self") (param $$x f64) (result f64) + (f64.sub (local.get $$x) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:208 +assert_return(() => invoke($14, `f32.no_fold_sub_self`, [value("f32", Infinity)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:209 +assert_return( + () => invoke($14, `f32.no_fold_sub_self`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:210 +assert_return(() => invoke($14, `f64.no_fold_sub_self`, [value("f64", Infinity)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:211 +assert_return( + () => invoke($14, `f64.no_fold_sub_self`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:215 +let $15 = instantiate(`(module + (func (export "f32.no_fold_div_self") (param $$x f32) (result f32) + (f32.div (local.get $$x) (local.get $$x))) + (func (export "f64.no_fold_div_self") (param $$x f64) (result f64) + (f64.div (local.get $$x) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:222 +assert_return(() => invoke($15, `f32.no_fold_div_self`, [value("f32", Infinity)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:223 +assert_return( + () => invoke($15, `f32.no_fold_div_self`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:224 +assert_return(() => invoke($15, `f32.no_fold_div_self`, [value("f32", 0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:225 +assert_return(() => invoke($15, `f32.no_fold_div_self`, [value("f32", -0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:226 +assert_return(() => invoke($15, `f64.no_fold_div_self`, [value("f64", Infinity)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:227 +assert_return( + () => invoke($15, `f64.no_fold_div_self`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:228 +assert_return(() => invoke($15, `f64.no_fold_div_self`, [value("f64", 0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:229 +assert_return(() => invoke($15, `f64.no_fold_div_self`, [value("f64", -0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:233 +let $16 = instantiate(`(module + (func (export "f32.no_fold_div_3") (param $$x f32) (result f32) + (f32.div (local.get $$x) (f32.const 3.0))) + (func (export "f64.no_fold_div_3") (param $$x f64) (result f64) + (f64.div (local.get $$x) (f64.const 3.0))) +)`); + +// ./test/core/float_exprs.wast:240 +assert_return( + () => invoke($16, `f32.no_fold_div_3`, [value("f32", -1361679000000000)]), + [value("f32", -453892980000000)], +); + +// ./test/core/float_exprs.wast:241 +assert_return( + () => invoke($16, `f32.no_fold_div_3`, [value("f32", -18736880000000000000000000000)]), + [value("f32", -6245626600000000000000000000)], +); + +// ./test/core/float_exprs.wast:242 +assert_return( + () => invoke($16, `f32.no_fold_div_3`, [ + value("f32", -0.00000000000000000000000012045131), + ]), + [value("f32", -0.000000000000000000000000040150435)], +); + +// ./test/core/float_exprs.wast:243 +assert_return( + () => invoke($16, `f32.no_fold_div_3`, [ + value("f32", -0.00000000000000000000000000000000000005281346), + ]), + [value("f32", -0.000000000000000000000000000000000000017604486)], +); + +// ./test/core/float_exprs.wast:244 +assert_return( + () => invoke($16, `f32.no_fold_div_3`, [value("f32", -0.000000000000000025495563)]), + [value("f32", -0.000000000000000008498521)], +); + +// ./test/core/float_exprs.wast:245 +assert_return( + () => invoke($16, `f64.no_fold_div_3`, [ + value("f64", -29563579573969634000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -9854526524656545000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:246 +assert_return( + () => invoke($16, `f64.no_fold_div_3`, [ + value("f64", -0.000000000000000000000000000000000000000000000000009291150921449772), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000003097050307149924), + ], +); + +// ./test/core/float_exprs.wast:247 +assert_return( + () => invoke($16, `f64.no_fold_div_3`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013808061543557006), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004602687181185669), + ], +); + +// ./test/core/float_exprs.wast:248 +assert_return( + () => invoke($16, `f64.no_fold_div_3`, [ + value("f64", -1378076163468349000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -459358721156116300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:249 +assert_return( + () => invoke($16, `f64.no_fold_div_3`, [ + value("f64", 86324008088313660000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 28774669362771220000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:253 +let $17 = instantiate(`(module + (func (export "f32.no_factor") (param $$x f32) (param $$y f32) (param $$z f32) (result f32) + (f32.add (f32.mul (local.get $$x) (local.get $$z)) (f32.mul (local.get $$y) (local.get $$z)))) + (func (export "f64.no_factor") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.add (f64.mul (local.get $$x) (local.get $$z)) (f64.mul (local.get $$y) (local.get $$z)))) +)`); + +// ./test/core/float_exprs.wast:260 +assert_return( + () => invoke($17, `f32.no_factor`, [ + value("f32", -1435111700000), + value("f32", -853617640000000), + value("f32", 1113849300000000000), + ]), + [value("f32", -952399900000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:261 +assert_return( + () => invoke($17, `f32.no_factor`, [ + value("f32", -0.026666632), + value("f32", 0.048412822), + value("f32", -0.002813697), + ]), + [value("f32", -0.0000611872)], +); + +// ./test/core/float_exprs.wast:262 +assert_return( + () => invoke($17, `f32.no_factor`, [ + value("f32", -0.00000000000046619777), + value("f32", 0.00000000000000000010478377), + value("f32", 14469202000000000000000000000000000000), + ]), + [value("f32", -6745508000000000000000000)], +); + +// ./test/core/float_exprs.wast:263 +assert_return( + () => invoke($17, `f32.no_factor`, [ + value("f32", -0.00000000000000000010689046), + value("f32", 0.00000000000000000000000010694433), + value("f32", 568307000000000000000000000000000000), + ]), + [value("f32", -60746540000000000)], +); + +// ./test/core/float_exprs.wast:264 +assert_return( + () => invoke($17, `f32.no_factor`, [ + value("f32", -0.000000000000000000000000063545994), + value("f32", 0.0000000000000000000007524625), + value("f32", 1626770.3), + ]), + [value("f32", 0.0000000000000012239803)], +); + +// ./test/core/float_exprs.wast:265 +assert_return( + () => invoke($17, `f64.no_factor`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028390554709988774), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001473981250649641), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000029001229846550766), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008233610026197336), + ], +); + +// ./test/core/float_exprs.wast:266 +assert_return( + () => invoke($17, `f64.no_factor`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006461015505916123), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000023923242802975938), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015300738798561604), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:267 +assert_return( + () => invoke($17, `f64.no_factor`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002939056292080733), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000002146156743463356), + value("f64", -2510967223130241600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 538892923853642600000000000000000000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:268 +assert_return( + () => invoke($17, `f64.no_factor`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000017785466771708878), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000009328516775403213), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000012121009044876735), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001130710359943689), + ], +); + +// ./test/core/float_exprs.wast:269 +assert_return( + () => invoke($17, `f64.no_factor`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015194859063177362), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000883589921438065), + value("f64", -1735830019469195800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.0000000000000000000000000015337619131701908)], +); + +// ./test/core/float_exprs.wast:273 +let $18 = instantiate(`(module + (func (export "f32.no_distribute") (param $$x f32) (param $$y f32) (param $$z f32) (result f32) + (f32.mul (f32.add (local.get $$x) (local.get $$y)) (local.get $$z))) + (func (export "f64.no_distribute") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.mul (f64.add (local.get $$x) (local.get $$y)) (local.get $$z))) +)`); + +// ./test/core/float_exprs.wast:280 +assert_return( + () => invoke($18, `f32.no_distribute`, [ + value("f32", -1435111700000), + value("f32", -853617640000000), + value("f32", 1113849300000000000), + ]), + [value("f32", -952400000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:281 +assert_return( + () => invoke($18, `f32.no_distribute`, [ + value("f32", -0.026666632), + value("f32", 0.048412822), + value("f32", -0.002813697), + ]), + [value("f32", -0.000061187195)], +); + +// ./test/core/float_exprs.wast:282 +assert_return( + () => invoke($18, `f32.no_distribute`, [ + value("f32", -0.00000000000046619777), + value("f32", 0.00000000000000000010478377), + value("f32", 14469202000000000000000000000000000000), + ]), + [value("f32", -6745508500000000000000000)], +); + +// ./test/core/float_exprs.wast:283 +assert_return( + () => invoke($18, `f32.no_distribute`, [ + value("f32", -0.00000000000000000010689046), + value("f32", 0.00000000000000000000000010694433), + value("f32", 568307000000000000000000000000000000), + ]), + [value("f32", -60746536000000000)], +); + +// ./test/core/float_exprs.wast:284 +assert_return( + () => invoke($18, `f32.no_distribute`, [ + value("f32", -0.000000000000000000000000063545994), + value("f32", 0.0000000000000000000007524625), + value("f32", 1626770.3), + ]), + [value("f32", 0.0000000000000012239802)], +); + +// ./test/core/float_exprs.wast:285 +assert_return( + () => invoke($18, `f64.no_distribute`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028390554709988774), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001473981250649641), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000029001229846550766), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008233610026197337), + ], +); + +// ./test/core/float_exprs.wast:286 +assert_return( + () => invoke($18, `f64.no_distribute`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006461015505916123), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000023923242802975938), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015300738798561604), + ]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:287 +assert_return( + () => invoke($18, `f64.no_distribute`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002939056292080733), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000002146156743463356), + value("f64", -2510967223130241600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 538892923853642500000000000000000000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:288 +assert_return( + () => invoke($18, `f64.no_distribute`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000017785466771708878), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000009328516775403213), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000012121009044876735), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011307103599436889), + ], +); + +// ./test/core/float_exprs.wast:289 +assert_return( + () => invoke($18, `f64.no_distribute`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015194859063177362), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000883589921438065), + value("f64", -1735830019469195800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.0000000000000000000000000015337619131701907)], +); + +// ./test/core/float_exprs.wast:293 +let $19 = instantiate(`(module + (func (export "f32.no_regroup_div_mul") (param $$x f32) (param $$y f32) (param $$z f32) (result f32) + (f32.mul (local.get $$x) (f32.div (local.get $$y) (local.get $$z)))) + (func (export "f64.no_regroup_div_mul") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.mul (local.get $$x) (f64.div (local.get $$y) (local.get $$z)))) +)`); + +// ./test/core/float_exprs.wast:300 +assert_return( + () => invoke($19, `f32.no_regroup_div_mul`, [ + value("f32", -0.00000000000000000000000000000000002831349), + value("f32", -0.00000000000000000007270787), + value("f32", 0.000000000000000000000000000000000016406605), + ]), + [value("f32", 0.00000000000000000012547468)], +); + +// ./test/core/float_exprs.wast:301 +assert_return( + () => invoke($19, `f32.no_regroup_div_mul`, [ + value("f32", -3145897700000000000000000000), + value("f32", -0.000000000000000000000000000000000040864003), + value("f32", -9245928300000000000000), + ]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:302 +assert_return( + () => invoke($19, `f32.no_regroup_div_mul`, [ + value("f32", -93157.43), + value("f32", -0.00000081292654), + value("f32", -0.00000000000000000000000000000000000015469397), + ]), + [value("f32", -489548120000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:303 +assert_return( + () => invoke($19, `f32.no_regroup_div_mul`, [ + value("f32", -0.00000000000000000000000000008899643), + value("f32", 17887725000000000000000), + value("f32", 514680230000000000000), + ]), + [value("f32", -0.000000000000000000000000003093073)], +); + +// ./test/core/float_exprs.wast:304 +assert_return( + () => invoke($19, `f32.no_regroup_div_mul`, [ + value("f32", 9222036000000000000000000000000000), + value("f32", 33330492), + value("f32", -3253108800000000000000), + ]), + [value("f32", -94486550000000000000)], +); + +// ./test/core/float_exprs.wast:305 +assert_return( + () => invoke($19, `f64.no_regroup_div_mul`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005698811412550059), + value("f64", -0.0000000000000000000000000000000000018313439132919336), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009543270551003098), + ]), + [value("f64", -1093596114413331000000000000000)], +); + +// ./test/core/float_exprs.wast:306 +assert_return( + () => invoke($19, `f64.no_regroup_div_mul`, [ + value("f64", 357289288425507550000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003952760844538651), + value("f64", -1450781241254900800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:307 +assert_return( + () => invoke($19, `f64.no_regroup_div_mul`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009124278383497107), + value("f64", 55561345277147970000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000025090826940306507), + ]), + [value("f64", Infinity)], +); + +// ./test/core/float_exprs.wast:308 +assert_return( + () => invoke($19, `f64.no_regroup_div_mul`, [ + value("f64", -4492093000352015000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -12087878984017852000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -596613380626062300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -91013507803376260000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:309 +assert_return( + () => invoke($19, `f64.no_regroup_div_mul`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007470269158630455), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007568026329781282), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001055389683973521), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005356807494101561), + ], +); + +// ./test/core/float_exprs.wast:313 +let $20 = instantiate(`(module + (func (export "f32.no_regroup_mul_div") (param $$x f32) (param $$y f32) (param $$z f32) (result f32) + (f32.div (f32.mul (local.get $$x) (local.get $$y)) (local.get $$z))) + (func (export "f64.no_regroup_mul_div") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.div (f64.mul (local.get $$x) (local.get $$y)) (local.get $$z))) +)`); + +// ./test/core/float_exprs.wast:320 +assert_return( + () => invoke($20, `f32.no_regroup_mul_div`, [ + value("f32", -0.00000000000000000000000000000000002831349), + value("f32", -0.00000000000000000007270787), + value("f32", 0.000000000000000000000000000000000016406605), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:321 +assert_return( + () => invoke($20, `f32.no_regroup_mul_div`, [ + value("f32", -3145897700000000000000000000), + value("f32", -0.000000000000000000000000000000000040864003), + value("f32", -9245928300000000000000), + ]), + [value("f32", -0.000000000000000000000000000013903848)], +); + +// ./test/core/float_exprs.wast:322 +assert_return( + () => invoke($20, `f32.no_regroup_mul_div`, [ + value("f32", -93157.43), + value("f32", -0.00000081292654), + value("f32", -0.00000000000000000000000000000000000015469397), + ]), + [value("f32", -489548160000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:323 +assert_return( + () => invoke($20, `f32.no_regroup_mul_div`, [ + value("f32", -0.00000000000000000000000000008899643), + value("f32", 17887725000000000000000), + value("f32", 514680230000000000000), + ]), + [value("f32", -0.0000000000000000000000000030930732)], +); + +// ./test/core/float_exprs.wast:324 +assert_return( + () => invoke($20, `f32.no_regroup_mul_div`, [ + value("f32", 9222036000000000000000000000000000), + value("f32", 33330492), + value("f32", -3253108800000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/float_exprs.wast:325 +assert_return( + () => invoke($20, `f64.no_regroup_mul_div`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005698811412550059), + value("f64", -0.0000000000000000000000000000000000018313439132919336), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009543270551003098), + ]), + [value("f64", -1093596114413331100000000000000)], +); + +// ./test/core/float_exprs.wast:326 +assert_return( + () => invoke($20, `f64.no_regroup_mul_div`, [ + value("f64", 357289288425507550000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003952760844538651), + value("f64", -1450781241254900800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009734611044734945), + ], +); + +// ./test/core/float_exprs.wast:327 +assert_return( + () => invoke($20, `f64.no_regroup_mul_div`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009124278383497107), + value("f64", 55561345277147970000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000025090826940306507), + ]), + [ + value("f64", 20204881364667663000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:328 +assert_return( + () => invoke($20, `f64.no_regroup_mul_div`, [ + value("f64", -4492093000352015000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -12087878984017852000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -596613380626062300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/float_exprs.wast:329 +assert_return( + () => invoke($20, `f64.no_regroup_mul_div`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007470269158630455), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007568026329781282), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001055389683973521), + ]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:333 +let $21 = instantiate(`(module + (func (export "f32.no_reassociate_add") (param $$x f32) (param $$y f32) (param $$z f32) (param $$w f32) (result f32) + (f32.add (f32.add (f32.add (local.get $$x) (local.get $$y)) (local.get $$z)) (local.get $$w))) + (func (export "f64.no_reassociate_add") (param $$x f64) (param $$y f64) (param $$z f64) (param $$w f64) (result f64) + (f64.add (f64.add (f64.add (local.get $$x) (local.get $$y)) (local.get $$z)) (local.get $$w))) +)`); + +// ./test/core/float_exprs.wast:340 +assert_return( + () => invoke($21, `f32.no_reassociate_add`, [ + value("f32", -24154321000000), + value("f32", 26125812000), + value("f32", -238608080000000), + value("f32", -2478953500000), + ]), + [value("f32", -265215220000000)], +); + +// ./test/core/float_exprs.wast:341 +assert_return( + () => invoke($21, `f32.no_reassociate_add`, [ + value("f32", 0.0036181053), + value("f32", -0.00985944), + value("f32", 0.063375376), + value("f32", -0.011150199), + ]), + [value("f32", 0.04598384)], +); + +// ./test/core/float_exprs.wast:342 +assert_return( + () => invoke($21, `f32.no_reassociate_add`, [ + value("f32", -34206968000), + value("f32", -3770877200000), + value("f32", 30868425000000), + value("f32", 421132080000), + ]), + [value("f32", 27484470000000)], +); + +// ./test/core/float_exprs.wast:343 +assert_return( + () => invoke($21, `f32.no_reassociate_add`, [ + value("f32", 153506400000000), + value("f32", 925114700000000), + value("f32", -36021854000), + value("f32", 2450846000000000), + ]), + [value("f32", 3529431000000000)], +); + +// ./test/core/float_exprs.wast:344 +assert_return( + () => invoke($21, `f32.no_reassociate_add`, [ + value("f32", 470600300000000000000000000000000), + value("f32", -396552040000000000000000000000000), + value("f32", 48066940000000000000000000000000), + value("f32", -35644073000000000000000000000), + ]), + [value("f32", 122079560000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:345 +assert_return( + () => invoke($21, `f64.no_reassociate_add`, [ + value("f64", -20704652927717020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1594689704376369700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 451106636559416130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -1374333509186863300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -921652887575998600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:346 +assert_return( + () => invoke($21, `f64.no_reassociate_add`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003485747658213531), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031210957391311754), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000683008546431621), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002617177347131095), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022324206697150536), + ], +); + +// ./test/core/float_exprs.wast:347 +assert_return( + () => invoke($21, `f64.no_reassociate_add`, [ + value("f64", -5412584921122726300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 597603656170379500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -355830077793396300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 373627259957625440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -5768414998318146000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:348 +assert_return( + () => invoke($21, `f64.no_reassociate_add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006469047714189599), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064286584974746), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000021277698072285604), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000008768287273189493), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000006640517465960996), + ], +); + +// ./test/core/float_exprs.wast:349 +assert_return( + () => invoke($21, `f64.no_reassociate_add`, [ + value("f64", -16422137086414828000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -88032137939790710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 449957059782857850000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -114091267166274390000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 319443655442136560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:353 +let $22 = instantiate(`(module + (func (export "f32.no_reassociate_mul") (param $$x f32) (param $$y f32) (param $$z f32) (param $$w f32) (result f32) + (f32.mul (f32.mul (f32.mul (local.get $$x) (local.get $$y)) (local.get $$z)) (local.get $$w))) + (func (export "f64.no_reassociate_mul") (param $$x f64) (param $$y f64) (param $$z f64) (param $$w f64) (result f64) + (f64.mul (f64.mul (f64.mul (local.get $$x) (local.get $$y)) (local.get $$z)) (local.get $$w))) +)`); + +// ./test/core/float_exprs.wast:360 +assert_return( + () => invoke($22, `f32.no_reassociate_mul`, [ + value("f32", 0.00000000000000000000000000000000001904515), + value("f32", 0.00000000022548861), + value("f32", -6964322000000000000000000000000), + value("f32", 0.000000000000000026902832), + ]), + [value("f32", -0.00000000000000000000000000000078764173)], +); + +// ./test/core/float_exprs.wast:361 +assert_return( + () => invoke($22, `f32.no_reassociate_mul`, [ + value("f32", 0.000000000000000018733125), + value("f32", -7565904000000000000000000000000), + value("f32", -0.000000000000000000000000000000000000030807684), + value("f32", -1592759200000000000000), + ]), + [value("f32", -0.0069547286)], +); + +// ./test/core/float_exprs.wast:362 +assert_return( + () => invoke($22, `f32.no_reassociate_mul`, [ + value("f32", 0.0000000000000050355575), + value("f32", -56466884000000000), + value("f32", -0.0000000000011740512), + value("f32", 84984730000000000000000), + ]), + [value("f32", 28370654000000)], +); + +// ./test/core/float_exprs.wast:363 +assert_return( + () => invoke($22, `f32.no_reassociate_mul`, [ + value("f32", 0.000000000000000000000000000000046394946), + value("f32", 254449360000000000000000), + value("f32", -72460980000000000), + value("f32", -962511040000000000), + ]), + [value("f32", 823345100000000000000000000)], +); + +// ./test/core/float_exprs.wast:364 +assert_return( + () => invoke($22, `f32.no_reassociate_mul`, [ + value("f32", -0.0000000000000000000000000000019420536), + value("f32", 0.0000000000000023200355), + value("f32", -9.772748), + value("f32", 864066000000000000), + ]), + [value("f32", 0.000000000000000000000000035113616)], +); + +// ./test/core/float_exprs.wast:365 +assert_return( + () => invoke($22, `f64.no_reassociate_mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003109868654414946), + value("f64", -20713190487745434000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007162612845524978), + value("f64", -88478253295969090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 40822261813278614000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:366 +assert_return( + () => invoke($22, `f64.no_reassociate_mul`, [ + value("f64", 60442716412956810000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006700545015107397), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031469664275798185), + value("f64", -6401677295640561500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008159057447560471), + ], +); + +// ./test/core/float_exprs.wast:367 +assert_return( + () => invoke($22, `f64.no_reassociate_mul`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002216807720454268), + value("f64", -1802234186536721600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007500283778521931), + value("f64", -414412152433956900000000000), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001241793627299937), + ], +); + +// ./test/core/float_exprs.wast:368 +assert_return( + () => invoke($22, `f64.no_reassociate_mul`, [ + value("f64", 24318065966298720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006508014075793436), + value("f64", 17596421287233897000000000000000000000000000000000000000000000000000), + value("f64", -0.0000001416141401305358), + ]), + [ + value("f64", -3943741918531223000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:369 +assert_return( + () => invoke($22, `f64.no_reassociate_mul`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000003849767156964772), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070008754943224875), + value("f64", -2536887825218386500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101114518858449), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004171548126376117), + ], +); + +// ./test/core/float_exprs.wast:373 +let $23 = instantiate(`(module + (func (export "f32.no_fold_div_0") (param $$x f32) (result f32) + (f32.div (local.get $$x) (f32.const 0.0))) + (func (export "f64.no_fold_div_0") (param $$x f64) (result f64) + (f64.div (local.get $$x) (f64.const 0.0))) +)`); + +// ./test/core/float_exprs.wast:380 +assert_return(() => invoke($23, `f32.no_fold_div_0`, [value("f32", 1)]), [value("f32", Infinity)]); + +// ./test/core/float_exprs.wast:381 +assert_return(() => invoke($23, `f32.no_fold_div_0`, [value("f32", -1)]), [value("f32", -Infinity)]); + +// ./test/core/float_exprs.wast:382 +assert_return( + () => invoke($23, `f32.no_fold_div_0`, [value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/float_exprs.wast:383 +assert_return( + () => invoke($23, `f32.no_fold_div_0`, [value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/float_exprs.wast:384 +assert_return(() => invoke($23, `f32.no_fold_div_0`, [value("f32", 0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:385 +assert_return(() => invoke($23, `f32.no_fold_div_0`, [value("f32", -0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:386 +assert_return( + () => invoke($23, `f32.no_fold_div_0`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:387 +assert_return( + () => invoke($23, `f32.no_fold_div_0`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:388 +assert_return(() => invoke($23, `f64.no_fold_div_0`, [value("f64", 1)]), [value("f64", Infinity)]); + +// ./test/core/float_exprs.wast:389 +assert_return(() => invoke($23, `f64.no_fold_div_0`, [value("f64", -1)]), [value("f64", -Infinity)]); + +// ./test/core/float_exprs.wast:390 +assert_return( + () => invoke($23, `f64.no_fold_div_0`, [value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/float_exprs.wast:391 +assert_return( + () => invoke($23, `f64.no_fold_div_0`, [value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/float_exprs.wast:392 +assert_return(() => invoke($23, `f64.no_fold_div_0`, [value("f64", 0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:393 +assert_return(() => invoke($23, `f64.no_fold_div_0`, [value("f64", -0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:394 +assert_return( + () => invoke($23, `f64.no_fold_div_0`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:395 +assert_return( + () => invoke($23, `f64.no_fold_div_0`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:399 +let $24 = instantiate(`(module + (func (export "f32.no_fold_div_neg0") (param $$x f32) (result f32) + (f32.div (local.get $$x) (f32.const -0.0))) + (func (export "f64.no_fold_div_neg0") (param $$x f64) (result f64) + (f64.div (local.get $$x) (f64.const -0.0))) +)`); + +// ./test/core/float_exprs.wast:406 +assert_return(() => invoke($24, `f32.no_fold_div_neg0`, [value("f32", 1)]), [value("f32", -Infinity)]); + +// ./test/core/float_exprs.wast:407 +assert_return(() => invoke($24, `f32.no_fold_div_neg0`, [value("f32", -1)]), [value("f32", Infinity)]); + +// ./test/core/float_exprs.wast:408 +assert_return( + () => invoke($24, `f32.no_fold_div_neg0`, [value("f32", Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/float_exprs.wast:409 +assert_return( + () => invoke($24, `f32.no_fold_div_neg0`, [value("f32", -Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/float_exprs.wast:410 +assert_return(() => invoke($24, `f32.no_fold_div_neg0`, [value("f32", 0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:411 +assert_return(() => invoke($24, `f32.no_fold_div_neg0`, [value("f32", -0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:412 +assert_return( + () => invoke($24, `f32.no_fold_div_neg0`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:413 +assert_return( + () => invoke($24, `f32.no_fold_div_neg0`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:414 +assert_return(() => invoke($24, `f64.no_fold_div_neg0`, [value("f64", 1)]), [value("f64", -Infinity)]); + +// ./test/core/float_exprs.wast:415 +assert_return(() => invoke($24, `f64.no_fold_div_neg0`, [value("f64", -1)]), [value("f64", Infinity)]); + +// ./test/core/float_exprs.wast:416 +assert_return( + () => invoke($24, `f64.no_fold_div_neg0`, [value("f64", Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/float_exprs.wast:417 +assert_return( + () => invoke($24, `f64.no_fold_div_neg0`, [value("f64", -Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/float_exprs.wast:418 +assert_return(() => invoke($24, `f64.no_fold_div_neg0`, [value("f64", 0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:419 +assert_return(() => invoke($24, `f64.no_fold_div_neg0`, [value("f64", -0)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:420 +assert_return( + () => invoke($24, `f64.no_fold_div_neg0`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:421 +assert_return( + () => invoke($24, `f64.no_fold_div_neg0`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:425 +let $25 = instantiate(`(module + (func (export "f32.no_fold_to_hypot") (param $$x f32) (param $$y f32) (result f32) + (f32.sqrt (f32.add (f32.mul (local.get $$x) (local.get $$x)) + (f32.mul (local.get $$y) (local.get $$y))))) + (func (export "f64.no_fold_to_hypot") (param $$x f64) (param $$y f64) (result f64) + (f64.sqrt (f64.add (f64.mul (local.get $$x) (local.get $$x)) + (f64.mul (local.get $$y) (local.get $$y))))) +)`); + +// ./test/core/float_exprs.wast:434 +assert_return( + () => invoke($25, `f32.no_fold_to_hypot`, [ + value("f32", 0.00000000000000000000000072854914), + value("f32", 0.0000000000000000000042365796), + ]), + [value("f32", 0.0000000000000000000042366535)], +); + +// ./test/core/float_exprs.wast:435 +assert_return( + () => invoke($25, `f32.no_fold_to_hypot`, [ + value("f32", -0.0000000000000000000007470285), + value("f32", -0.000000000000000000000000000000007453745), + ]), + [value("f32", 0.0000000000000000000007468044)], +); + +// ./test/core/float_exprs.wast:436 +assert_return( + () => invoke($25, `f32.no_fold_to_hypot`, [ + value("f32", -0.0000000000000000000000000000000000770895), + value("f32", -0.0000000000000000000032627214), + ]), + [value("f32", 0.0000000000000000000032627695)], +); + +// ./test/core/float_exprs.wast:437 +assert_return( + () => invoke($25, `f32.no_fold_to_hypot`, [ + value("f32", -35.42818), + value("f32", 174209.48), + ]), + [value("f32", 174209.5)], +); + +// ./test/core/float_exprs.wast:438 +assert_return( + () => invoke($25, `f32.no_fold_to_hypot`, [ + value("f32", 0.000000000000000000000020628143), + value("f32", -0.00000000000000000000046344753), + ]), + [value("f32", 0.000000000000000000000463032)], +); + +// ./test/core/float_exprs.wast:439 +assert_return( + () => invoke($25, `f64.no_fold_to_hypot`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003863640258986321), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000019133014752624014), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000019120893753235554), + ], +); + +// ./test/core/float_exprs.wast:440 +assert_return( + () => invoke($25, `f64.no_fold_to_hypot`, [ + value("f64", 138561238950329770000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -2828038515930043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 2828038519324483400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:441 +assert_return( + () => invoke($25, `f64.no_fold_to_hypot`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006502729096641792), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004544399933151275), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006668276248455232), + ], +); + +// ./test/core/float_exprs.wast:442 +assert_return( + () => invoke($25, `f64.no_fold_to_hypot`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022340232024202604), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003435929714143315), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022340232023799234), + ], +); + +// ./test/core/float_exprs.wast:443 +assert_return( + () => invoke($25, `f64.no_fold_to_hypot`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002797963998630554), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001906867996862016), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000019068679968620105), + ], +); + +// ./test/core/float_exprs.wast:447 +let $26 = instantiate(`(module + (func (export "f32.no_approximate_reciprocal") (param $$x f32) (result f32) + (f32.div (f32.const 1.0) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:452 +assert_return( + () => invoke($26, `f32.no_approximate_reciprocal`, [value("f32", -0.0011329757)]), + [value("f32", -882.6315)], +); + +// ./test/core/float_exprs.wast:453 +assert_return( + () => invoke($26, `f32.no_approximate_reciprocal`, [ + value("f32", 323753010000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000003088774)], +); + +// ./test/core/float_exprs.wast:454 +assert_return( + () => invoke($26, `f32.no_approximate_reciprocal`, [ + value("f32", -0.0000000000000000000000000001272599), + ]), + [value("f32", -7857934600000000000000000000)], +); + +// ./test/core/float_exprs.wast:455 +assert_return( + () => invoke($26, `f32.no_approximate_reciprocal`, [ + value("f32", 103020680000000000000000), + ]), + [value("f32", 0.000000000000000000000009706789)], +); + +// ./test/core/float_exprs.wast:456 +assert_return( + () => invoke($26, `f32.no_approximate_reciprocal`, [ + value("f32", -0.00000000000000000000000028443763), + ]), + [value("f32", -3515709300000000000000000)], +); + +// ./test/core/float_exprs.wast:460 +let $27 = instantiate(`(module + (func (export "f32.no_approximate_reciprocal_sqrt") (param $$x f32) (result f32) + (f32.div (f32.const 1.0) (f32.sqrt (local.get $$x)))) + (func (export "f64.no_fuse_reciprocal_sqrt") (param $$x f64) (result f64) + (f64.div (f64.const 1.0) (f64.sqrt (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:467 +assert_return( + () => invoke($27, `f32.no_approximate_reciprocal_sqrt`, [ + value("f32", 0.00000000000016117865), + ]), + [value("f32", 2490842.5)], +); + +// ./test/core/float_exprs.wast:468 +assert_return( + () => invoke($27, `f32.no_approximate_reciprocal_sqrt`, [value("f32", 0.0074491366)]), + [value("f32", 11.58636)], +); + +// ./test/core/float_exprs.wast:469 +assert_return( + () => invoke($27, `f32.no_approximate_reciprocal_sqrt`, [ + value("f32", 0.00000000000000000002339817), + ]), + [value("f32", 6537460000)], +); + +// ./test/core/float_exprs.wast:470 +assert_return( + () => invoke($27, `f32.no_approximate_reciprocal_sqrt`, [ + value("f32", 0.00000000000011123504), + ]), + [value("f32", 2998328.3)], +); + +// ./test/core/float_exprs.wast:471 +assert_return( + () => invoke($27, `f32.no_approximate_reciprocal_sqrt`, [ + value("f32", 0.000000000000000000000000017653063), + ]), + [value("f32", 7526446300000)], +); + +// ./test/core/float_exprs.wast:473 +assert_return( + () => invoke($27, `f64.no_fuse_reciprocal_sqrt`, [ + value("f64", 4472459252766337000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014952947335898096), + ], +); + +// ./test/core/float_exprs.wast:474 +assert_return( + () => invoke($27, `f64.no_fuse_reciprocal_sqrt`, [ + value("f64", 4752392260007119000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000014505872638954843), + ], +); + +// ./test/core/float_exprs.wast:475 +assert_return( + () => invoke($27, `f64.no_fuse_reciprocal_sqrt`, [ + value("f64", 29014415885392436000000000000000), + ]), + [value("f64", 0.00000000000000018564920084793608)], +); + +// ./test/core/float_exprs.wast:476 +assert_return( + () => invoke($27, `f64.no_fuse_reciprocal_sqrt`, [ + value("f64", 1396612507697477800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000026758516751072132), + ], +); + +// ./test/core/float_exprs.wast:477 +assert_return( + () => invoke($27, `f64.no_fuse_reciprocal_sqrt`, [ + value("f64", 151596415440704430000000000000000000000000000), + ]), + [value("f64", 0.00000000000000000000008121860649480894)], +); + +// ./test/core/float_exprs.wast:481 +let $28 = instantiate(`(module + (func (export "f32.no_approximate_sqrt_reciprocal") (param $$x f32) (result f32) + (f32.sqrt (f32.div (f32.const 1.0) (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:486 +assert_return( + () => invoke($28, `f32.no_approximate_sqrt_reciprocal`, [ + value("f32", 1895057100000000000), + ]), + [value("f32", 0.00000000072642176)], +); + +// ./test/core/float_exprs.wast:487 +assert_return( + () => invoke($28, `f32.no_approximate_sqrt_reciprocal`, [value("f32", 0.002565894)]), + [value("f32", 19.741522)], +); + +// ./test/core/float_exprs.wast:488 +assert_return( + () => invoke($28, `f32.no_approximate_sqrt_reciprocal`, [ + value("f32", 632654500000000000000), + ]), + [value("f32", 0.000000000039757284)], +); + +// ./test/core/float_exprs.wast:489 +assert_return( + () => invoke($28, `f32.no_approximate_sqrt_reciprocal`, [value("f32", 14153.539)]), + [value("f32", 0.008405576)], +); + +// ./test/core/float_exprs.wast:490 +assert_return( + () => invoke($28, `f32.no_approximate_sqrt_reciprocal`, [ + value("f32", 26173730000000000000000000000000), + ]), + [value("f32", 0.00000000000000019546418)], +); + +// ./test/core/float_exprs.wast:494 +let $29 = instantiate(`(module + (func (export "i32.no_fold_f32_s") (param i32) (result i32) + (i32.trunc_f32_s (f32.convert_i32_s (local.get 0)))) + (func (export "i32.no_fold_f32_u") (param i32) (result i32) + (i32.trunc_f32_u (f32.convert_i32_u (local.get 0)))) + (func (export "i64.no_fold_f64_s") (param i64) (result i64) + (i64.trunc_f64_s (f64.convert_i64_s (local.get 0)))) + (func (export "i64.no_fold_f64_u") (param i64) (result i64) + (i64.trunc_f64_u (f64.convert_i64_u (local.get 0)))) +)`); + +// ./test/core/float_exprs.wast:505 +assert_return(() => invoke($29, `i32.no_fold_f32_s`, [16777216]), [value("i32", 16777216)]); + +// ./test/core/float_exprs.wast:506 +assert_return(() => invoke($29, `i32.no_fold_f32_s`, [16777217]), [value("i32", 16777216)]); + +// ./test/core/float_exprs.wast:507 +assert_return(() => invoke($29, `i32.no_fold_f32_s`, [-268435440]), [value("i32", -268435440)]); + +// ./test/core/float_exprs.wast:509 +assert_return(() => invoke($29, `i32.no_fold_f32_u`, [16777216]), [value("i32", 16777216)]); + +// ./test/core/float_exprs.wast:510 +assert_return(() => invoke($29, `i32.no_fold_f32_u`, [16777217]), [value("i32", 16777216)]); + +// ./test/core/float_exprs.wast:511 +assert_return(() => invoke($29, `i32.no_fold_f32_u`, [-268435440]), [value("i32", -268435456)]); + +// ./test/core/float_exprs.wast:513 +assert_return( + () => invoke($29, `i64.no_fold_f64_s`, [9007199254740992n]), + [value("i64", 9007199254740992n)], +); + +// ./test/core/float_exprs.wast:514 +assert_return( + () => invoke($29, `i64.no_fold_f64_s`, [9007199254740993n]), + [value("i64", 9007199254740992n)], +); + +// ./test/core/float_exprs.wast:515 +assert_return( + () => invoke($29, `i64.no_fold_f64_s`, [-1152921504606845952n]), + [value("i64", -1152921504606845952n)], +); + +// ./test/core/float_exprs.wast:517 +assert_return( + () => invoke($29, `i64.no_fold_f64_u`, [9007199254740992n]), + [value("i64", 9007199254740992n)], +); + +// ./test/core/float_exprs.wast:518 +assert_return( + () => invoke($29, `i64.no_fold_f64_u`, [9007199254740993n]), + [value("i64", 9007199254740992n)], +); + +// ./test/core/float_exprs.wast:519 +assert_return( + () => invoke($29, `i64.no_fold_f64_u`, [-1152921504606845952n]), + [value("i64", -1152921504606846976n)], +); + +// ./test/core/float_exprs.wast:523 +let $30 = instantiate(`(module + (func (export "f32.no_fold_add_sub") (param $$x f32) (param $$y f32) (result f32) + (f32.sub (f32.add (local.get $$x) (local.get $$y)) (local.get $$y))) + (func (export "f64.no_fold_add_sub") (param $$x f64) (param $$y f64) (result f64) + (f64.sub (f64.add (local.get $$x) (local.get $$y)) (local.get $$y))) +)`); + +// ./test/core/float_exprs.wast:530 +assert_return( + () => invoke($30, `f32.no_fold_add_sub`, [ + value("f32", 0.000000000000012138282), + value("f32", -0.000000020946384), + ]), + [value("f32", 0.000000000000012434498)], +); + +// ./test/core/float_exprs.wast:531 +assert_return( + () => invoke($30, `f32.no_fold_add_sub`, [ + value("f32", -0.00000019768197), + value("f32", 0.0000037154566), + ]), + [value("f32", -0.00000019768208)], +); + +// ./test/core/float_exprs.wast:532 +assert_return( + () => invoke($30, `f32.no_fold_add_sub`, [ + value("f32", -9596213000000000000000000), + value("f32", -3538041400000000000000000000000), + ]), + [value("f32", -9671407000000000000000000)], +); + +// ./test/core/float_exprs.wast:533 +assert_return( + () => invoke($30, `f32.no_fold_add_sub`, [ + value("f32", 0.000000000000000000000005054346), + value("f32", 0.000000000000000024572656), + ]), + [value("f32", 0.0000000000000000000000049630837)], +); + +// ./test/core/float_exprs.wast:534 +assert_return( + () => invoke($30, `f32.no_fold_add_sub`, [ + value("f32", -0.0000000000000000000000000000000033693147), + value("f32", -0.000000000000000000000000071014917), + ]), + [value("f32", -0.000000000000000000000000000000006162976)], +); + +// ./test/core/float_exprs.wast:536 +assert_return( + () => invoke($30, `f64.no_fold_add_sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008445702651973109), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001110684389828854), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008445702651873978), + ], +); + +// ./test/core/float_exprs.wast:537 +assert_return( + () => invoke($30, `f64.no_fold_add_sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008198798715927055), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004624035606110903), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008198798715897085), + ], +); + +// ./test/core/float_exprs.wast:538 +assert_return( + () => invoke($30, `f64.no_fold_add_sub`, [ + value("f64", -0.0000000013604511322066714), + value("f64", -0.1751431740707098), + ]), + [value("f64", -0.0000000013604511406306585)], +); + +// ./test/core/float_exprs.wast:539 +assert_return( + () => invoke($30, `f64.no_fold_add_sub`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003944335437865966), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001663809741322667), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000039443355500325104), + ], +); + +// ./test/core/float_exprs.wast:540 +assert_return( + () => invoke($30, `f64.no_fold_add_sub`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005078309818866), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010790431644461104), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000507831047937567), + ], +); + +// ./test/core/float_exprs.wast:544 +let $31 = instantiate(`(module + (func (export "f32.no_fold_sub_add") (param $$x f32) (param $$y f32) (result f32) + (f32.add (f32.sub (local.get $$x) (local.get $$y)) (local.get $$y))) + (func (export "f64.no_fold_sub_add") (param $$x f64) (param $$y f64) (result f64) + (f64.add (f64.sub (local.get $$x) (local.get $$y)) (local.get $$y))) +)`); + +// ./test/core/float_exprs.wast:551 +assert_return( + () => invoke($31, `f32.no_fold_sub_add`, [ + value("f32", -676.47437), + value("f32", 403.0368), + ]), + [value("f32", -676.4744)], +); + +// ./test/core/float_exprs.wast:552 +assert_return( + () => invoke($31, `f32.no_fold_sub_add`, [ + value("f32", -0.0000000000000000000000000000000006305943), + value("f32", 0.0000000000000000000000000000367186), + ]), + [value("f32", -0.00000000000000000000000000000000063194576)], +); + +// ./test/core/float_exprs.wast:553 +assert_return( + () => invoke($31, `f32.no_fold_sub_add`, [ + value("f32", 83184800), + value("f32", 46216217000), + ]), + [value("f32", 83185660)], +); + +// ./test/core/float_exprs.wast:554 +assert_return( + () => invoke($31, `f32.no_fold_sub_add`, [ + value("f32", 0.000000000002211957), + value("f32", -0.00000001043793), + ]), + [value("f32", 0.0000000000022115643)], +); + +// ./test/core/float_exprs.wast:555 +assert_return( + () => invoke($31, `f32.no_fold_sub_add`, [ + value("f32", 0.14944395), + value("f32", -27393.65), + ]), + [value("f32", 0.15039063)], +); + +// ./test/core/float_exprs.wast:557 +assert_return( + () => invoke($31, `f64.no_fold_sub_add`, [ + value("f64", 90365982617946240000000000000000000000000000000000000000000000000000000000000), + value("f64", -958186427535552000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 90365982617946280000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:558 +assert_return( + () => invoke($31, `f64.no_fold_sub_add`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044230403564658815), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000026713491049366576), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004423040356647721), + ], +); + +// ./test/core/float_exprs.wast:559 +assert_return( + () => invoke($31, `f64.no_fold_sub_add`, [ + value("f64", 4095348452776429000000000000000000000000000000000000000000000000000000000000), + value("f64", -4050190019576568700000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 4070815637249397500000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:560 +assert_return( + () => invoke($31, `f64.no_fold_sub_add`, [ + value("f64", 0.000000024008889207554433), + value("f64", -0.00017253797929188484), + ]), + [value("f64", 0.00000002400888920756506)], +); + +// ./test/core/float_exprs.wast:561 +assert_return( + () => invoke($31, `f64.no_fold_sub_add`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000043367542918305866), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000039597706708227122), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004336754291830597), + ], +); + +// ./test/core/float_exprs.wast:565 +let $32 = instantiate(`(module + (func (export "f32.no_fold_mul_div") (param $$x f32) (param $$y f32) (result f32) + (f32.div (f32.mul (local.get $$x) (local.get $$y)) (local.get $$y))) + (func (export "f64.no_fold_mul_div") (param $$x f64) (param $$y f64) (result f64) + (f64.div (f64.mul (local.get $$x) (local.get $$y)) (local.get $$y))) +)`); + +// ./test/core/float_exprs.wast:572 +assert_return( + () => invoke($32, `f32.no_fold_mul_div`, [ + value("f32", -32476715000000000), + value("f32", 0.000000000000010121375), + ]), + [value("f32", -32476713000000000)], +); + +// ./test/core/float_exprs.wast:573 +assert_return( + () => invoke($32, `f32.no_fold_mul_div`, [ + value("f32", -0.000000015561163), + value("f32", 0.000000000000000000000000000000015799828), + ]), + [value("f32", -0.000000015561145)], +); + +// ./test/core/float_exprs.wast:574 +assert_return( + () => invoke($32, `f32.no_fold_mul_div`, [ + value("f32", -0.00000000000000676311), + value("f32", -441324000000000), + ]), + [value("f32", -0.0000000000000067631096)], +); + +// ./test/core/float_exprs.wast:575 +assert_return( + () => invoke($32, `f32.no_fold_mul_div`, [ + value("f32", 7505613700000000), + value("f32", -2160384100000000000), + ]), + [value("f32", 7505613000000000)], +); + +// ./test/core/float_exprs.wast:576 +assert_return( + () => invoke($32, `f32.no_fold_mul_div`, [ + value("f32", -0.0000000000000000000000000002362576), + value("f32", -0.000000000010808759), + ]), + [value("f32", -0.00000000000000000000000000023625765)], +); + +// ./test/core/float_exprs.wast:578 +assert_return( + () => invoke($32, `f64.no_fold_mul_div`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013532103713575586), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000003347836467564916), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013532103713672434), + ], +); + +// ./test/core/float_exprs.wast:579 +assert_return( + () => invoke($32, `f64.no_fold_mul_div`, [ + value("f64", 77662174313180845000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 195959155606939530000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 77662174313180850000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:580 +assert_return( + () => invoke($32, `f64.no_fold_mul_div`, [ + value("f64", -718011781190294800000000000000000000000000000000000000000000000000000000), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009320036042623636), + ]), + [ + value("f64", -718011781190294750000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:581 +assert_return( + () => invoke($32, `f64.no_fold_mul_div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000017260010724693063), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003568792428129926), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000001661286799244216), + ], +); + +// ./test/core/float_exprs.wast:582 +assert_return( + () => invoke($32, `f64.no_fold_mul_div`, [ + value("f64", -9145223045828962000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562094034342845), + ]), + [ + value("f64", -9145223045828963000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:586 +let $33 = instantiate(`(module + (func (export "f32.no_fold_div_mul") (param $$x f32) (param $$y f32) (result f32) + (f32.mul (f32.div (local.get $$x) (local.get $$y)) (local.get $$y))) + (func (export "f64.no_fold_div_mul") (param $$x f64) (param $$y f64) (result f64) + (f64.mul (f64.div (local.get $$x) (local.get $$y)) (local.get $$y))) +)`); + +// ./test/core/float_exprs.wast:593 +assert_return( + () => invoke($33, `f32.no_fold_div_mul`, [ + value("f32", -511517980000), + value("f32", 986062200), + ]), + [value("f32", -511517950000)], +); + +// ./test/core/float_exprs.wast:594 +assert_return( + () => invoke($33, `f32.no_fold_div_mul`, [ + value("f32", -0.00000000000000024944853), + value("f32", -0.0000041539834), + ]), + [value("f32", -0.00000000000000024944856)], +); + +// ./test/core/float_exprs.wast:595 +assert_return( + () => invoke($33, `f32.no_fold_div_mul`, [ + value("f32", 0.000000000000000000000000000000000000020827855), + value("f32", -235.19847), + ]), + [value("f32", 0.000000000000000000000000000000000000020828013)], +); + +// ./test/core/float_exprs.wast:596 +assert_return( + () => invoke($33, `f32.no_fold_div_mul`, [ + value("f32", -0.000000000000000000000062499487), + value("f32", -696312600000000000), + ]), + [value("f32", -0.00000000000000000000006249919)], +); + +// ./test/core/float_exprs.wast:597 +assert_return( + () => invoke($33, `f32.no_fold_div_mul`, [ + value("f32", 0.0000000000000000000000000000058353514), + value("f32", 212781120), + ]), + [value("f32", 0.000000000000000000000000000005835352)], +); + +// ./test/core/float_exprs.wast:599 +assert_return( + () => invoke($33, `f64.no_fold_div_mul`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035984644259935362), + value("f64", -28812263298033320000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035985034356565485), + ], +); + +// ./test/core/float_exprs.wast:600 +assert_return( + () => invoke($33, `f64.no_fold_div_mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017486367047479447), + value("f64", 0.00000000000000016508738454798636), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001748636704747945), + ], +); + +// ./test/core/float_exprs.wast:601 +assert_return( + () => invoke($33, `f64.no_fold_div_mul`, [ + value("f64", -0.00000000000000000000000000000000000000000003140341989542684), + value("f64", 942829809081919600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000031403419895426836), + ], +); + +// ./test/core/float_exprs.wast:602 +assert_return( + () => invoke($33, `f64.no_fold_div_mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000003919745428533519), + value("f64", -21314747179654705000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000039197454285335185), + ], +); + +// ./test/core/float_exprs.wast:603 +assert_return( + () => invoke($33, `f64.no_fold_div_mul`, [ + value("f64", -5734160003788982000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 6350805843612229000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -5734160003788981000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:607 +let $34 = instantiate(`(module + (func (export "f32.no_fold_div2_mul2") (param $$x f32) (result f32) + (f32.mul (f32.div (local.get $$x) (f32.const 2.0)) (f32.const 2.0))) + (func (export "f64.no_fold_div2_mul2") (param $$x f64) (result f64) + (f64.mul (f64.div (local.get $$x) (f64.const 2.0)) (f64.const 2.0))) +)`); + +// ./test/core/float_exprs.wast:614 +assert_return( + () => invoke($34, `f32.no_fold_div2_mul2`, [ + value("f32", 0.000000000000000000000000000000000000023509886), + ]), + [value("f32", 0.000000000000000000000000000000000000023509887)], +); + +// ./test/core/float_exprs.wast:615 +assert_return( + () => invoke($34, `f64.no_fold_div2_mul2`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044501477170144023), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ], +); + +// ./test/core/float_exprs.wast:619 +let $35 = instantiate(`(module + (func (export "no_fold_demote_promote") (param $$x f64) (result f64) + (f64.promote_f32 (f32.demote_f64 (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:624 +assert_return( + () => invoke($35, `no_fold_demote_promote`, [ + value("f64", -0.00000000000000000000000000000000000000017176297220569481), + ]), + [value("f64", -0.00000000000000000000000000000000000000017176275796615013)], +); + +// ./test/core/float_exprs.wast:625 +assert_return( + () => invoke($35, `no_fold_demote_promote`, [ + value("f64", -0.000000000000000000000000028464775573304055), + ]), + [value("f64", -0.00000000000000000000000002846477619188087)], +); + +// ./test/core/float_exprs.wast:626 +assert_return( + () => invoke($35, `no_fold_demote_promote`, [ + value("f64", 208970699699909230000000000000000), + ]), + [value("f64", 208970700445326000000000000000000)], +); + +// ./test/core/float_exprs.wast:627 +assert_return( + () => invoke($35, `no_fold_demote_promote`, [ + value("f64", -0.0000000000000000000000000047074160416121775), + ]), + [value("f64", -0.0000000000000000000000000047074161331556024)], +); + +// ./test/core/float_exprs.wast:628 +assert_return( + () => invoke($35, `no_fold_demote_promote`, [ + value("f64", 23359451497950880000000000000000), + ]), + [value("f64", 23359452224542198000000000000000)], +); + +// ./test/core/float_exprs.wast:633 +let $36 = instantiate(`(module + (func (export "no_fold_promote_demote") (param $$x f32) (result f32) + (f32.demote_f64 (f64.promote_f32 (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:638 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [`arithmetic_nan`], +); + +// ./test/core/float_exprs.wast:639 +assert_return(() => invoke($36, `no_fold_promote_demote`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:640 +assert_return(() => invoke($36, `no_fold_promote_demote`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:641 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/float_exprs.wast:642 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [ + value("f32", -0.000000000000000000000000000000000000000000001), + ]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/float_exprs.wast:643 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [ + value("f32", 0.000000000000000000000000000000000000011754942), + ]), + [value("f32", 0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/float_exprs.wast:644 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [ + value("f32", -0.000000000000000000000000000000000000011754942), + ]), + [value("f32", -0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/float_exprs.wast:645 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/float_exprs.wast:646 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [ + value("f32", -0.000000000000000000000000000000000000011754944), + ]), + [value("f32", -0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/float_exprs.wast:647 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [ + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:648 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [ + value("f32", -340282350000000000000000000000000000000), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:649 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/float_exprs.wast:650 +assert_return( + () => invoke($36, `no_fold_promote_demote`, [value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/float_exprs.wast:654 +let $37 = instantiate(`(module + (func (export "no_demote_mixed_add") (param $$x f64) (param $$y f32) (result f32) + (f32.demote_f64 (f64.add (local.get $$x) (f64.promote_f32 (local.get $$y))))) + (func (export "no_demote_mixed_add_commuted") (param $$y f32) (param $$x f64) (result f32) + (f32.demote_f64 (f64.add (f64.promote_f32 (local.get $$y)) (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:661 +assert_return( + () => invoke($37, `no_demote_mixed_add`, [ + value("f64", 0.00000000000000000000000000004941266527909197), + value("f32", 0.0000000000000000000000000000000000018767183), + ]), + [value("f32", 0.000000000000000000000000000049412667)], +); + +// ./test/core/float_exprs.wast:662 +assert_return( + () => invoke($37, `no_demote_mixed_add`, [ + value("f64", 140851523637.69385), + value("f32", 401096440000), + ]), + [value("f32", 541947950000)], +); + +// ./test/core/float_exprs.wast:663 +assert_return( + () => invoke($37, `no_demote_mixed_add`, [ + value("f64", 0.0000000000000000000000000000000000020831160914192852), + value("f32", -0.0000000000000000000000000000000000006050095), + ]), + [value("f32", 0.0000000000000000000000000000000000014781066)], +); + +// ./test/core/float_exprs.wast:664 +assert_return( + () => invoke($37, `no_demote_mixed_add`, [ + value("f64", -0.0000010032827553674626), + value("f32", 0.0000000019312918), + ]), + [value("f32", -0.0000010013515)], +); + +// ./test/core/float_exprs.wast:665 +assert_return( + () => invoke($37, `no_demote_mixed_add`, [ + value("f64", -0.0000013840207035752711), + value("f32", -0.0000000000005202814), + ]), + [value("f32", -0.0000013840212)], +); + +// ./test/core/float_exprs.wast:667 +assert_return( + () => invoke($37, `no_demote_mixed_add_commuted`, [ + value("f32", 0.0000000000000000000000000000000000018767183), + value("f64", 0.00000000000000000000000000004941266527909197), + ]), + [value("f32", 0.000000000000000000000000000049412667)], +); + +// ./test/core/float_exprs.wast:668 +assert_return( + () => invoke($37, `no_demote_mixed_add_commuted`, [ + value("f32", 401096440000), + value("f64", 140851523637.69385), + ]), + [value("f32", 541947950000)], +); + +// ./test/core/float_exprs.wast:669 +assert_return( + () => invoke($37, `no_demote_mixed_add_commuted`, [ + value("f32", -0.0000000000000000000000000000000000006050095), + value("f64", 0.0000000000000000000000000000000000020831160914192852), + ]), + [value("f32", 0.0000000000000000000000000000000000014781066)], +); + +// ./test/core/float_exprs.wast:670 +assert_return( + () => invoke($37, `no_demote_mixed_add_commuted`, [ + value("f32", 0.0000000019312918), + value("f64", -0.0000010032827553674626), + ]), + [value("f32", -0.0000010013515)], +); + +// ./test/core/float_exprs.wast:671 +assert_return( + () => invoke($37, `no_demote_mixed_add_commuted`, [ + value("f32", -0.0000000000005202814), + value("f64", -0.0000013840207035752711), + ]), + [value("f32", -0.0000013840212)], +); + +// ./test/core/float_exprs.wast:675 +let $38 = instantiate(`(module + (func (export "no_demote_mixed_sub") (param $$x f64) (param $$y f32) (result f32) + (f32.demote_f64 (f64.sub (local.get $$x) (f64.promote_f32 (local.get $$y))))) +)`); + +// ./test/core/float_exprs.wast:680 +assert_return( + () => invoke($38, `no_demote_mixed_sub`, [ + value("f64", 7869935327202668000000000), + value("f32", 4086347000000000000), + ]), + [value("f32", 7869931000000000000000000)], +); + +// ./test/core/float_exprs.wast:681 +assert_return( + () => invoke($38, `no_demote_mixed_sub`, [ + value("f64", -1535841968.9056544), + value("f32", 239897.28), + ]), + [value("f32", -1536081900)], +); + +// ./test/core/float_exprs.wast:682 +assert_return( + () => invoke($38, `no_demote_mixed_sub`, [ + value("f64", -102.19459272722602), + value("f32", 0.00039426138), + ]), + [value("f32", -102.194984)], +); + +// ./test/core/float_exprs.wast:683 +assert_return( + () => invoke($38, `no_demote_mixed_sub`, [ + value("f64", 0.00000000000000005645470375565188), + value("f32", 0.0000000000000000000005851077), + ]), + [value("f32", 0.00000000000000005645412)], +); + +// ./test/core/float_exprs.wast:684 +assert_return( + () => invoke($38, `no_demote_mixed_sub`, [ + value("f64", 27090.388466832894), + value("f32", 63120.89), + ]), + [value("f32", -36030.504)], +); + +// ./test/core/float_exprs.wast:688 +let $39 = instantiate(`(module + (func (export "f32.i32.no_fold_trunc_s_convert_s") (param $$x f32) (result f32) + (f32.convert_i32_s (i32.trunc_f32_s (local.get $$x)))) + (func (export "f32.i32.no_fold_trunc_u_convert_s") (param $$x f32) (result f32) + (f32.convert_i32_s (i32.trunc_f32_u (local.get $$x)))) + (func (export "f32.i32.no_fold_trunc_s_convert_u") (param $$x f32) (result f32) + (f32.convert_i32_u (i32.trunc_f32_s (local.get $$x)))) + (func (export "f32.i32.no_fold_trunc_u_convert_u") (param $$x f32) (result f32) + (f32.convert_i32_u (i32.trunc_f32_u (local.get $$x)))) + (func (export "f64.i32.no_fold_trunc_s_convert_s") (param $$x f64) (result f64) + (f64.convert_i32_s (i32.trunc_f64_s (local.get $$x)))) + (func (export "f64.i32.no_fold_trunc_u_convert_s") (param $$x f64) (result f64) + (f64.convert_i32_s (i32.trunc_f64_u (local.get $$x)))) + (func (export "f64.i32.no_fold_trunc_s_convert_u") (param $$x f64) (result f64) + (f64.convert_i32_u (i32.trunc_f64_s (local.get $$x)))) + (func (export "f64.i32.no_fold_trunc_u_convert_u") (param $$x f64) (result f64) + (f64.convert_i32_u (i32.trunc_f64_u (local.get $$x)))) + (func (export "f32.i64.no_fold_trunc_s_convert_s") (param $$x f32) (result f32) + (f32.convert_i64_s (i64.trunc_f32_s (local.get $$x)))) + (func (export "f32.i64.no_fold_trunc_u_convert_s") (param $$x f32) (result f32) + (f32.convert_i64_s (i64.trunc_f32_u (local.get $$x)))) + (func (export "f32.i64.no_fold_trunc_s_convert_u") (param $$x f32) (result f32) + (f32.convert_i64_u (i64.trunc_f32_s (local.get $$x)))) + (func (export "f32.i64.no_fold_trunc_u_convert_u") (param $$x f32) (result f32) + (f32.convert_i64_u (i64.trunc_f32_u (local.get $$x)))) + (func (export "f64.i64.no_fold_trunc_s_convert_s") (param $$x f64) (result f64) + (f64.convert_i64_s (i64.trunc_f64_s (local.get $$x)))) + (func (export "f64.i64.no_fold_trunc_u_convert_s") (param $$x f64) (result f64) + (f64.convert_i64_s (i64.trunc_f64_u (local.get $$x)))) + (func (export "f64.i64.no_fold_trunc_s_convert_u") (param $$x f64) (result f64) + (f64.convert_i64_u (i64.trunc_f64_s (local.get $$x)))) + (func (export "f64.i64.no_fold_trunc_u_convert_u") (param $$x f64) (result f64) + (f64.convert_i64_u (i64.trunc_f64_u (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:723 +assert_return( + () => invoke($39, `f32.i32.no_fold_trunc_s_convert_s`, [value("f32", 1.5)]), + [value("f32", 1)], +); + +// ./test/core/float_exprs.wast:724 +assert_return( + () => invoke($39, `f32.i32.no_fold_trunc_s_convert_s`, [value("f32", -1.5)]), + [value("f32", -1)], +); + +// ./test/core/float_exprs.wast:725 +assert_return( + () => invoke($39, `f32.i32.no_fold_trunc_u_convert_s`, [value("f32", 1.5)]), + [value("f32", 1)], +); + +// ./test/core/float_exprs.wast:726 +assert_return( + () => invoke($39, `f32.i32.no_fold_trunc_u_convert_s`, [value("f32", -0.5)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:727 +assert_return( + () => invoke($39, `f32.i32.no_fold_trunc_s_convert_u`, [value("f32", 1.5)]), + [value("f32", 1)], +); + +// ./test/core/float_exprs.wast:728 +assert_return( + () => invoke($39, `f32.i32.no_fold_trunc_s_convert_u`, [value("f32", -1.5)]), + [value("f32", 4294967300)], +); + +// ./test/core/float_exprs.wast:729 +assert_return( + () => invoke($39, `f32.i32.no_fold_trunc_u_convert_u`, [value("f32", 1.5)]), + [value("f32", 1)], +); + +// ./test/core/float_exprs.wast:730 +assert_return( + () => invoke($39, `f32.i32.no_fold_trunc_u_convert_u`, [value("f32", -0.5)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:732 +assert_return( + () => invoke($39, `f64.i32.no_fold_trunc_s_convert_s`, [value("f64", 1.5)]), + [value("f64", 1)], +); + +// ./test/core/float_exprs.wast:733 +assert_return( + () => invoke($39, `f64.i32.no_fold_trunc_s_convert_s`, [value("f64", -1.5)]), + [value("f64", -1)], +); + +// ./test/core/float_exprs.wast:734 +assert_return( + () => invoke($39, `f64.i32.no_fold_trunc_u_convert_s`, [value("f64", 1.5)]), + [value("f64", 1)], +); + +// ./test/core/float_exprs.wast:735 +assert_return( + () => invoke($39, `f64.i32.no_fold_trunc_u_convert_s`, [value("f64", -0.5)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:736 +assert_return( + () => invoke($39, `f64.i32.no_fold_trunc_s_convert_u`, [value("f64", 1.5)]), + [value("f64", 1)], +); + +// ./test/core/float_exprs.wast:737 +assert_return( + () => invoke($39, `f64.i32.no_fold_trunc_s_convert_u`, [value("f64", -1.5)]), + [value("f64", 4294967295)], +); + +// ./test/core/float_exprs.wast:738 +assert_return( + () => invoke($39, `f64.i32.no_fold_trunc_u_convert_u`, [value("f64", 1.5)]), + [value("f64", 1)], +); + +// ./test/core/float_exprs.wast:739 +assert_return( + () => invoke($39, `f64.i32.no_fold_trunc_u_convert_u`, [value("f64", -0.5)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:741 +assert_return( + () => invoke($39, `f32.i64.no_fold_trunc_s_convert_s`, [value("f32", 1.5)]), + [value("f32", 1)], +); + +// ./test/core/float_exprs.wast:742 +assert_return( + () => invoke($39, `f32.i64.no_fold_trunc_s_convert_s`, [value("f32", -1.5)]), + [value("f32", -1)], +); + +// ./test/core/float_exprs.wast:743 +assert_return( + () => invoke($39, `f32.i64.no_fold_trunc_u_convert_s`, [value("f32", 1.5)]), + [value("f32", 1)], +); + +// ./test/core/float_exprs.wast:744 +assert_return( + () => invoke($39, `f32.i64.no_fold_trunc_u_convert_s`, [value("f32", -0.5)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:745 +assert_return( + () => invoke($39, `f32.i64.no_fold_trunc_s_convert_u`, [value("f32", 1.5)]), + [value("f32", 1)], +); + +// ./test/core/float_exprs.wast:746 +assert_return( + () => invoke($39, `f32.i64.no_fold_trunc_s_convert_u`, [value("f32", -1.5)]), + [value("f32", 18446744000000000000)], +); + +// ./test/core/float_exprs.wast:747 +assert_return( + () => invoke($39, `f32.i64.no_fold_trunc_u_convert_u`, [value("f32", 1.5)]), + [value("f32", 1)], +); + +// ./test/core/float_exprs.wast:748 +assert_return( + () => invoke($39, `f32.i64.no_fold_trunc_u_convert_u`, [value("f32", -0.5)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:750 +assert_return( + () => invoke($39, `f64.i64.no_fold_trunc_s_convert_s`, [value("f64", 1.5)]), + [value("f64", 1)], +); + +// ./test/core/float_exprs.wast:751 +assert_return( + () => invoke($39, `f64.i64.no_fold_trunc_s_convert_s`, [value("f64", -1.5)]), + [value("f64", -1)], +); + +// ./test/core/float_exprs.wast:752 +assert_return( + () => invoke($39, `f64.i64.no_fold_trunc_u_convert_s`, [value("f64", 1.5)]), + [value("f64", 1)], +); + +// ./test/core/float_exprs.wast:753 +assert_return( + () => invoke($39, `f64.i64.no_fold_trunc_u_convert_s`, [value("f64", -0.5)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:754 +assert_return( + () => invoke($39, `f64.i64.no_fold_trunc_s_convert_u`, [value("f64", 1.5)]), + [value("f64", 1)], +); + +// ./test/core/float_exprs.wast:755 +assert_return( + () => invoke($39, `f64.i64.no_fold_trunc_s_convert_u`, [value("f64", -1.5)]), + [value("f64", 18446744073709552000)], +); + +// ./test/core/float_exprs.wast:756 +assert_return( + () => invoke($39, `f64.i64.no_fold_trunc_u_convert_u`, [value("f64", 1.5)]), + [value("f64", 1)], +); + +// ./test/core/float_exprs.wast:757 +assert_return( + () => invoke($39, `f64.i64.no_fold_trunc_u_convert_u`, [value("f64", -0.5)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:763 +let $40 = instantiate(`(module + (memory 1 1) + (func (export "init") (param $$i i32) (param $$x f32) (f32.store (local.get $$i) (local.get $$x))) + + (func (export "run") (param $$n i32) (param $$z f32) + (local $$i i32) + (block $$exit + (loop $$cont + (f32.store + (local.get $$i) + (f32.div (f32.load (local.get $$i)) (local.get $$z)) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 4))) + (br_if $$cont (i32.lt_u (local.get $$i) (local.get $$n))) + ) + ) + ) + + (func (export "check") (param $$i i32) (result f32) (f32.load (local.get $$i))) +)`); + +// ./test/core/float_exprs.wast:784 +invoke($40, `init`, [0, value("f32", 15.1)]); + +// ./test/core/float_exprs.wast:785 +invoke($40, `init`, [4, value("f32", 15.2)]); + +// ./test/core/float_exprs.wast:786 +invoke($40, `init`, [8, value("f32", 15.3)]); + +// ./test/core/float_exprs.wast:787 +invoke($40, `init`, [12, value("f32", 15.4)]); + +// ./test/core/float_exprs.wast:788 +assert_return(() => invoke($40, `check`, [0]), [value("f32", 15.1)]); + +// ./test/core/float_exprs.wast:789 +assert_return(() => invoke($40, `check`, [4]), [value("f32", 15.2)]); + +// ./test/core/float_exprs.wast:790 +assert_return(() => invoke($40, `check`, [8]), [value("f32", 15.3)]); + +// ./test/core/float_exprs.wast:791 +assert_return(() => invoke($40, `check`, [12]), [value("f32", 15.4)]); + +// ./test/core/float_exprs.wast:792 +invoke($40, `run`, [16, value("f32", 3)]); + +// ./test/core/float_exprs.wast:793 +assert_return(() => invoke($40, `check`, [0]), [value("f32", 5.0333333)]); + +// ./test/core/float_exprs.wast:794 +assert_return(() => invoke($40, `check`, [4]), [value("f32", 5.0666666)]); + +// ./test/core/float_exprs.wast:795 +assert_return(() => invoke($40, `check`, [8]), [value("f32", 5.1)]); + +// ./test/core/float_exprs.wast:796 +assert_return(() => invoke($40, `check`, [12]), [value("f32", 5.133333)]); + +// ./test/core/float_exprs.wast:798 +let $41 = instantiate(`(module + (memory 1 1) + (func (export "init") (param $$i i32) (param $$x f64) (f64.store (local.get $$i) (local.get $$x))) + + (func (export "run") (param $$n i32) (param $$z f64) + (local $$i i32) + (block $$exit + (loop $$cont + (f64.store + (local.get $$i) + (f64.div (f64.load (local.get $$i)) (local.get $$z)) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 8))) + (br_if $$cont (i32.lt_u (local.get $$i) (local.get $$n))) + ) + ) + ) + + (func (export "check") (param $$i i32) (result f64) (f64.load (local.get $$i))) +)`); + +// ./test/core/float_exprs.wast:819 +invoke($41, `init`, [0, value("f64", 15.1)]); + +// ./test/core/float_exprs.wast:820 +invoke($41, `init`, [8, value("f64", 15.2)]); + +// ./test/core/float_exprs.wast:821 +invoke($41, `init`, [16, value("f64", 15.3)]); + +// ./test/core/float_exprs.wast:822 +invoke($41, `init`, [24, value("f64", 15.4)]); + +// ./test/core/float_exprs.wast:823 +assert_return(() => invoke($41, `check`, [0]), [value("f64", 15.1)]); + +// ./test/core/float_exprs.wast:824 +assert_return(() => invoke($41, `check`, [8]), [value("f64", 15.2)]); + +// ./test/core/float_exprs.wast:825 +assert_return(() => invoke($41, `check`, [16]), [value("f64", 15.3)]); + +// ./test/core/float_exprs.wast:826 +assert_return(() => invoke($41, `check`, [24]), [value("f64", 15.4)]); + +// ./test/core/float_exprs.wast:827 +invoke($41, `run`, [32, value("f64", 3)]); + +// ./test/core/float_exprs.wast:828 +assert_return(() => invoke($41, `check`, [0]), [value("f64", 5.033333333333333)]); + +// ./test/core/float_exprs.wast:829 +assert_return(() => invoke($41, `check`, [8]), [value("f64", 5.066666666666666)]); + +// ./test/core/float_exprs.wast:830 +assert_return(() => invoke($41, `check`, [16]), [value("f64", 5.1000000000000005)]); + +// ./test/core/float_exprs.wast:831 +assert_return(() => invoke($41, `check`, [24]), [value("f64", 5.133333333333334)]); + +// ./test/core/float_exprs.wast:835 +let $42 = instantiate(`(module + (func (export "f32.ult") (param $$x f32) (param $$y f32) (result i32) (i32.eqz (f32.ge (local.get $$x) (local.get $$y)))) + (func (export "f32.ule") (param $$x f32) (param $$y f32) (result i32) (i32.eqz (f32.gt (local.get $$x) (local.get $$y)))) + (func (export "f32.ugt") (param $$x f32) (param $$y f32) (result i32) (i32.eqz (f32.le (local.get $$x) (local.get $$y)))) + (func (export "f32.uge") (param $$x f32) (param $$y f32) (result i32) (i32.eqz (f32.lt (local.get $$x) (local.get $$y)))) + + (func (export "f64.ult") (param $$x f64) (param $$y f64) (result i32) (i32.eqz (f64.ge (local.get $$x) (local.get $$y)))) + (func (export "f64.ule") (param $$x f64) (param $$y f64) (result i32) (i32.eqz (f64.gt (local.get $$x) (local.get $$y)))) + (func (export "f64.ugt") (param $$x f64) (param $$y f64) (result i32) (i32.eqz (f64.le (local.get $$x) (local.get $$y)))) + (func (export "f64.uge") (param $$x f64) (param $$y f64) (result i32) (i32.eqz (f64.lt (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:847 +assert_return(() => invoke($42, `f32.ult`, [value("f32", 3), value("f32", 2)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:848 +assert_return(() => invoke($42, `f32.ult`, [value("f32", 2), value("f32", 2)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:849 +assert_return(() => invoke($42, `f32.ult`, [value("f32", 2), value("f32", 3)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:850 +assert_return( + () => invoke($42, `f32.ult`, [value("f32", 2), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:851 +assert_return(() => invoke($42, `f32.ule`, [value("f32", 3), value("f32", 2)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:852 +assert_return(() => invoke($42, `f32.ule`, [value("f32", 2), value("f32", 2)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:853 +assert_return(() => invoke($42, `f32.ule`, [value("f32", 2), value("f32", 3)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:854 +assert_return( + () => invoke($42, `f32.ule`, [value("f32", 2), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:855 +assert_return(() => invoke($42, `f32.ugt`, [value("f32", 3), value("f32", 2)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:856 +assert_return(() => invoke($42, `f32.ugt`, [value("f32", 2), value("f32", 2)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:857 +assert_return(() => invoke($42, `f32.ugt`, [value("f32", 2), value("f32", 3)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:858 +assert_return( + () => invoke($42, `f32.ugt`, [value("f32", 2), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:859 +assert_return(() => invoke($42, `f32.uge`, [value("f32", 3), value("f32", 2)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:860 +assert_return(() => invoke($42, `f32.uge`, [value("f32", 2), value("f32", 2)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:861 +assert_return(() => invoke($42, `f32.uge`, [value("f32", 2), value("f32", 3)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:862 +assert_return( + () => invoke($42, `f32.uge`, [value("f32", 2), bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:863 +assert_return(() => invoke($42, `f64.ult`, [value("f64", 3), value("f64", 2)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:864 +assert_return(() => invoke($42, `f64.ult`, [value("f64", 2), value("f64", 2)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:865 +assert_return(() => invoke($42, `f64.ult`, [value("f64", 2), value("f64", 3)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:866 +assert_return( + () => invoke($42, `f64.ult`, [ + value("f64", 2), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:867 +assert_return(() => invoke($42, `f64.ule`, [value("f64", 3), value("f64", 2)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:868 +assert_return(() => invoke($42, `f64.ule`, [value("f64", 2), value("f64", 2)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:869 +assert_return(() => invoke($42, `f64.ule`, [value("f64", 2), value("f64", 3)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:870 +assert_return( + () => invoke($42, `f64.ule`, [ + value("f64", 2), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:871 +assert_return(() => invoke($42, `f64.ugt`, [value("f64", 3), value("f64", 2)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:872 +assert_return(() => invoke($42, `f64.ugt`, [value("f64", 2), value("f64", 2)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:873 +assert_return(() => invoke($42, `f64.ugt`, [value("f64", 2), value("f64", 3)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:874 +assert_return( + () => invoke($42, `f64.ugt`, [ + value("f64", 2), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:875 +assert_return(() => invoke($42, `f64.uge`, [value("f64", 3), value("f64", 2)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:876 +assert_return(() => invoke($42, `f64.uge`, [value("f64", 2), value("f64", 2)]), [value("i32", 1)]); + +// ./test/core/float_exprs.wast:877 +assert_return(() => invoke($42, `f64.uge`, [value("f64", 2), value("f64", 3)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:878 +assert_return( + () => invoke($42, `f64.uge`, [ + value("f64", 2), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:882 +let $43 = instantiate(`(module + (func (export "f32.no_fold_lt_select") (param $$x f32) (param $$y f32) (result f32) (select (local.get $$x) (local.get $$y) (f32.lt (local.get $$x) (local.get $$y)))) + (func (export "f32.no_fold_le_select") (param $$x f32) (param $$y f32) (result f32) (select (local.get $$x) (local.get $$y) (f32.le (local.get $$x) (local.get $$y)))) + (func (export "f32.no_fold_gt_select") (param $$x f32) (param $$y f32) (result f32) (select (local.get $$x) (local.get $$y) (f32.gt (local.get $$x) (local.get $$y)))) + (func (export "f32.no_fold_ge_select") (param $$x f32) (param $$y f32) (result f32) (select (local.get $$x) (local.get $$y) (f32.ge (local.get $$x) (local.get $$y)))) + + (func (export "f64.no_fold_lt_select") (param $$x f64) (param $$y f64) (result f64) (select (local.get $$x) (local.get $$y) (f64.lt (local.get $$x) (local.get $$y)))) + (func (export "f64.no_fold_le_select") (param $$x f64) (param $$y f64) (result f64) (select (local.get $$x) (local.get $$y) (f64.le (local.get $$x) (local.get $$y)))) + (func (export "f64.no_fold_gt_select") (param $$x f64) (param $$y f64) (result f64) (select (local.get $$x) (local.get $$y) (f64.gt (local.get $$x) (local.get $$y)))) + (func (export "f64.no_fold_ge_select") (param $$x f64) (param $$y f64) (result f64) (select (local.get $$x) (local.get $$y) (f64.ge (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:894 +assert_return( + () => invoke($43, `f32.no_fold_lt_select`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:895 +assert_return( + () => invoke($43, `f32.no_fold_lt_select`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:896 +assert_return( + () => invoke($43, `f32.no_fold_lt_select`, [value("f32", 0), value("f32", -0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:897 +assert_return( + () => invoke($43, `f32.no_fold_lt_select`, [value("f32", -0), value("f32", 0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:898 +assert_return( + () => invoke($43, `f32.no_fold_le_select`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:899 +assert_return( + () => invoke($43, `f32.no_fold_le_select`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:900 +assert_return( + () => invoke($43, `f32.no_fold_le_select`, [value("f32", 0), value("f32", -0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:901 +assert_return( + () => invoke($43, `f32.no_fold_le_select`, [value("f32", -0), value("f32", 0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:902 +assert_return( + () => invoke($43, `f32.no_fold_gt_select`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:903 +assert_return( + () => invoke($43, `f32.no_fold_gt_select`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:904 +assert_return( + () => invoke($43, `f32.no_fold_gt_select`, [value("f32", 0), value("f32", -0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:905 +assert_return( + () => invoke($43, `f32.no_fold_gt_select`, [value("f32", -0), value("f32", 0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:906 +assert_return( + () => invoke($43, `f32.no_fold_ge_select`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:907 +assert_return( + () => invoke($43, `f32.no_fold_ge_select`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:908 +assert_return( + () => invoke($43, `f32.no_fold_ge_select`, [value("f32", 0), value("f32", -0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:909 +assert_return( + () => invoke($43, `f32.no_fold_ge_select`, [value("f32", -0), value("f32", 0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:910 +assert_return( + () => invoke($43, `f64.no_fold_lt_select`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:911 +assert_return( + () => invoke($43, `f64.no_fold_lt_select`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:912 +assert_return( + () => invoke($43, `f64.no_fold_lt_select`, [value("f64", 0), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:913 +assert_return( + () => invoke($43, `f64.no_fold_lt_select`, [value("f64", -0), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:914 +assert_return( + () => invoke($43, `f64.no_fold_le_select`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:915 +assert_return( + () => invoke($43, `f64.no_fold_le_select`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:916 +assert_return( + () => invoke($43, `f64.no_fold_le_select`, [value("f64", 0), value("f64", -0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:917 +assert_return( + () => invoke($43, `f64.no_fold_le_select`, [value("f64", -0), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:918 +assert_return( + () => invoke($43, `f64.no_fold_gt_select`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:919 +assert_return( + () => invoke($43, `f64.no_fold_gt_select`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:920 +assert_return( + () => invoke($43, `f64.no_fold_gt_select`, [value("f64", 0), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:921 +assert_return( + () => invoke($43, `f64.no_fold_gt_select`, [value("f64", -0), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:922 +assert_return( + () => invoke($43, `f64.no_fold_ge_select`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:923 +assert_return( + () => invoke($43, `f64.no_fold_ge_select`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:924 +assert_return( + () => invoke($43, `f64.no_fold_ge_select`, [value("f64", 0), value("f64", -0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:925 +assert_return( + () => invoke($43, `f64.no_fold_ge_select`, [value("f64", -0), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:929 +let $44 = instantiate(`(module + (func (export "f32.no_fold_lt_if") (param $$x f32) (param $$y f32) (result f32) + (if (result f32) (f32.lt (local.get $$x) (local.get $$y)) + (then (local.get $$x)) (else (local.get $$y)) + ) + ) + (func (export "f32.no_fold_le_if") (param $$x f32) (param $$y f32) (result f32) + (if (result f32) (f32.le (local.get $$x) (local.get $$y)) + (then (local.get $$x)) (else (local.get $$y)) + ) + ) + (func (export "f32.no_fold_gt_if") (param $$x f32) (param $$y f32) (result f32) + (if (result f32) (f32.gt (local.get $$x) (local.get $$y)) + (then (local.get $$x)) (else (local.get $$y)) + ) + ) + (func (export "f32.no_fold_ge_if") (param $$x f32) (param $$y f32) (result f32) + (if (result f32) (f32.ge (local.get $$x) (local.get $$y)) + (then (local.get $$x)) (else (local.get $$y)) + ) + ) + + (func (export "f64.no_fold_lt_if") (param $$x f64) (param $$y f64) (result f64) + (if (result f64) (f64.lt (local.get $$x) (local.get $$y)) + (then (local.get $$x)) (else (local.get $$y)) + ) + ) + (func (export "f64.no_fold_le_if") (param $$x f64) (param $$y f64) (result f64) + (if (result f64) (f64.le (local.get $$x) (local.get $$y)) + (then (local.get $$x)) (else (local.get $$y)) + ) + ) + (func (export "f64.no_fold_gt_if") (param $$x f64) (param $$y f64) (result f64) + (if (result f64) (f64.gt (local.get $$x) (local.get $$y)) + (then (local.get $$x)) (else (local.get $$y)) + ) + ) + (func (export "f64.no_fold_ge_if") (param $$x f64) (param $$y f64) (result f64) + (if (result f64) (f64.ge (local.get $$x) (local.get $$y)) + (then (local.get $$x)) (else (local.get $$y)) + ) + ) +)`); + +// ./test/core/float_exprs.wast:973 +assert_return( + () => invoke($44, `f32.no_fold_lt_if`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:974 +assert_return( + () => invoke($44, `f32.no_fold_lt_if`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:975 +assert_return( + () => invoke($44, `f32.no_fold_lt_if`, [value("f32", 0), value("f32", -0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:976 +assert_return( + () => invoke($44, `f32.no_fold_lt_if`, [value("f32", -0), value("f32", 0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:977 +assert_return( + () => invoke($44, `f32.no_fold_le_if`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:978 +assert_return( + () => invoke($44, `f32.no_fold_le_if`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:979 +assert_return( + () => invoke($44, `f32.no_fold_le_if`, [value("f32", 0), value("f32", -0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:980 +assert_return( + () => invoke($44, `f32.no_fold_le_if`, [value("f32", -0), value("f32", 0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:981 +assert_return( + () => invoke($44, `f32.no_fold_gt_if`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:982 +assert_return( + () => invoke($44, `f32.no_fold_gt_if`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:983 +assert_return( + () => invoke($44, `f32.no_fold_gt_if`, [value("f32", 0), value("f32", -0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:984 +assert_return( + () => invoke($44, `f32.no_fold_gt_if`, [value("f32", -0), value("f32", 0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:985 +assert_return( + () => invoke($44, `f32.no_fold_ge_if`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:986 +assert_return( + () => invoke($44, `f32.no_fold_ge_if`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:987 +assert_return( + () => invoke($44, `f32.no_fold_ge_if`, [value("f32", 0), value("f32", -0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:988 +assert_return( + () => invoke($44, `f32.no_fold_ge_if`, [value("f32", -0), value("f32", 0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:989 +assert_return( + () => invoke($44, `f64.no_fold_lt_if`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:990 +assert_return( + () => invoke($44, `f64.no_fold_lt_if`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:991 +assert_return( + () => invoke($44, `f64.no_fold_lt_if`, [value("f64", 0), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:992 +assert_return( + () => invoke($44, `f64.no_fold_lt_if`, [value("f64", -0), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:993 +assert_return( + () => invoke($44, `f64.no_fold_le_if`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:994 +assert_return( + () => invoke($44, `f64.no_fold_le_if`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:995 +assert_return( + () => invoke($44, `f64.no_fold_le_if`, [value("f64", 0), value("f64", -0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:996 +assert_return( + () => invoke($44, `f64.no_fold_le_if`, [value("f64", -0), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:997 +assert_return( + () => invoke($44, `f64.no_fold_gt_if`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:998 +assert_return( + () => invoke($44, `f64.no_fold_gt_if`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:999 +assert_return( + () => invoke($44, `f64.no_fold_gt_if`, [value("f64", 0), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1000 +assert_return( + () => invoke($44, `f64.no_fold_gt_if`, [value("f64", -0), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1001 +assert_return( + () => invoke($44, `f64.no_fold_ge_if`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:1002 +assert_return( + () => invoke($44, `f64.no_fold_ge_if`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1003 +assert_return( + () => invoke($44, `f64.no_fold_ge_if`, [value("f64", 0), value("f64", -0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1004 +assert_return( + () => invoke($44, `f64.no_fold_ge_if`, [value("f64", -0), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1008 +let $45 = instantiate(`(module + (func (export "f32.no_fold_lt_select_to_abs") (param $$x f32) (result f32) (select (f32.neg (local.get $$x)) (local.get $$x) (f32.lt (local.get $$x) (f32.const 0.0)))) + (func (export "f32.no_fold_le_select_to_abs") (param $$x f32) (result f32) (select (f32.neg (local.get $$x)) (local.get $$x) (f32.le (local.get $$x) (f32.const -0.0)))) + (func (export "f32.no_fold_gt_select_to_abs") (param $$x f32) (result f32) (select (local.get $$x) (f32.neg (local.get $$x)) (f32.gt (local.get $$x) (f32.const -0.0)))) + (func (export "f32.no_fold_ge_select_to_abs") (param $$x f32) (result f32) (select (local.get $$x) (f32.neg (local.get $$x)) (f32.ge (local.get $$x) (f32.const 0.0)))) + + (func (export "f64.no_fold_lt_select_to_abs") (param $$x f64) (result f64) (select (f64.neg (local.get $$x)) (local.get $$x) (f64.lt (local.get $$x) (f64.const 0.0)))) + (func (export "f64.no_fold_le_select_to_abs") (param $$x f64) (result f64) (select (f64.neg (local.get $$x)) (local.get $$x) (f64.le (local.get $$x) (f64.const -0.0)))) + (func (export "f64.no_fold_gt_select_to_abs") (param $$x f64) (result f64) (select (local.get $$x) (f64.neg (local.get $$x)) (f64.gt (local.get $$x) (f64.const -0.0)))) + (func (export "f64.no_fold_ge_select_to_abs") (param $$x f64) (result f64) (select (local.get $$x) (f64.neg (local.get $$x)) (f64.ge (local.get $$x) (f64.const 0.0)))) +)`); + +// ./test/core/float_exprs.wast:1020 +assert_return( + () => invoke($45, `f32.no_fold_lt_select_to_abs`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])], +); + +// ./test/core/float_exprs.wast:1021 +assert_return( + () => invoke($45, `f32.no_fold_lt_select_to_abs`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/float_exprs.wast:1022 +assert_return(() => invoke($45, `f32.no_fold_lt_select_to_abs`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1023 +assert_return(() => invoke($45, `f32.no_fold_lt_select_to_abs`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1024 +assert_return( + () => invoke($45, `f32.no_fold_le_select_to_abs`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])], +); + +// ./test/core/float_exprs.wast:1025 +assert_return( + () => invoke($45, `f32.no_fold_le_select_to_abs`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/float_exprs.wast:1026 +assert_return(() => invoke($45, `f32.no_fold_le_select_to_abs`, [value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1027 +assert_return(() => invoke($45, `f32.no_fold_le_select_to_abs`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1028 +assert_return( + () => invoke($45, `f32.no_fold_gt_select_to_abs`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xa0, 0xff])], +); + +// ./test/core/float_exprs.wast:1029 +assert_return( + () => invoke($45, `f32.no_fold_gt_select_to_abs`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:1030 +assert_return(() => invoke($45, `f32.no_fold_gt_select_to_abs`, [value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1031 +assert_return(() => invoke($45, `f32.no_fold_gt_select_to_abs`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1032 +assert_return( + () => invoke($45, `f32.no_fold_ge_select_to_abs`, [ + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ]), + [bytes("f32", [0x0, 0x0, 0xa0, 0xff])], +); + +// ./test/core/float_exprs.wast:1033 +assert_return( + () => invoke($45, `f32.no_fold_ge_select_to_abs`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:1034 +assert_return(() => invoke($45, `f32.no_fold_ge_select_to_abs`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1035 +assert_return(() => invoke($45, `f32.no_fold_ge_select_to_abs`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1036 +assert_return( + () => invoke($45, `f64.no_fold_lt_select_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_exprs.wast:1037 +assert_return( + () => invoke($45, `f64.no_fold_lt_select_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/float_exprs.wast:1038 +assert_return(() => invoke($45, `f64.no_fold_lt_select_to_abs`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1039 +assert_return(() => invoke($45, `f64.no_fold_lt_select_to_abs`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1040 +assert_return( + () => invoke($45, `f64.no_fold_le_select_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_exprs.wast:1041 +assert_return( + () => invoke($45, `f64.no_fold_le_select_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/float_exprs.wast:1042 +assert_return(() => invoke($45, `f64.no_fold_le_select_to_abs`, [value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1043 +assert_return(() => invoke($45, `f64.no_fold_le_select_to_abs`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1044 +assert_return( + () => invoke($45, `f64.no_fold_gt_select_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])], +); + +// ./test/core/float_exprs.wast:1045 +assert_return( + () => invoke($45, `f64.no_fold_gt_select_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:1046 +assert_return(() => invoke($45, `f64.no_fold_gt_select_to_abs`, [value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1047 +assert_return(() => invoke($45, `f64.no_fold_gt_select_to_abs`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1048 +assert_return( + () => invoke($45, `f64.no_fold_ge_select_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])], +); + +// ./test/core/float_exprs.wast:1049 +assert_return( + () => invoke($45, `f64.no_fold_ge_select_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:1050 +assert_return(() => invoke($45, `f64.no_fold_ge_select_to_abs`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1051 +assert_return(() => invoke($45, `f64.no_fold_ge_select_to_abs`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1055 +let $46 = instantiate(`(module + (func (export "f32.no_fold_lt_if_to_abs") (param $$x f32) (result f32) + (if (result f32) (f32.lt (local.get $$x) (f32.const 0.0)) + (then (f32.neg (local.get $$x))) (else (local.get $$x)) + ) + ) + (func (export "f32.no_fold_le_if_to_abs") (param $$x f32) (result f32) + (if (result f32) (f32.le (local.get $$x) (f32.const -0.0)) + (then (f32.neg (local.get $$x))) (else (local.get $$x)) + ) + ) + (func (export "f32.no_fold_gt_if_to_abs") (param $$x f32) (result f32) + (if (result f32) (f32.gt (local.get $$x) (f32.const -0.0)) + (then (local.get $$x)) (else (f32.neg (local.get $$x))) + ) + ) + (func (export "f32.no_fold_ge_if_to_abs") (param $$x f32) (result f32) + (if (result f32) (f32.ge (local.get $$x) (f32.const 0.0)) + (then (local.get $$x)) (else (f32.neg (local.get $$x))) + ) + ) + + (func (export "f64.no_fold_lt_if_to_abs") (param $$x f64) (result f64) + (if (result f64) (f64.lt (local.get $$x) (f64.const 0.0)) + (then (f64.neg (local.get $$x))) (else (local.get $$x)) + ) + ) + (func (export "f64.no_fold_le_if_to_abs") (param $$x f64) (result f64) + (if (result f64) (f64.le (local.get $$x) (f64.const -0.0)) + (then (f64.neg (local.get $$x))) (else (local.get $$x)) + ) + ) + (func (export "f64.no_fold_gt_if_to_abs") (param $$x f64) (result f64) + (if (result f64) (f64.gt (local.get $$x) (f64.const -0.0)) + (then (local.get $$x)) (else (f64.neg (local.get $$x))) + ) + ) + (func (export "f64.no_fold_ge_if_to_abs") (param $$x f64) (result f64) + (if (result f64) (f64.ge (local.get $$x) (f64.const 0.0)) + (then (local.get $$x)) (else (f64.neg (local.get $$x))) + ) + ) +)`); + +// ./test/core/float_exprs.wast:1099 +assert_return( + () => invoke($46, `f32.no_fold_lt_if_to_abs`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])], +); + +// ./test/core/float_exprs.wast:1100 +assert_return( + () => invoke($46, `f32.no_fold_lt_if_to_abs`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/float_exprs.wast:1101 +assert_return(() => invoke($46, `f32.no_fold_lt_if_to_abs`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1102 +assert_return(() => invoke($46, `f32.no_fold_lt_if_to_abs`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1103 +assert_return( + () => invoke($46, `f32.no_fold_le_if_to_abs`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])], +); + +// ./test/core/float_exprs.wast:1104 +assert_return( + () => invoke($46, `f32.no_fold_le_if_to_abs`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [bytes("f32", [0x0, 0x0, 0xc0, 0xff])], +); + +// ./test/core/float_exprs.wast:1105 +assert_return(() => invoke($46, `f32.no_fold_le_if_to_abs`, [value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1106 +assert_return(() => invoke($46, `f32.no_fold_le_if_to_abs`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1107 +assert_return( + () => invoke($46, `f32.no_fold_gt_if_to_abs`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [bytes("f32", [0x0, 0x0, 0xa0, 0xff])], +); + +// ./test/core/float_exprs.wast:1108 +assert_return( + () => invoke($46, `f32.no_fold_gt_if_to_abs`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:1109 +assert_return(() => invoke($46, `f32.no_fold_gt_if_to_abs`, [value("f32", 0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1110 +assert_return(() => invoke($46, `f32.no_fold_gt_if_to_abs`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1111 +assert_return( + () => invoke($46, `f32.no_fold_ge_if_to_abs`, [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]), + [bytes("f32", [0x0, 0x0, 0xa0, 0xff])], +); + +// ./test/core/float_exprs.wast:1112 +assert_return( + () => invoke($46, `f32.no_fold_ge_if_to_abs`, [bytes("f32", [0x0, 0x0, 0xc0, 0xff])]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/float_exprs.wast:1113 +assert_return(() => invoke($46, `f32.no_fold_ge_if_to_abs`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1114 +assert_return(() => invoke($46, `f32.no_fold_ge_if_to_abs`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1115 +assert_return( + () => invoke($46, `f64.no_fold_lt_if_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_exprs.wast:1116 +assert_return( + () => invoke($46, `f64.no_fold_lt_if_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/float_exprs.wast:1117 +assert_return(() => invoke($46, `f64.no_fold_lt_if_to_abs`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1118 +assert_return(() => invoke($46, `f64.no_fold_lt_if_to_abs`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1119 +assert_return( + () => invoke($46, `f64.no_fold_le_if_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_exprs.wast:1120 +assert_return( + () => invoke($46, `f64.no_fold_le_if_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/float_exprs.wast:1121 +assert_return(() => invoke($46, `f64.no_fold_le_if_to_abs`, [value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1122 +assert_return(() => invoke($46, `f64.no_fold_le_if_to_abs`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1123 +assert_return( + () => invoke($46, `f64.no_fold_gt_if_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])], +); + +// ./test/core/float_exprs.wast:1124 +assert_return( + () => invoke($46, `f64.no_fold_gt_if_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:1125 +assert_return(() => invoke($46, `f64.no_fold_gt_if_to_abs`, [value("f64", 0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1126 +assert_return(() => invoke($46, `f64.no_fold_gt_if_to_abs`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1127 +assert_return( + () => invoke($46, `f64.no_fold_ge_if_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff])], +); + +// ./test/core/float_exprs.wast:1128 +assert_return( + () => invoke($46, `f64.no_fold_ge_if_to_abs`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/float_exprs.wast:1129 +assert_return(() => invoke($46, `f64.no_fold_ge_if_to_abs`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1130 +assert_return(() => invoke($46, `f64.no_fold_ge_if_to_abs`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1135 +let $47 = instantiate(`(module + (func (export "f32.incorrect_correction") (result f32) + (f32.sub (f32.sub (f32.add (f32.const 1.333) (f32.const 1.225)) (f32.const 1.333)) (f32.const 1.225)) + ) + (func (export "f64.incorrect_correction") (result f64) + (f64.sub (f64.sub (f64.add (f64.const 1.333) (f64.const 1.225)) (f64.const 1.333)) (f64.const 1.225)) + ) +)`); + +// ./test/core/float_exprs.wast:1144 +assert_return(() => invoke($47, `f32.incorrect_correction`, []), [value("f32", 0.00000011920929)]); + +// ./test/core/float_exprs.wast:1145 +assert_return( + () => invoke($47, `f64.incorrect_correction`, []), + [value("f64", -0.0000000000000002220446049250313)], +); + +// ./test/core/float_exprs.wast:1150 +let $48 = instantiate(`(module + (func (export "calculate") (result f32) + (local $$x f32) + (local $$r f32) + (local $$q f32) + (local $$z0 f32) + (local $$z1 f32) + (local.set $$x (f32.const 156.25)) + (local.set $$r (f32.const 208.333333334)) + (local.set $$q (f32.const 1.77951304201)) + (local.set $$z0 (f32.div (f32.mul (f32.neg (local.get $$r)) (local.get $$x)) (f32.sub (f32.mul (local.get $$x) (local.get $$q)) (local.get $$r)))) + (local.set $$z1 (f32.div (f32.mul (f32.neg (local.get $$r)) (local.get $$x)) (f32.sub (f32.mul (local.get $$x) (local.get $$q)) (local.get $$r)))) + (block (br_if 0 (f32.eq (local.get $$z0) (local.get $$z1))) (unreachable)) + (local.get $$z1) + ) +)`); + +// ./test/core/float_exprs.wast:1167 +assert_return(() => invoke($48, `calculate`, []), [value("f32", -466.92685)]); + +// ./test/core/float_exprs.wast:1169 +let $49 = instantiate(`(module + (func (export "calculate") (result f64) + (local $$x f64) + (local $$r f64) + (local $$q f64) + (local $$z0 f64) + (local $$z1 f64) + (local.set $$x (f64.const 156.25)) + (local.set $$r (f64.const 208.333333334)) + (local.set $$q (f64.const 1.77951304201)) + (local.set $$z0 (f64.div (f64.mul (f64.neg (local.get $$r)) (local.get $$x)) (f64.sub (f64.mul (local.get $$x) (local.get $$q)) (local.get $$r)))) + (local.set $$z1 (f64.div (f64.mul (f64.neg (local.get $$r)) (local.get $$x)) (f64.sub (f64.mul (local.get $$x) (local.get $$q)) (local.get $$r)))) + (block (br_if 0 (f64.eq (local.get $$z0) (local.get $$z1))) (unreachable)) + (local.get $$z1) + ) +)`); + +// ./test/core/float_exprs.wast:1186 +assert_return(() => invoke($49, `calculate`, []), [value("f64", -466.926956301738)]); + +// ./test/core/float_exprs.wast:1191 +let $50 = instantiate(`(module + (func (export "llvm_pr26746") (param $$x f32) (result f32) + (f32.sub (f32.const 0.0) (f32.sub (f32.const -0.0) (local.get $$x))) + ) +)`); + +// ./test/core/float_exprs.wast:1197 +assert_return(() => invoke($50, `llvm_pr26746`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1202 +let $51 = instantiate(`(module + (func (export "llvm_pr27153") (param $$x i32) (result f32) + (f32.add (f32.convert_i32_s (i32.and (local.get $$x) (i32.const 268435455))) (f32.const -8388608.0)) + ) +)`); + +// ./test/core/float_exprs.wast:1208 +assert_return(() => invoke($51, `llvm_pr27153`, [33554434]), [value("f32", 25165824)]); + +// ./test/core/float_exprs.wast:1213 +let $52 = instantiate(`(module + (func (export "llvm_pr27036") (param $$x i32) (param $$y i32) (result f32) + (f32.add (f32.convert_i32_s (i32.or (local.get $$x) (i32.const -25034805))) + (f32.convert_i32_s (i32.and (local.get $$y) (i32.const 14942208)))) + ) +)`); + +// ./test/core/float_exprs.wast:1220 +assert_return(() => invoke($52, `llvm_pr27036`, [-25034805, 14942208]), [value("f32", -10092596)]); + +// ./test/core/float_exprs.wast:1230 +let $53 = instantiate(`(module + (func (export "thepast0") (param $$a f64) (param $$b f64) (param $$c f64) (param $$d f64) (result f64) + (f64.div (f64.mul (local.get $$a) (local.get $$b)) (f64.mul (local.get $$c) (local.get $$d))) + ) + + (func (export "thepast1") (param $$a f64) (param $$b f64) (param $$c f64) (result f64) + (f64.sub (f64.mul (local.get $$a) (local.get $$b)) (local.get $$c)) + ) + + (func (export "thepast2") (param $$a f32) (param $$b f32) (param $$c f32) (result f32) + (f32.mul (f32.mul (local.get $$a) (local.get $$b)) (local.get $$c)) + ) +)`); + +// ./test/core/float_exprs.wast:1244 +assert_return( + () => invoke($53, `thepast0`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", 0.9999999999999999), + value("f64", 2), + value("f64", 0.5), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044501477170144023), + ], +); + +// ./test/core/float_exprs.wast:1245 +assert_return( + () => invoke($53, `thepast1`, [ + value("f64", 0.00000000000000005551115123125783), + value("f64", 0.9999999999999999), + value("f64", 0.00000000000000005551115123125783), + ]), + [value("f64", -0.000000000000000000000000000000006162975822039155)], +); + +// ./test/core/float_exprs.wast:1246 +assert_return( + () => invoke($53, `thepast2`, [ + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.5), + value("f32", 1), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/float_exprs.wast:1251 +let $54 = instantiate(`(module + (func (export "inverse") (param $$x f32) (result f32) + (f32.div (f32.const 1.0) (local.get $$x)) + ) +)`); + +// ./test/core/float_exprs.wast:1257 +assert_return(() => invoke($54, `inverse`, [value("f32", 96)]), [value("f32", 0.010416667)]); + +// ./test/core/float_exprs.wast:1262 +let $55 = instantiate(`(module + (func (export "f32_sqrt_minus_2") (param $$x f32) (result f32) + (f32.sub (f32.sqrt (local.get $$x)) (f32.const 2.0)) + ) + + (func (export "f64_sqrt_minus_2") (param $$x f64) (result f64) + (f64.sub (f64.sqrt (local.get $$x)) (f64.const 2.0)) + ) +)`); + +// ./test/core/float_exprs.wast:1272 +assert_return(() => invoke($55, `f32_sqrt_minus_2`, [value("f32", 4)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1273 +assert_return(() => invoke($55, `f64_sqrt_minus_2`, [value("f64", 4)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1277 +let $56 = instantiate(`(module + (func (export "f32.no_fold_recip_recip") (param $$x f32) (result f32) + (f32.div (f32.const 1.0) (f32.div (f32.const 1.0) (local.get $$x)))) + + (func (export "f64.no_fold_recip_recip") (param $$x f64) (result f64) + (f64.div (f64.const 1.0) (f64.div (f64.const 1.0) (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:1285 +assert_return( + () => invoke($56, `f32.no_fold_recip_recip`, [value("f32", -70435790000000000000)]), + [value("f32", -70435784000000000000)], +); + +// ./test/core/float_exprs.wast:1286 +assert_return( + () => invoke($56, `f32.no_fold_recip_recip`, [ + value("f32", 0.000000000000000000000012466101), + ]), + [value("f32", 0.0000000000000000000000124661)], +); + +// ./test/core/float_exprs.wast:1287 +assert_return( + () => invoke($56, `f32.no_fold_recip_recip`, [ + value("f32", 0.000000000000000000097184545), + ]), + [value("f32", 0.00000000000000000009718455)], +); + +// ./test/core/float_exprs.wast:1288 +assert_return( + () => invoke($56, `f32.no_fold_recip_recip`, [value("f32", -30.400759)]), + [value("f32", -30.40076)], +); + +// ./test/core/float_exprs.wast:1289 +assert_return( + () => invoke($56, `f32.no_fold_recip_recip`, [value("f32", 2331659200000000000000)]), + [value("f32", 2331659000000000000000)], +); + +// ./test/core/float_exprs.wast:1291 +assert_return(() => invoke($56, `f32.no_fold_recip_recip`, [value("f32", -0)]), [value("f32", -0)]); + +// ./test/core/float_exprs.wast:1292 +assert_return(() => invoke($56, `f32.no_fold_recip_recip`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1293 +assert_return( + () => invoke($56, `f32.no_fold_recip_recip`, [value("f32", -Infinity)]), + [value("f32", -Infinity)], +); + +// ./test/core/float_exprs.wast:1294 +assert_return( + () => invoke($56, `f32.no_fold_recip_recip`, [value("f32", Infinity)]), + [value("f32", Infinity)], +); + +// ./test/core/float_exprs.wast:1296 +assert_return( + () => invoke($56, `f64.no_fold_recip_recip`, [ + value("f64", -657971534362886860000000000000000000000000000), + ]), + [value("f64", -657971534362886900000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1297 +assert_return( + () => invoke($56, `f64.no_fold_recip_recip`, [value("f64", -144246931868576430000)]), + [value("f64", -144246931868576420000)], +); + +// ./test/core/float_exprs.wast:1298 +assert_return( + () => invoke($56, `f64.no_fold_recip_recip`, [ + value("f64", 184994689206231350000000000000000000000000000000000), + ]), + [value("f64", 184994689206231330000000000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1299 +assert_return( + () => invoke($56, `f64.no_fold_recip_recip`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005779584288006583), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005779584288006582), + ], +); + +// ./test/core/float_exprs.wast:1300 +assert_return( + () => invoke($56, `f64.no_fold_recip_recip`, [ + value("f64", 51501178696141640000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 51501178696141634000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1302 +assert_return(() => invoke($56, `f64.no_fold_recip_recip`, [value("f64", -0)]), [value("f64", -0)]); + +// ./test/core/float_exprs.wast:1303 +assert_return(() => invoke($56, `f64.no_fold_recip_recip`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1304 +assert_return( + () => invoke($56, `f64.no_fold_recip_recip`, [value("f64", -Infinity)]), + [value("f64", -Infinity)], +); + +// ./test/core/float_exprs.wast:1305 +assert_return( + () => invoke($56, `f64.no_fold_recip_recip`, [value("f64", Infinity)]), + [value("f64", Infinity)], +); + +// ./test/core/float_exprs.wast:1309 +let $57 = instantiate(`(module + (func (export "f32.no_algebraic_factoring") (param $$x f32) (param $$y f32) (result f32) + (f32.mul (f32.add (local.get $$x) (local.get $$y)) + (f32.sub (local.get $$x) (local.get $$y)))) + + (func (export "f64.no_algebraic_factoring") (param $$x f64) (param $$y f64) (result f64) + (f64.mul (f64.add (local.get $$x) (local.get $$y)) + (f64.sub (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:1319 +assert_return( + () => invoke($57, `f32.no_algebraic_factoring`, [ + value("f32", -0.000000000000000053711865), + value("f32", 0.00000000000000009744328), + ]), + [value("f32", -0.000000000000000000000000000000006610229)], +); + +// ./test/core/float_exprs.wast:1320 +assert_return( + () => invoke($57, `f32.no_algebraic_factoring`, [ + value("f32", -19756732), + value("f32", 32770204), + ]), + [value("f32", -683557800000000)], +); + +// ./test/core/float_exprs.wast:1321 +assert_return( + () => invoke($57, `f32.no_algebraic_factoring`, [ + value("f32", 52314150000000), + value("f32", -145309980000000), + ]), + [value("f32", -18378221000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1322 +assert_return( + () => invoke($57, `f32.no_algebraic_factoring`, [ + value("f32", 195260.38), + value("f32", -227.75723), + ]), + [value("f32", 38126563000)], +); + +// ./test/core/float_exprs.wast:1323 +assert_return( + () => invoke($57, `f32.no_algebraic_factoring`, [ + value("f32", -237.48706), + value("f32", -972341.5), + ]), + [value("f32", -945447960000)], +); + +// ./test/core/float_exprs.wast:1325 +assert_return( + () => invoke($57, `f64.no_algebraic_factoring`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009639720335949767), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008019175443606207), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006430717386609473), + ], +); + +// ./test/core/float_exprs.wast:1326 +assert_return( + () => invoke($57, `f64.no_algebraic_factoring`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005166066590392027), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001494333315888213), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000026688244016362468), + ], +); + +// ./test/core/float_exprs.wast:1327 +assert_return( + () => invoke($57, `f64.no_algebraic_factoring`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002866135870517635), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012114355254268516), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014675678175314036), + ], +); + +// ./test/core/float_exprs.wast:1328 +assert_return( + () => invoke($57, `f64.no_algebraic_factoring`, [ + value("f64", -1292099281007814900000000000000000000000000000000000000), + value("f64", 662717187728034000000000000000000000000000000000000000000), + ]), + [ + value("f64", -439192401389602300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1329 +assert_return( + () => invoke($57, `f64.no_algebraic_factoring`, [ + value("f64", 26242795689010570000000000000000000), + value("f64", -1625023398605080200000000000), + ]), + [ + value("f64", 688684325575149100000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1333 +let $58 = instantiate(`(module + (func (export "f32.no_algebraic_factoring") (param $$x f32) (param $$y f32) (result f32) + (f32.sub (f32.mul (local.get $$x) (local.get $$x)) + (f32.mul (local.get $$y) (local.get $$y)))) + + (func (export "f64.no_algebraic_factoring") (param $$x f64) (param $$y f64) (result f64) + (f64.sub (f64.mul (local.get $$x) (local.get $$x)) + (f64.mul (local.get $$y) (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:1343 +assert_return( + () => invoke($58, `f32.no_algebraic_factoring`, [ + value("f32", 0.000000000000022102996), + value("f32", 0.0000000000031465275), + ]), + [value("f32", -0.0000000000000000000000099001476)], +); + +// ./test/core/float_exprs.wast:1344 +assert_return( + () => invoke($58, `f32.no_algebraic_factoring`, [ + value("f32", -3289460800000), + value("f32", -15941539000), + ]), + [value("f32", 10820299000000000000000000)], +); + +// ./test/core/float_exprs.wast:1345 +assert_return( + () => invoke($58, `f32.no_algebraic_factoring`, [ + value("f32", 0.00036497542), + value("f32", -0.00016153714), + ]), + [value("f32", 0.000000107112804)], +); + +// ./test/core/float_exprs.wast:1346 +assert_return( + () => invoke($58, `f32.no_algebraic_factoring`, [ + value("f32", 0.000000000000065383266), + value("f32", -0.000000000000027412773), + ]), + [value("f32", 0.000000000000000000000000003523511)], +); + +// ./test/core/float_exprs.wast:1347 +assert_return( + () => invoke($58, `f32.no_algebraic_factoring`, [ + value("f32", 3609682000000000), + value("f32", -5260104400000000), + ]), + [value("f32", -14638896000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1349 +assert_return( + () => invoke($58, `f64.no_algebraic_factoring`, [ + value("f64", 213640454349895100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -292858755839442800000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 45642243734743850000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1350 +assert_return( + () => invoke($58, `f64.no_algebraic_factoring`, [ + value("f64", -1229017115924435800000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -8222158919016600000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -67603897289562710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1351 +assert_return( + () => invoke($58, `f64.no_algebraic_factoring`, [ + value("f64", 5477733829752.252), + value("f64", -970738900948.5906), + ]), + [value("f64", 29063233895797397000000000)], +); + +// ./test/core/float_exprs.wast:1352 +assert_return( + () => invoke($58, `f64.no_algebraic_factoring`, [ + value("f64", -10689141744923551000000000000000000000000000000000000000), + value("f64", -173378393593738040000000000000000000000000000000000), + ]), + [ + value("f64", 114257751213007240000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1353 +assert_return( + () => invoke($58, `f64.no_algebraic_factoring`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000010295699877022106), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000008952274637805908), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000025858214767010105), + ], +); + +// ./test/core/float_exprs.wast:1358 +let $59 = instantiate(`(module + (memory (data + "\\01\\00\\00\\00\\01\\00\\00\\80\\01\\00\\00\\00\\01\\00\\00\\80" + "\\01\\00\\00\\00\\01\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00" + "\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00" + )) + + (func (export "f32.simple_x4_sum") + (param $$i i32) + (param $$j i32) + (param $$k i32) + (local $$x0 f32) (local $$x1 f32) (local $$x2 f32) (local $$x3 f32) + (local $$y0 f32) (local $$y1 f32) (local $$y2 f32) (local $$y3 f32) + (local.set $$x0 (f32.load offset=0 (local.get $$i))) + (local.set $$x1 (f32.load offset=4 (local.get $$i))) + (local.set $$x2 (f32.load offset=8 (local.get $$i))) + (local.set $$x3 (f32.load offset=12 (local.get $$i))) + (local.set $$y0 (f32.load offset=0 (local.get $$j))) + (local.set $$y1 (f32.load offset=4 (local.get $$j))) + (local.set $$y2 (f32.load offset=8 (local.get $$j))) + (local.set $$y3 (f32.load offset=12 (local.get $$j))) + (f32.store offset=0 (local.get $$k) (f32.add (local.get $$x0) (local.get $$y0))) + (f32.store offset=4 (local.get $$k) (f32.add (local.get $$x1) (local.get $$y1))) + (f32.store offset=8 (local.get $$k) (f32.add (local.get $$x2) (local.get $$y2))) + (f32.store offset=12 (local.get $$k) (f32.add (local.get $$x3) (local.get $$y3))) + ) + + (func (export "f32.load") + (param $$k i32) (result f32) + (f32.load (local.get $$k)) + ) +)`); + +// ./test/core/float_exprs.wast:1391 +assert_return(() => invoke($59, `f32.simple_x4_sum`, [0, 16, 32]), []); + +// ./test/core/float_exprs.wast:1392 +assert_return( + () => invoke($59, `f32.load`, [32]), + [value("f32", 0.000000000000000000000000000000000000000000003)], +); + +// ./test/core/float_exprs.wast:1393 +assert_return(() => invoke($59, `f32.load`, [36]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1394 +assert_return( + () => invoke($59, `f32.load`, [40]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/float_exprs.wast:1395 +assert_return( + () => invoke($59, `f32.load`, [44]), + [value("f32", -0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/float_exprs.wast:1397 +let $60 = instantiate(`(module + (memory (data + "\\01\\00\\00\\00\\00\\00\\00\\00\\01\\00\\00\\00\\00\\00\\00\\80\\01\\00\\00\\00\\00\\00\\00\\00\\01\\00\\00\\00\\00\\00\\00\\80" + "\\01\\00\\00\\00\\00\\00\\00\\00\\01\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00" + "\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00" + )) + + (func (export "f64.simple_x4_sum") + (param $$i i32) + (param $$j i32) + (param $$k i32) + (local $$x0 f64) (local $$x1 f64) (local $$x2 f64) (local $$x3 f64) + (local $$y0 f64) (local $$y1 f64) (local $$y2 f64) (local $$y3 f64) + (local.set $$x0 (f64.load offset=0 (local.get $$i))) + (local.set $$x1 (f64.load offset=8 (local.get $$i))) + (local.set $$x2 (f64.load offset=16 (local.get $$i))) + (local.set $$x3 (f64.load offset=24 (local.get $$i))) + (local.set $$y0 (f64.load offset=0 (local.get $$j))) + (local.set $$y1 (f64.load offset=8 (local.get $$j))) + (local.set $$y2 (f64.load offset=16 (local.get $$j))) + (local.set $$y3 (f64.load offset=24 (local.get $$j))) + (f64.store offset=0 (local.get $$k) (f64.add (local.get $$x0) (local.get $$y0))) + (f64.store offset=8 (local.get $$k) (f64.add (local.get $$x1) (local.get $$y1))) + (f64.store offset=16 (local.get $$k) (f64.add (local.get $$x2) (local.get $$y2))) + (f64.store offset=24 (local.get $$k) (f64.add (local.get $$x3) (local.get $$y3))) + ) + + (func (export "f64.load") + (param $$k i32) (result f64) + (f64.load (local.get $$k)) + ) +)`); + +// ./test/core/float_exprs.wast:1430 +assert_return(() => invoke($60, `f64.simple_x4_sum`, [0, 32, 64]), []); + +// ./test/core/float_exprs.wast:1431 +assert_return( + () => invoke($60, `f64.load`, [64]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ], +); + +// ./test/core/float_exprs.wast:1432 +assert_return(() => invoke($60, `f64.load`, [72]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1433 +assert_return( + () => invoke($60, `f64.load`, [80]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/float_exprs.wast:1434 +assert_return( + () => invoke($60, `f64.load`, [88]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/float_exprs.wast:1439 +let $61 = instantiate(`(module + (memory (data + "\\c4\\c5\\57\\24\\a5\\84\\c8\\0b\\6d\\b8\\4b\\2e\\f2\\76\\17\\1c\\ca\\4a\\56\\1e\\1b\\6e\\71\\22" + "\\5d\\17\\1e\\6e\\bf\\cd\\14\\5c\\c7\\21\\55\\51\\39\\9c\\1f\\b2\\51\\f0\\a3\\93\\d7\\c1\\2c\\ae" + "\\7e\\a8\\28\\3a\\01\\21\\f4\\0a\\58\\93\\f8\\42\\77\\9f\\83\\39\\6a\\5f\\ba\\f7\\0a\\d8\\51\\6a" + "\\34\\ca\\ad\\c6\\34\\0e\\d8\\26\\dc\\4c\\33\\1c\\ed\\29\\90\\a8\\78\\0f\\d1\\ce\\76\\31\\23\\83" + "\\b8\\35\\e8\\f2\\44\\b0\\d3\\a1\\fc\\bb\\32\\e1\\b0\\ba\\69\\44\\09\\d6\\d9\\7d\\ff\\2e\\c0\\5a" + "\\36\\14\\33\\14\\3e\\a9\\fa\\87\\6d\\8b\\bc\\ce\\9d\\a7\\fd\\c4\\e9\\85\\3f\\dd\\d7\\e1\\18\\a6" + "\\50\\26\\72\\6e\\3f\\73\\0f\\f8\\12\\93\\23\\34\\61\\76\\12\\48\\c0\\9b\\05\\93\\eb\\ac\\86\\de" + "\\94\\3e\\55\\e8\\8c\\e8\\dd\\e4\\fc\\95\\47\\be\\56\\03\\21\\20\\4c\\e6\\bf\\7b\\f6\\7f\\d5\\ba" + "\\73\\1c\\c1\\14\\8f\\c4\\27\\96\\b3\\bd\\33\\ff\\78\\41\\5f\\c0\\5a\\ce\\f6\\67\\6e\\73\\9a\\17" + "\\66\\70\\03\\f8\\ce\\27\\a3\\52\\b2\\9f\\3b\\bf\\fb\\ae\\ed\\d3\\5a\\f8\\37\\57\\f0\\f5\\6e\\ef" + "\\b1\\4d\\70\\3d\\54\\a7\\01\\9a\\85\\08\\48\\91\\f5\\9d\\0c\\60\\87\\5b\\d9\\54\\1e\\51\\6d\\88" + "\\8e\\08\\8c\\a5\\71\\3a\\56\\08\\67\\46\\8f\\8f\\13\\2a\\2c\\ec\\2c\\1f\\b4\\62\\2b\\6f\\41\\0a" + "\\c4\\65\\42\\a2\\31\\6b\\2c\\7d\\3e\\bb\\75\\ac\\86\\97\\30\\d9\\48\\cd\\9a\\1f\\56\\c4\\c6\\e4" + "\\12\\c0\\9d\\fb\\ee\\02\\8c\\ce\\1c\\f2\\1e\\a1\\78\\23\\db\\c4\\1e\\49\\03\\d3\\71\\cc\\08\\50" + "\\c5\\d8\\5c\\ed\\d5\\b5\\65\\ac\\b5\\c9\\21\\d2\\c9\\29\\76\\de\\f0\\30\\1a\\5b\\3c\\f2\\3b\\db" + "\\3a\\39\\82\\3a\\16\\08\\6f\\a8\\f1\\be\\69\\69\\99\\71\\a6\\05\\d3\\14\\93\\2a\\16\\f2\\2f\\11" + "\\c7\\7e\\20\\bb\\91\\44\\ee\\f8\\e4\\01\\53\\c0\\b9\\7f\\f0\\bf\\f0\\03\\9c\\6d\\b1\\df\\a2\\44" + "\\01\\6d\\6b\\71\\2b\\5c\\b3\\21\\19\\46\\5e\\8f\\db\\91\\d3\\7c\\78\\6b\\b7\\12\\00\\8f\\eb\\bd" + "\\8a\\f5\\d4\\2e\\c4\\c1\\1e\\df\\73\\63\\59\\47\\49\\03\\0a\\b7\\cf\\24\\cf\\9c\\0e\\44\\7a\\9e" + "\\14\\fb\\42\\bf\\9d\\39\\30\\9e\\a0\\ab\\2f\\d1\\ae\\9e\\6a\\83\\43\\e3\\55\\7d\\85\\bf\\63\\8a" + "\\f8\\96\\10\\1f\\fe\\6d\\e7\\22\\1b\\e1\\69\\46\\8a\\44\\c8\\c8\\f9\\0c\\2b\\19\\07\\a5\\02\\3e" + "\\f2\\30\\10\\9a\\85\\8a\\5f\\ef\\81\\45\\a0\\77\\b1\\03\\10\\73\\4b\\ae\\98\\9d\\47\\bf\\9a\\2d" + "\\3a\\d5\\0f\\03\\66\\e3\\3d\\53\\d9\\40\\ce\\1f\\6f\\32\\2f\\21\\2b\\23\\21\\6c\\62\\d4\\a7\\3e" + "\\a8\\ce\\28\\31\\2d\\00\\3d\\67\\5e\\af\\a0\\cf\\2e\\d2\\b9\\6b\\84\\eb\\69\\08\\3c\\62\\36\\be" + "\\12\\fd\\36\\7f\\88\\3e\\ad\\bc\\0b\\c0\\41\\c4\\50\\b6\\e3\\50\\31\\e8\\ce\\e2\\96\\65\\55\\9c" + "\\16\\46\\e6\\b0\\2d\\3a\\e8\\81\\05\\b0\\bf\\34\\f7\\bc\\10\\1c\\fb\\cc\\3c\\f1\\85\\97\\42\\9f" + "\\eb\\14\\8d\\3c\\bf\\d7\\17\\88\\49\\9d\\8b\\2b\\b2\\3a\\83\\d1\\4f\\04\\9e\\a1\\0f\\ad\\08\\9d" + "\\54\\af\\d1\\82\\c3\\ec\\32\\2f\\02\\8f\\05\\21\\2d\\a2\\b7\\e4\\f4\\6f\\2e\\81\\2b\\0b\\9c\\fc" + "\\cb\\fe\\74\\02\\f9\\db\\f4\\f3\\ea\\00\\a8\\ec\\d1\\99\\74\\26\\dd\\d6\\34\\d5\\25\\b1\\46\\dd" + "\\9c\\aa\\71\\f5\\60\\b0\\88\\c8\\e0\\0b\\59\\5a\\25\\4f\\29\\66\\f9\\e3\\2e\\fe\\e9\\da\\e5\\18" + "\\4f\\27\\62\\f4\\ce\\a4\\21\\95\\74\\c7\\57\\64\\27\\9a\\4c\\fd\\54\\7d\\61\\ce\\c3\\ac\\87\\46" + "\\9c\\fa\\ff\\09\\ca\\79\\97\\67\\24\\74\\ca\\d4\\21\\83\\26\\25\\19\\12\\37\\64\\19\\e5\\65\\e0" + "\\74\\75\\8e\\dd\\c8\\ef\\74\\c7\\d8\\21\\2b\\79\\04\\51\\46\\65\\60\\03\\5d\\fa\\d8\\f4\\65\\a4" + "\\9e\\5d\\23\\da\\d7\\8a\\92\\80\\a4\\de\\78\\3c\\f1\\57\\42\\6d\\cd\\c9\\2f\\d5\\a4\\9e\\ab\\40" + "\\f4\\cb\\1b\\d7\\a3\\ca\\fc\\eb\\a7\\01\\b2\\9a\\69\\4e\\46\\9b\\18\\4e\\dd\\79\\a7\\aa\\a6\\52" + "\\39\\1e\\ef\\30\\cc\\9b\\bd\\5b\\ee\\4c\\21\\6d\\30\\00\\72\\b0\\46\\5f\\08\\cf\\c5\\b9\\e0\\3e" + "\\c2\\b3\\0c\\dc\\8e\\64\\de\\19\\42\\79\\cf\\43\\ea\\43\\5d\\8e\\88\\f7\\ab\\15\\dc\\3f\\c8\\67" + "\\20\\db\\b8\\64\\b1\\47\\1f\\de\\f2\\cb\\3f\\59\\9f\\d8\\46\\90\\dc\\ae\\2f\\22\\f9\\e2\\31\\89" + "\\d9\\9c\\1c\\4c\\d3\\a9\\4a\\57\\84\\9c\\9f\\ea\\2c\\3c\\ae\\3c\\c3\\1e\\8b\\e5\\4e\\17\\01\\25" + "\\db\\34\\46\\5f\\15\\ea\\05\\0c\\7c\\d9\\45\\8c\\19\\d0\\73\\8a\\96\\16\\dd\\44\\f9\\05\\b7\\5b" + "\\71\\b0\\e6\\21\\36\\5f\\75\\89\\91\\73\\75\\ab\\7d\\ae\\d3\\73\\ec\\37\\c6\\ea\\55\\75\\ef\\ea" + "\\ab\\8b\\7b\\11\\dc\\6d\\1a\\b2\\6a\\c4\\25\\cf\\aa\\e3\\9f\\49\\49\\89\\cb\\37\\9b\\0a\\a7\\01" + "\\60\\70\\dc\\b7\\c8\\83\\e1\\42\\f5\\be\\ad\\62\\94\\ad\\8d\\a1" + )) + + (func (export "f32.kahan_sum") (param $$p i32) (param $$n i32) (result f32) + (local $$sum f32) + (local $$c f32) + (local $$t f32) + (block $$exit + (loop $$top + (local.set $$t + (f32.sub + (f32.sub + (local.tee $$sum + (f32.add + (local.get $$c) + (local.tee $$t + (f32.sub (f32.load (local.get $$p)) (local.get $$t)) + ) + ) + ) + (local.get $$c) + ) + (local.get $$t) + ) + ) + (local.set $$p (i32.add (local.get $$p) (i32.const 4))) + (local.set $$c (local.get $$sum)) + (br_if $$top (local.tee $$n (i32.add (local.get $$n) (i32.const -1)))) + ) + ) + (local.get $$sum) + ) + + (func (export "f32.plain_sum") (param $$p i32) (param $$n i32) (result f32) + (local $$sum f32) + (block $$exit + (loop $$top + (local.set $$sum (f32.add (local.get $$sum) (f32.load (local.get $$p)))) + (local.set $$p (i32.add (local.get $$p) (i32.const 4))) + (local.set $$n (i32.add (local.get $$n) (i32.const -1))) + (br_if $$top (local.get $$n)) + ) + ) + (local.get $$sum) + ) +)`); + +// ./test/core/float_exprs.wast:1530 +assert_return( + () => invoke($61, `f32.kahan_sum`, [0, 256]), + [value("f32", -21558138000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1531 +assert_return( + () => invoke($61, `f32.plain_sum`, [0, 256]), + [value("f32", -16487540000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1533 +let $62 = instantiate(`(module + (memory (data "\\13\\05\\84\\42\\5d\\a2\\2c\\c6\\43\\db\\55\\a9\\cd\\da\\55\\e3\\73\\fc\\58\\d6\\ba\\d5\\00\\fd\\83\\35\\42\\88\\8b\\13\\5d\\38\\4a\\47\\0d\\72\\73\\a1\\1a\\ef\\c4\\45\\17\\57\\d8\\c9\\46\\e0\\8d\\6c\\e1\\37\\70\\c8\\83\\5b\\55\\5e\\5a\\2d\\73\\1e\\56\\c8\\e1\\6d\\69\\14\\78\\0a\\8a\\5a\\64\\3a\\09\\c7\\a8\\87\\c5\\f0\\d3\\5d\\e6\\03\\fc\\93\\be\\26\\ca\\d6\\a9\\91\\60\\bd\\b0\\ed\\ae\\f7\\30\\7e\\92\\3a\\6f\\a7\\59\\8e\\aa\\7d\\bf\\67\\58\\2a\\54\\f8\\4e\\fe\\ed\\35\\58\\a6\\51\\bf\\42\\e5\\4b\\66\\27\\24\\6d\\7f\\42\\2d\\28\\92\\18\\ec\\08\\ae\\e7\\55\\da\\b1\\a6\\65\\a5\\72\\50\\47\\1b\\b8\\a9\\54\\d7\\a6\\06\\5b\\0f\\42\\58\\83\\8a\\17\\82\\c6\\10\\43\\a0\\c0\\2e\\6d\\bc\\5a\\85\\53\\72\\7f\\ad\\44\\bc\\30\\3c\\55\\b2\\24\\9a\\74\\3a\\9e\\e1\\d8\\0f\\70\\fc\\a9\\3a\\cd\\93\\4b\\ec\\e3\\7e\\dd\\5d\\27\\cd\\f8\\a0\\9d\\1c\\11\\c0\\57\\2e\\fd\\c8\\13\\32\\cc\\3a\\1a\\7d\\a3\\41\\55\\ed\\c3\\82\\49\\2a\\04\\1e\\ef\\73\\b9\\2e\\2e\\e3\\5f\\f4\\df\\e6\\b2\\33\\0c\\39\\3f\\6f\\44\\6a\\03\\c1\\42\\b9\\fa\\b1\\c8\\ed\\a5\\58\\99\\7f\\ed\\b4\\72\\9e\\79\\eb\\fb\\43\\82\\45\\aa\\bb\\95\\d2\\ff\\28\\9e\\f6\\a1\\ad\\95\\d6\\55\\95\\0d\\6f\\60\\11\\c7\\78\\3e\\49\\f2\\7e\\48\\f4\\a2\\71\\d0\\13\\8e\\b3\\de\\99\\52\\e3\\45\\74\\ea\\76\\0e\\1b\\2a\\c8\\ee\\14\\01\\c4\\50\\5b\\36\\3c\\ef\\ba\\72\\a2\\a6\\08\\f8\\7b\\36\\9d\\f9\\ef\\0b\\c7\\56\\2d\\5c\\f0\\9d\\5d\\de\\fc\\b8\\ad\\0f\\64\\0e\\97\\15\\32\\26\\c2\\31\\e6\\05\\1e\\ef\\cb\\17\\1b\\6d\\15\\0b\\74\\5d\\d3\\2e\\f8\\6b\\86\\b4\\ba\\73\\52\\53\\99\\a9\\76\\20\\45\\c9\\40\\80\\6b\\14\\ed\\a1\\fa\\80\\46\\e6\\26\\d2\\e6\\98\\c4\\57\\bf\\c4\\1c\\a4\\90\\7a\\36\\94\\14\\ba\\15\\89\\6e\\e6\\9c\\37\\8c\\f4\\de\\12\\22\\5d\\a1\\79\\50\\67\\0d\\3d\\7a\\e9\\d4\\aa\\2e\\7f\\2a\\7a\\30\\3d\\ea\\5d\\12\\48\\fe\\e1\\18\\cd\\a4\\57\\a2\\87\\3e\\b6\\9a\\8b\\db\\da\\9d\\78\\9c\\cf\\8d\\b1\\4f\\90\\b4\\34\\e0\\9d\\f6\\ca\\fe\\4c\\3b\\78\\6d\\0a\\5c\\18\\9f\\61\\b9\\dd\\b4\\e0\\0f\\76\\e0\\1b\\69\\0d\\5e\\58\\73\\70\\5e\\0e\\2d\\a1\\7d\\ff\\20\\eb\\91\\34\\92\\ac\\38\\72\\2a\\1f\\8e\\71\\2e\\6a\\f1\\af\\c7\\27\\70\\d9\\c4\\57\\f7\\d2\\3c\\1d\\b8\\f0\\f0\\64\\cf\\dc\\ae\\be\\a3\\cc\\3e\\22\\7d\\4e\\69\\21\\63\\17\\ed\\03\\02\\54\\9a\\0f\\50\\4e\\13\\5a\\35\\a1\\22\\a4\\df\\86\\c2\\74\\79\\16\\b8\\69\\69\\a0\\52\\5d\\11\\64\\bd\\5b\\93\\fc\\69\\a0\\f4\\13\\d0\\81\\51\\dd\\fa\\0c\\15\\c3\\7a\\c9\\62\\7a\\a9\\1d\\c9\\e6\\5a\\b3\\5b\\97\\02\\3c\\64\\22\\12\\3c\\22\\90\\64\\2d\\30\\54\\4c\\b4\\a1\\22\\09\\57\\22\\5e\\8e\\38\\2b\\02\\a8\\ae\\f6\\be\\0d\\2b\\f2\\03\\ad\\fa\\10\\01\\71\\77\\2a\\30\\02\\95\\f6\\00\\3e\\d0\\c4\\8d\\34\\19\\50\\21\\0a\\bc\\50\\da\\3c\\30\\d6\\3a\\31\\94\\8d\\3a\\fe\\ef\\14\\57\\9d\\4b\\93\\00\\96\\24\\0c\\6f\\fd\\bc\\23\\76\\02\\6c\\eb\\52\\72\\80\\11\\7e\\80\\3a\\13\\12\\38\\1d\\38\\49\\95\\40\\27\\8a\\44\\7b\\e8\\dc\\6d\\8c\\8c\\8e\\3c\\b5\\b3\\18\\0e\\f6\\08\\1a\\84\\41\\35\\ff\\8b\\b8\\93\\40\\ea\\e1\\51\\1d\\89\\a5\\8d\\42\\68\\29\\ea\\2f\\c1\\7a\\52\\eb\\90\\5d\\4d\\d6\\80\\e3\\d7\\75\\48\\ce\\ed\\d3\\01\\1c\\8d\\5b\\a5\\94\\0d\\78\\cf\\f1\\06\\13\\2f\\98\\02\\a4\\6d\\2e\\6c\\f2\\d5\\74\\29\\89\\4c\\f9\\03\\f5\\c7\\18\\ad\\7a\\f0\\68\\f8\\5c\\d6\\59\\87\\6e\\d6\\3f\\06\\be\\86\\20\\e3\\41\\91\\22\\f3\\6e\\8b\\f0\\68\\1c\\57\\a7\\fc\\b0\\7c\\9e\\99\\0b\\96\\1a\\89\\5f\\e6\\0d\\7c\\08\\51\\a0\\a2\\67\\9a\\47\\00\\93\\6b\\f9\\28\\f0\\68\\db\\62\\f1\\e0\\65\\2c\\53\\33\\e0\\a7\\ca\\11\\42\\30\\f6\\af\\01\\c1\\65\\3d\\32\\01\\6f\\ab\\2e\\be\\d3\\8b\\be\\14\\c3\\ff\\ec\\fb\\f0\\f9\\c5\\0c\\05\\6f\\01\\09\\6b\\e3\\34\\31\\0c\\1f\\66\\a6\\42\\bc\\1a\\87\\49\\16\\16\\8c\\b0\\90\\0d\\34\\8c\\0a\\e1\\09\\5e\\10\\a4\\6b\\56\\cc\\f0\\c9\\bb\\dc\\b8\\5c\\ce\\f6\\cc\\8d\\75\\7e\\b3\\07\\88\\04\\2f\\b4\\5e\\c9\\e3\\4a\\23\\73\\19\\62\\6c\\9a\\03\\76\\44\\86\\9c\\60\\fc\\db\\72\\8f\\27\\a0\\dd\\b3\\c5\\da\\ff\\f9\\ec\\6a\\b1\\7b\\d3\\cf\\50\\37\\c9\\7a\\78\\0c\\e4\\3a\\b6\\f5\\e6\\f4\\98\\6e\\42\\7d\\35\\73\\8b\\45\\c0\\56\\97\\cd\\6d\\ce\\cf\\ad\\31\\b3\\c3\\54\\fa\\ef\\d5\\c0\\f4\\6a\\5f\\54\\e7\\49\\3e\\33\\0a\\30\\38\\fd\\d9\\05\\ff\\a5\\3f\\57\\46\\14\\b5\\91\\17\\ca\\6b\\98\\23\\7a\\65\\b3\\6c\\02\\b4\\cc\\79\\5d\\58\\d8\\b3\\d5\\94\\ae\\f4\\6d\\75\\65\\f7\\92\\bf\\7e\\47\\4c\\3c\\ee\\db\\ac\\f1\\32\\5d\\fb\\6f\\41\\1c\\34\\c8\\83\\4f\\c2\\58\\01\\be\\05\\3e\\66\\16\\a6\\04\\6d\\5d\\4f\\86\\09\\27\\82\\25\\12\\cd\\3a\\cd\\ce\\6b\\bc\\ca\\ac\\28\\9b\\ee\\6a\\25\\86\\9e\\45\\70\\c6\\d2\\bd\\3b\\7d\\42\\e5\\27\\af\\c7\\1d\\f4\\81\\c8\\b3\\76\\8a\\a8\\36\\a3\\ae\\2a\\e6\\18\\e1\\36\\22\\ad\\f6\\25\\72\\b0\\39\\8b\\01\\9a\\22\\7b\\84\\c3\\2d\\5f\\72\\a4\\98\\ac\\15\\70\\e7\\d4\\18\\e2\\7d\\d2\\30\\7c\\33\\08\\cd\\ca\\c4\\22\\85\\88\\75\\81\\c6\\4a\\74\\58\\8d\\e0\\e8\\ac\\c5\\ab\\75\\5a\\f4\\28\\12\\f0\\18\\45\\52\\f2\\97\\b2\\93\\41\\6f\\8d\\7f\\db\\70\\fb\\a3\\5d\\1f\\a7\\8d\\98\\20\\2b\\22\\9f\\3a\\01\\b5\\8b\\1b\\d2\\cb\\14\\03\\0e\\14\\14\\d2\\19\\5a\\1f\\ce\\5e\\cd\\81\\79\\15\\01\\ca\\de\\73\\74\\8c\\56\\20\\9f\\77\\2d\\25\\16\\f6\\61\\51\\1d\\a4\\8e\\9b\\98\\a5\\c6\\ec\\a8\\45\\57\\82\\59\\78\\0d\\90\\b4\\df\\51\\b0\\c3\\82\\94\\cc\\b3\\53\\09\\15\\6d\\96\\6c\\3a\\40\\47\\b7\\4a\\7a\\05\\2f\\a1\\1e\\8c\\9d\\a0\\20\\88\\fb\\52\\b7\\9f\\f3\\f3\\bb\\5f\\e7\\8a\\61\\a7\\21\\b1\\ac\\fa\\09\\aa\\a4\\6c\\bc\\24\\80\\ba\\2a\\e9\\65\\ff\\70\\ff\\cc\\fa\\65\\87\\76\\f3\\c5\\15\\ce\\cb\\e8\\42\\31\\00\\0c\\91\\57\\d9\\e0\\9d\\35\\54\\24\\ad\\a4\\d8\\f9\\08\\67\\63\\c8\\cf\\81\\dd\\90\\a2\\d7\\c4\\07\\4a\\e6\\10\\6f\\67\\e7\\27\\d4\\23\\59\\18\\f2\\a8\\9d\\5f\\d8\\94\\30\\aa\\54\\86\\4f\\87\\9d\\82\\b5\\26\\ca\\a6\\96\\bf\\cf\\55\\f9\\9d\\37\\01\\19\\48\\43\\c5\\94\\6c\\f3\\74\\97\\58\\4c\\3c\\9d\\08\\e8\\04\\c2\\58\\30\\76\\e1\\a0\\f8\\ea\\e9\\c5\\ae\\cf\\78\\9e\\a9\\0c\\ac\\b3\\44\\42\\e0\\bc\\5d\\1b\\9c\\49\\58\\4a\\1c\\19\\49\\c1\\3a\\ea\\f5\\eb\\3b\\81\\a9\\4b\\70\\0c\\cc\\9e\\1a\\d3\\2f\\b7\\52\\2f\\20\\3b\\eb\\64\\51\\1d\\a0\\2d\\b2\\3e\\be\\13\\85\\48\\92\\32\\2e\\db\\5c\\a1\\e7\\8c\\45\\91\\35\\01\\0a\\93\\c2\\eb\\09\\ce\\f3\\d2\\22\\24\\d0\\8c\\cc\\1d\\9d\\38\\c8\\4d\\e3\\82\\cc\\64\\15\\06\\2d\\e7\\01\\2f\\ab\\bb\\b5\\04\\4c\\92\\1c\\7a\\d6\\3f\\e8\\5f\\31\\15\\0c\\dc\\e4\\31\\b4\\c4\\25\\3e\\2a\\aa\\00\\9e\\c8\\e5\\21\\7a\\7f\\29\\f1\\c0\\af\\1d\\5e\\e8\\63\\39\\ad\\f8\\7e\\6c\\c8\\c5\\7f\\c2\\a8\\97\\27\\0a\\d9\\f4\\21\\6a\\ea\\03\\09\\fb\\f7\\96\\3b\\83\\79\\5f\\7c\\4b\\30\\9f\\56\\35\\de\\b4\\73\\d4\\95\\f0\\14\\c3\\74\\2f\\0d\\a3\\1d\\4e\\8d\\31\\24\\b3\\1a\\84\\85\\62\\5a\\7b\\3c\\14\\39\\17\\e6\\6d\\eb\\37\\c2\\00\\58\\5b\\0b\\e3\\3c\\8a\\62\\e1\\f8\\35\\4b\\56\\e2\\87\\60\\8b\\be\\a7\\38\\91\\77\\54\\a9\\5a\\24\\25\\90\\9f\\a5\\42\\77\\f3\\5c\\39\\df\\ff\\74\\07\\76\\a1\\cd\\1f\\62\\0b\\81\\81\\68\\af\\05\\c1\\c0\\7f\\26\\ee\\c0\\91\\a3\\6a\\7d\\29\\61\\45\\27\\e5\\57\\88\\dc\\0d\\97\\04\\1a\\33\\a9\\44\\8a\\da\\02\\10\\45\\3f\\8e\\55\\a6\\76\\8c\\4d\\e3\\f1\\89\\83\\c8\\d0\\f8\\9b\\50\\77\\9f\\47\\df\\4c\\9c\\66\\0d\\aa\\18\\b8\\5f\\4f\\c4\\01\\ce\\dc\\84\\ac\\46\\9e\\69\\e1\\76\\45\\6b\\61\\89\\e4\\5d\\94\\bb\\11\\83\\9f\\78\\d8\\0a\\d2\\f5\\7e\\5d\\43\\ea\\bc\\10\\f1\\3a\\c9\\e2\\64\\fb\\53\\65\\d0\\c7\\b4\\a7\\fb\\d4\\05\\53\\25\\d0\\cd\\29\\88\\00\\56\\25\\24\\7d\\5d\\b4\\f3\\41\\9f\\e9\\b5\\f7\\ae\\64\\2c\\e3\\c9\\6d\\d5\\84\\3a\\72\\12\\b8\\7a\\d9\\1b\\09\\e8\\38\\da\\26\\4f\\04\\ce\\03\\71\\6e\\8a\\44\\7b\\5c\\81\\59\\9c\\d2\\e4\\c3\\ba\\59\\a6\\e5\\28\\a7\\8f\\9a\\e4\\d5\\4e\\b9\\ca\\7f\\cb\\75\\b8\\2b\\43\\3e\\b3\\15\\46\\b1\\a5\\bc\\9d\\9e\\38\\15\\f1\\bd\\1b\\21\\aa\\f1\\82\\00\\95\\fc\\a7\\77\\47\\39\\a7\\33\\43\\92\\d7\\52\\40\\4b\\06\\81\\8a\\a0\\bd\\f1\\6b\\99\\84\\42\\5b\\e2\\3b\\c5\\5e\\12\\5c\\28\\4d\\b6\\0e\\4e\\c8\\5c\\e8\\01\\8a\\c5\\e7\\e4\\9d\\42\\ee\\5d\\9c\\c4\\eb\\eb\\68\\09\\27\\92\\95\\9a\\11\\54\\73\\c4\\12\\80\\fb\\7d\\fe\\c5\\08\\60\\7f\\36\\41\\e0\\10\\ba\\d6\\2b\\6c\\f1\\b4\\17\\fe\\26\\34\\e3\\4b\\f8\\a8\\e3\\91\\be\\4f\\2a\\fc\\da\\81\\b8\\e7\\fe\\d5\\26\\50\\47\\f3\\1a\\65\\32\\81\\e0\\05\\b8\\4f\\32\\31\\26\\00\\4a\\53\\97\\c2\\c3\\0e\\2e\\a1\\26\\54\\ab\\05\\8e\\56\\2f\\7d\\af\\22\\84\\68\\a5\\8b\\97\\f6\\a4\\fd\\a8\\cc\\75\\41\\96\\86\\fd\\27\\3d\\29\\86\\8d\\7f\\4c\\d4\\8e\\73\\41\\f4\\1e\\e2\\dd\\58\\27\\97\\ce\\9c\\94\\cf\\7a\\04\\2f\\dc\\ed" + )) + + (func (export "f64.kahan_sum") (param $$p i32) (param $$n i32) (result f64) + (local $$sum f64) + (local $$c f64) + (local $$t f64) + (block $$exit + (loop $$top + (local.set $$t + (f64.sub + (f64.sub + (local.tee $$sum + (f64.add + (local.get $$c) + (local.tee $$t + (f64.sub (f64.load (local.get $$p)) (local.get $$t)) + ) + ) + ) + (local.get $$c) + ) + (local.get $$t) + ) + ) + (local.set $$p (i32.add (local.get $$p) (i32.const 8))) + (local.set $$c (local.get $$sum)) + (br_if $$top (local.tee $$n (i32.add (local.get $$n) (i32.const -1)))) + ) + ) + (local.get $$sum) + ) + + (func (export "f64.plain_sum") (param $$p i32) (param $$n i32) (result f64) + (local $$sum f64) + (block $$exit + (loop $$top + (local.set $$sum (f64.add (local.get $$sum) (f64.load (local.get $$p)))) + (local.set $$p (i32.add (local.get $$p) (i32.const 8))) + (local.set $$n (i32.add (local.get $$n) (i32.const -1))) + (br_if $$top (local.get $$n)) + ) + ) + (local.get $$sum) + ) +)`); + +// ./test/core/float_exprs.wast:1581 +assert_return( + () => invoke($62, `f64.kahan_sum`, [0, 256]), + [ + value("f64", 4996401743142033000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1582 +assert_return( + () => invoke($62, `f64.plain_sum`, [0, 256]), + [ + value("f64", 4996401743297957600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1586 +let $63 = instantiate(`(module + (func (export "f32.no_fold_neg_sub") (param $$x f32) (param $$y f32) (result f32) + (f32.neg (f32.sub (local.get $$x) (local.get $$y)))) + + (func (export "f64.no_fold_neg_sub") (param $$x f64) (param $$y f64) (result f64) + (f64.neg (f64.sub (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:1594 +assert_return( + () => invoke($63, `f32.no_fold_neg_sub`, [value("f32", -0), value("f32", -0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1595 +assert_return( + () => invoke($63, `f32.no_fold_neg_sub`, [value("f32", 0), value("f32", -0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1596 +assert_return( + () => invoke($63, `f32.no_fold_neg_sub`, [value("f32", -0), value("f32", 0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:1597 +assert_return( + () => invoke($63, `f32.no_fold_neg_sub`, [value("f32", 0), value("f32", 0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1599 +assert_return( + () => invoke($63, `f64.no_fold_neg_sub`, [value("f64", -0), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1600 +assert_return( + () => invoke($63, `f64.no_fold_neg_sub`, [value("f64", 0), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1601 +assert_return( + () => invoke($63, `f64.no_fold_neg_sub`, [value("f64", -0), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1602 +assert_return( + () => invoke($63, `f64.no_fold_neg_sub`, [value("f64", 0), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1606 +let $64 = instantiate(`(module + (func (export "f32.no_fold_neg_add") (param $$x f32) (param $$y f32) (result f32) + (f32.neg (f32.add (local.get $$x) (local.get $$y)))) + + (func (export "f64.no_fold_neg_add") (param $$x f64) (param $$y f64) (result f64) + (f64.neg (f64.add (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:1614 +assert_return( + () => invoke($64, `f32.no_fold_neg_add`, [value("f32", -0), value("f32", -0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:1615 +assert_return( + () => invoke($64, `f32.no_fold_neg_add`, [value("f32", 0), value("f32", -0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1616 +assert_return( + () => invoke($64, `f32.no_fold_neg_add`, [value("f32", -0), value("f32", 0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1617 +assert_return( + () => invoke($64, `f32.no_fold_neg_add`, [value("f32", 0), value("f32", 0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1619 +assert_return( + () => invoke($64, `f64.no_fold_neg_add`, [value("f64", -0), value("f64", -0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1620 +assert_return( + () => invoke($64, `f64.no_fold_neg_add`, [value("f64", 0), value("f64", -0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1621 +assert_return( + () => invoke($64, `f64.no_fold_neg_add`, [value("f64", -0), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1622 +assert_return( + () => invoke($64, `f64.no_fold_neg_add`, [value("f64", 0), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1626 +let $65 = instantiate(`(module + (func (export "f32.no_fold_add_neg_neg") (param $$x f32) (param $$y f32) (result f32) + (f32.add (f32.neg (local.get $$x)) (f32.neg (local.get $$y)))) + + (func (export "f64.no_fold_add_neg_neg") (param $$x f64) (param $$y f64) (result f64) + (f64.add (f64.neg (local.get $$x)) (f64.neg (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:1634 +assert_return( + () => invoke($65, `f32.no_fold_add_neg_neg`, [value("f32", -0), value("f32", -0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:1635 +assert_return( + () => invoke($65, `f32.no_fold_add_neg_neg`, [value("f32", 0), value("f32", -0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:1636 +assert_return( + () => invoke($65, `f32.no_fold_add_neg_neg`, [value("f32", -0), value("f32", 0)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:1637 +assert_return( + () => invoke($65, `f32.no_fold_add_neg_neg`, [value("f32", 0), value("f32", 0)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1639 +assert_return( + () => invoke($65, `f64.no_fold_add_neg_neg`, [value("f64", -0), value("f64", -0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1640 +assert_return( + () => invoke($65, `f64.no_fold_add_neg_neg`, [value("f64", 0), value("f64", -0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1641 +assert_return( + () => invoke($65, `f64.no_fold_add_neg_neg`, [value("f64", -0), value("f64", 0)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1642 +assert_return( + () => invoke($65, `f64.no_fold_add_neg_neg`, [value("f64", 0), value("f64", 0)]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1646 +let $66 = instantiate(`(module + (func (export "f32.no_fold_add_neg") (param $$x f32) (result f32) + (f32.add (f32.neg (local.get $$x)) (local.get $$x))) + + (func (export "f64.no_fold_add_neg") (param $$x f64) (result f64) + (f64.add (f64.neg (local.get $$x)) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:1654 +assert_return(() => invoke($66, `f32.no_fold_add_neg`, [value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1655 +assert_return(() => invoke($66, `f32.no_fold_add_neg`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1656 +assert_return(() => invoke($66, `f32.no_fold_add_neg`, [value("f32", Infinity)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:1657 +assert_return(() => invoke($66, `f32.no_fold_add_neg`, [value("f32", -Infinity)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:1659 +assert_return(() => invoke($66, `f64.no_fold_add_neg`, [value("f64", 0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1660 +assert_return(() => invoke($66, `f64.no_fold_add_neg`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1661 +assert_return(() => invoke($66, `f64.no_fold_add_neg`, [value("f64", Infinity)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:1662 +assert_return(() => invoke($66, `f64.no_fold_add_neg`, [value("f64", -Infinity)]), [`canonical_nan`]); + +// ./test/core/float_exprs.wast:1666 +let $67 = instantiate(`(module + (func (export "f32.no_fold_6x_via_add") (param $$x f32) (result f32) + (f32.add (f32.add (f32.add (f32.add (f32.add + (local.get $$x) + (local.get $$x)) (local.get $$x)) (local.get $$x)) + (local.get $$x)) (local.get $$x))) + + (func (export "f64.no_fold_6x_via_add") (param $$x f64) (result f64) + (f64.add (f64.add (f64.add (f64.add (f64.add + (local.get $$x) + (local.get $$x)) (local.get $$x)) (local.get $$x)) + (local.get $$x)) (local.get $$x))) +)`); + +// ./test/core/float_exprs.wast:1680 +assert_return( + () => invoke($67, `f32.no_fold_6x_via_add`, [ + value("f32", -855513700000000000000000000000), + ]), + [value("f32", -5133083000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1681 +assert_return( + () => invoke($67, `f32.no_fold_6x_via_add`, [ + value("f32", -0.00000000000000000000001209506), + ]), + [value("f32", -0.00000000000000000000007257036)], +); + +// ./test/core/float_exprs.wast:1682 +assert_return( + () => invoke($67, `f32.no_fold_6x_via_add`, [ + value("f32", 0.000000000000000000000006642689), + ]), + [value("f32", 0.000000000000000000000039856134)], +); + +// ./test/core/float_exprs.wast:1683 +assert_return( + () => invoke($67, `f32.no_fold_6x_via_add`, [value("f32", -0.0000000006147346)]), + [value("f32", -0.0000000036884074)], +); + +// ./test/core/float_exprs.wast:1684 +assert_return( + () => invoke($67, `f32.no_fold_6x_via_add`, [ + value("f32", -1209858100000000000000000), + ]), + [value("f32", -7259148300000000000000000)], +); + +// ./test/core/float_exprs.wast:1686 +assert_return( + () => invoke($67, `f64.no_fold_6x_via_add`, [value("f64", -351704490602771400000)]), + [value("f64", -2110226943616628600000)], +); + +// ./test/core/float_exprs.wast:1687 +assert_return( + () => invoke($67, `f64.no_fold_6x_via_add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014824294109868734), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008894576465921239), + ], +); + +// ./test/core/float_exprs.wast:1688 +assert_return( + () => invoke($67, `f64.no_fold_6x_via_add`, [ + value("f64", -7484567838781003000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -44907407032686014000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1689 +assert_return( + () => invoke($67, `f64.no_fold_6x_via_add`, [ + value("f64", 17277868192936067000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 103667209157616410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1690 +assert_return( + () => invoke($67, `f64.no_fold_6x_via_add`, [ + value("f64", -43116397525195610000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -258698385151173640000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1695 +let $68 = instantiate(`(module + (func (export "f32.no_fold_div_div") (param $$x f32) (param $$y f32) (param $$z f32) (result f32) + (f32.div (f32.div (local.get $$x) (local.get $$y)) (local.get $$z))) + + (func (export "f64.no_fold_div_div") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.div (f64.div (local.get $$x) (local.get $$y)) (local.get $$z))) +)`); + +// ./test/core/float_exprs.wast:1703 +assert_return( + () => invoke($68, `f32.no_fold_div_div`, [ + value("f32", -593847530000000000000000), + value("f32", -0.000030265672), + value("f32", -1584.8682), + ]), + [value("f32", -12380309000000000000000000)], +); + +// ./test/core/float_exprs.wast:1704 +assert_return( + () => invoke($68, `f32.no_fold_div_div`, [ + value("f32", 0.0000000000000000000015438962), + value("f32", 2533429300000000000000000000000000), + value("f32", -0.00000000000000000000000000000000026844783), + ]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1705 +assert_return( + () => invoke($68, `f32.no_fold_div_div`, [ + value("f32", 13417423000000), + value("f32", 0.000000000000000000000000000000029339205), + value("f32", 76386374000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_exprs.wast:1706 +assert_return( + () => invoke($68, `f32.no_fold_div_div`, [ + value("f32", -0.00010776529), + value("f32", -34220943000000000000000000000000000000), + value("f32", -0.00000000000016562324), + ]), + [value("f32", -0.000000000000000000000000000019011327)], +); + +// ./test/core/float_exprs.wast:1707 +assert_return( + () => invoke($68, `f32.no_fold_div_div`, [ + value("f32", 130582500000000), + value("f32", 96245350000000000), + value("f32", -41461545000000000000000000000000000000), + ]), + [value("f32", -0.000000000000000000000000000000000000000032723)], +); + +// ./test/core/float_exprs.wast:1709 +assert_return( + () => invoke($68, `f64.no_fold_div_div`, [ + value("f64", 477762874671014340000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 102786720420404010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000718999894988884), + ]), + [ + value("f64", -64646730118787990000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1710 +assert_return( + () => invoke($68, `f64.no_fold_div_div`, [ + value("f64", -21790236783875714000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.0000000028324436844616576), + value("f64", 186110768259868700000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -41336068079920670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1711 +assert_return( + () => invoke($68, `f64.no_fold_div_div`, [ + value("f64", -7.287619347826683), + value("f64", -13467607316739855000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 2462719007013688000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000219725454), + ], +); + +// ./test/core/float_exprs.wast:1712 +assert_return( + () => invoke($68, `f64.no_fold_div_div`, [ + value("f64", -286552397862963300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010211980370639414), + value("f64", 28764586483324010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/float_exprs.wast:1713 +assert_return( + () => invoke($68, `f64.no_fold_div_div`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009525735602663874), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050233948816631796), + value("f64", -0.0000000000000000000000000000000000000000028304570228221077), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000006699534674970116), + ], +); + +// ./test/core/float_exprs.wast:1719 +let $69 = instantiate(`(module + (func (export "f32.no_fold_mul_divs") (param $$x f32) (param $$y f32) (param $$z f32) (param $$w f32) (result f32) + (f32.mul (f32.div (local.get $$x) (local.get $$y)) (f32.div (local.get $$z) (local.get $$w)))) + + (func (export "f64.no_fold_mul_divs") (param $$x f64) (param $$y f64) (param $$z f64) (param $$w f64) (result f64) + (f64.mul (f64.div (local.get $$x) (local.get $$y)) (f64.div (local.get $$z) (local.get $$w)))) +)`); + +// ./test/core/float_exprs.wast:1727 +assert_return( + () => invoke($69, `f32.no_fold_mul_divs`, [ + value("f32", -0.0000000000000000000000000000000027234733), + value("f32", 0.0000000000000000000000000003897843), + value("f32", 0.000000000000000000000000004847123), + value("f32", -25.357775), + ]), + [value("f32", 0.0000000000000000000000000000000013355855)], +); + +// ./test/core/float_exprs.wast:1728 +assert_return( + () => invoke($69, `f32.no_fold_mul_divs`, [ + value("f32", -5372844000000000000000000000000), + value("f32", 38340910), + value("f32", 0.000014973162), + value("f32", 0.19213825), + ]), + [value("f32", -10920475000000000000)], +); + +// ./test/core/float_exprs.wast:1729 +assert_return( + () => invoke($69, `f32.no_fold_mul_divs`, [ + value("f32", -16085042000), + value("f32", -1092920200000), + value("f32", -869606000), + value("f32", -1201.206), + ]), + [value("f32", 10654.639)], +); + +// ./test/core/float_exprs.wast:1730 +assert_return( + () => invoke($69, `f32.no_fold_mul_divs`, [ + value("f32", -1271223140000000000000000000000000), + value("f32", 0.00000000010768114), + value("f32", 0.000018576271), + value("f32", 492686200000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/float_exprs.wast:1731 +assert_return( + () => invoke($69, `f32.no_fold_mul_divs`, [ + value("f32", 0.00000000000000013783864), + value("f32", -0.000000000000000000065046285), + value("f32", 0.00000000000000000000000000068167684), + value("f32", 0.000000000022892627), + ]), + [value("f32", -0.000000000000063100295)], +); + +// ./test/core/float_exprs.wast:1733 +assert_return( + () => invoke($69, `f64.no_fold_mul_divs`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003466499805233369), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004045567512248635), + value("f64", -646234107060759200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 100455895333540740000000000000000000000000000000000000000), + ]), + [value("f64", -55.12215321310017)], +); + +// ./test/core/float_exprs.wast:1734 +assert_return( + () => invoke($69, `f64.no_fold_mul_divs`, [ + value("f64", -50548839076363250000000000000000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022223781649976275), + value("f64", -15029790371100852000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -699412375953812100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/float_exprs.wast:1735 +assert_return( + () => invoke($69, `f64.no_fold_mul_divs`, [ + value("f64", -836111653634494700000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -10029528876067567000000000000000000000000000000000000000000), + value("f64", -0.0000000000000000000000000000000000000000012867801766038772), + value("f64", -42230277746883753000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002540178100556387), + ], +); + +// ./test/core/float_exprs.wast:1736 +assert_return( + () => invoke($69, `f64.no_fold_mul_divs`, [ + value("f64", -1202003211641119300000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004667409771338769), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010888652376540085), + value("f64", 18334948666517216000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1737 +assert_return( + () => invoke($69, `f64.no_fold_mul_divs`, [ + value("f64", 0.000006331839568840419), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000005544474241905778), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027822472480359097), + value("f64", -14419321081893022000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022035374770746518), + ], +); + +// ./test/core/float_exprs.wast:1741 +let $70 = instantiate(`(module + (func (export "f32.no_fold_add_divs") (param $$x f32) (param $$y f32) (param $$z f32) (result f32) + (f32.add (f32.div (local.get $$x) (local.get $$z)) (f32.div (local.get $$y) (local.get $$z)))) + + (func (export "f64.no_fold_add_divs") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.add (f64.div (local.get $$x) (local.get $$z)) (f64.div (local.get $$y) (local.get $$z)))) +)`); + +// ./test/core/float_exprs.wast:1749 +assert_return( + () => invoke($70, `f32.no_fold_add_divs`, [ + value("f32", 377.3689), + value("f32", -0.040118184), + value("f32", -136292990000000000000000000000000000000), + ]), + [value("f32", -0.0000000000000000000000000000000000027685121)], +); + +// ./test/core/float_exprs.wast:1750 +assert_return( + () => invoke($70, `f32.no_fold_add_divs`, [ + value("f32", -0.00000000000000000018234023), + value("f32", -0.0000000000000033970288), + value("f32", -170996700000000), + ]), + [value("f32", 0.000000000000000000000000000019867115)], +); + +// ./test/core/float_exprs.wast:1751 +assert_return( + () => invoke($70, `f32.no_fold_add_divs`, [ + value("f32", -0.000000000000019672638), + value("f32", 0.00000000000000000006414099), + value("f32", -541989070000000), + ]), + [value("f32", 0.000000000000000000000000000036296997)], +); + +// ./test/core/float_exprs.wast:1752 +assert_return( + () => invoke($70, `f32.no_fold_add_divs`, [ + value("f32", -0.0000000000000000000000000000004038506), + value("f32", 0.000000000000000000000000000003848228), + value("f32", -345237200000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:1753 +assert_return( + () => invoke($70, `f32.no_fold_add_divs`, [ + value("f32", 0.0010934415), + value("f32", 0.20703124), + value("f32", 0.00000000000000000000000000000000000013509784), + ]), + [value("f32", 1540547700000000000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1755 +assert_return( + () => invoke($70, `f64.no_fold_add_divs`, [ + value("f64", -4917019432143760000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 68132156322019020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 26125410100237784000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024196801752520584), + ], +); + +// ./test/core/float_exprs.wast:1756 +assert_return( + () => invoke($70, `f64.no_fold_add_divs`, [ + value("f64", -10206467953224550), + value("f64", 63.422616671746226), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016024747869814892), + ]), + [ + value("f64", 6369190976445851000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1757 +assert_return( + () => invoke($70, `f64.no_fold_add_divs`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015270569633109837), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000025755503329232514), + value("f64", 58826939164214920000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1758 +assert_return( + () => invoke($70, `f64.no_fold_add_divs`, [ + value("f64", 26667964874394640000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -2131569252493657800000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.000000000000000000000000000000000000012377004518680012), + ]), + [ + value("f64", -172217969324625340000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1759 +assert_return( + () => invoke($70, `f64.no_fold_add_divs`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012952888377288216), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005808769259900048), + value("f64", 0.0000000000000000000016745741699443756), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007735034106987796), + ], +); + +// ./test/core/float_exprs.wast:1763 +let $71 = instantiate(`(module + (func (export "f32.no_fold_sqrt_square") (param $$x f32) (result f32) + (f32.sqrt (f32.mul (local.get $$x) (local.get $$x)))) + + (func (export "f64.no_fold_sqrt_square") (param $$x f64) (result f64) + (f64.sqrt (f64.mul (local.get $$x) (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:1771 +assert_return( + () => invoke($71, `f32.no_fold_sqrt_square`, [ + value("f32", -0.00000000000000000001846), + ]), + [value("f32", 0.00000000000000000001846001)], +); + +// ./test/core/float_exprs.wast:1772 +assert_return( + () => invoke($71, `f32.no_fold_sqrt_square`, [ + value("f32", -0.00000000000000000000017907473), + ]), + [value("f32", 0.00000000000000000000017952678)], +); + +// ./test/core/float_exprs.wast:1773 +assert_return( + () => invoke($71, `f32.no_fold_sqrt_square`, [ + value("f32", -0.00000000000000000000079120785), + ]), + [value("f32", 0.000000000000000000000791442)], +); + +// ./test/core/float_exprs.wast:1774 +assert_return( + () => invoke($71, `f32.no_fold_sqrt_square`, [ + value("f32", 0.000000000000000000000000018012938), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:1775 +assert_return( + () => invoke($71, `f32.no_fold_sqrt_square`, [ + value("f32", 610501970000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_exprs.wast:1777 +assert_return( + () => invoke($71, `f64.no_fold_sqrt_square`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006209297167747496), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006209299542179727), + ], +); + +// ./test/core/float_exprs.wast:1778 +assert_return( + () => invoke($71, `f64.no_fold_sqrt_square`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024211175303738945), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024211175303738937), + ], +); + +// ./test/core/float_exprs.wast:1779 +assert_return( + () => invoke($71, `f64.no_fold_sqrt_square`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016460687611875645), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016460687611532367), + ], +); + +// ./test/core/float_exprs.wast:1780 +assert_return( + () => invoke($71, `f64.no_fold_sqrt_square`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003797811613378828), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:1781 +assert_return( + () => invoke($71, `f64.no_fold_sqrt_square`, [ + value("f64", 815808428460559200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/float_exprs.wast:1785 +let $72 = instantiate(`(module + (func (export "f32.no_fold_mul_sqrts") (param $$x f32) (param $$y f32) (result f32) + (f32.mul (f32.sqrt (local.get $$x)) (f32.sqrt (local.get $$y)))) + + (func (export "f64.no_fold_mul_sqrts") (param $$x f64) (param $$y f64) (result f64) + (f64.mul (f64.sqrt (local.get $$x)) (f64.sqrt (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:1793 +assert_return( + () => invoke($72, `f32.no_fold_mul_sqrts`, [ + value("f32", 0.000000000000000000000000000000000000043885047), + value("f32", -0.00000000000000000000000011867334), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:1794 +assert_return( + () => invoke($72, `f32.no_fold_mul_sqrts`, [ + value("f32", 0.00000000000000000000000000025365908), + value("f32", 0.00000000041320675), + ]), + [value("f32", 0.00000000000000000032374932)], +); + +// ./test/core/float_exprs.wast:1795 +assert_return( + () => invoke($72, `f32.no_fold_mul_sqrts`, [ + value("f32", 0.0000000000000000000000000042144832), + value("f32", 97.249115), + ]), + [value("f32", 0.00000000000064019905)], +); + +// ./test/core/float_exprs.wast:1796 +assert_return( + () => invoke($72, `f32.no_fold_mul_sqrts`, [ + value("f32", 3724076300000000000000000000000), + value("f32", 0.002944908), + ]), + [value("f32", 104723750000000)], +); + +// ./test/core/float_exprs.wast:1797 +assert_return( + () => invoke($72, `f32.no_fold_mul_sqrts`, [ + value("f32", 0.00000000000000001866056), + value("f32", 0.002111261), + ]), + [value("f32", 0.00000000019848755)], +); + +// ./test/core/float_exprs.wast:1799 +assert_return( + () => invoke($72, `f64.no_fold_mul_sqrts`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012742064369772862), + value("f64", -0.006829962938197246), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:1800 +assert_return( + () => invoke($72, `f64.no_fold_mul_sqrts`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000037082569269527534), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000047183002857015043), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041829020688865954), + ], +); + +// ./test/core/float_exprs.wast:1801 +assert_return( + () => invoke($72, `f64.no_fold_mul_sqrts`, [ + value("f64", 0.000000000000000000000000002329359505918655), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020743399642806364), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021981545701574452), + ], +); + +// ./test/core/float_exprs.wast:1802 +assert_return( + () => invoke($72, `f64.no_fold_mul_sqrts`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010541899336289437), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000598123819872803), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002511047809129887), + ], +); + +// ./test/core/float_exprs.wast:1803 +assert_return( + () => invoke($72, `f64.no_fold_mul_sqrts`, [ + value("f64", 25589482.717358638), + value("f64", 39138912071199020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 1000771959050695500000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1807 +let $73 = instantiate(`(module + (func (export "f32.no_fold_div_sqrts") (param $$x f32) (param $$y f32) (result f32) + (f32.div (f32.sqrt (local.get $$x)) (f32.sqrt (local.get $$y)))) + + (func (export "f64.no_fold_div_sqrts") (param $$x f64) (param $$y f64) (result f64) + (f64.div (f64.sqrt (local.get $$x)) (f64.sqrt (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:1815 +assert_return( + () => invoke($73, `f32.no_fold_div_sqrts`, [ + value("f32", -58545012), + value("f32", -0.000000000000000006443773), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:1816 +assert_return( + () => invoke($73, `f32.no_fold_div_sqrts`, [ + value("f32", 7407384000), + value("f32", 209778930), + ]), + [value("f32", 5.9422584)], +); + +// ./test/core/float_exprs.wast:1817 +assert_return( + () => invoke($73, `f32.no_fold_div_sqrts`, [ + value("f32", 0.0000000000000000000000000000000000013764126), + value("f32", 54692.9), + ]), + [value("f32", 0.0000000000000000000050165927)], +); + +// ./test/core/float_exprs.wast:1818 +assert_return( + () => invoke($73, `f32.no_fold_div_sqrts`, [ + value("f32", 979288960000000000), + value("f32", 0.0000000012643552), + ]), + [value("f32", 27830490000000)], +); + +// ./test/core/float_exprs.wast:1819 +assert_return( + () => invoke($73, `f32.no_fold_div_sqrts`, [ + value("f32", 0.00000000000000000000000000000000029141283), + value("f32", 0.00000000000000000000000000000017928174), + ]), + [value("f32", 0.04031682)], +); + +// ./test/core/float_exprs.wast:1821 +assert_return( + () => invoke($73, `f64.no_fold_div_sqrts`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012206137319883022), + value("f64", -0.000000000000000000000000000000000000000000000000000000008209583449676083), + ]), + [`canonical_nan`], +); + +// ./test/core/float_exprs.wast:1822 +assert_return( + () => invoke($73, `f64.no_fold_div_sqrts`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033818852462305824), + value("f64", 7655783976315048000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021017671425665687), + ], +); + +// ./test/core/float_exprs.wast:1823 +assert_return( + () => invoke($73, `f64.no_fold_div_sqrts`, [ + value("f64", 45963335670647510000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.0000000000000000000000000000000023932467846883046), + ]), + [ + value("f64", 138583660172663150000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1824 +assert_return( + () => invoke($73, `f64.no_fold_div_sqrts`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000025327340978668086), + value("f64", 4475305129961258000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000023789399141325018), + ], +); + +// ./test/core/float_exprs.wast:1825 +assert_return( + () => invoke($73, `f64.no_fold_div_sqrts`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005103070160197939), + value("f64", 460157669098082500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010530826009924495), + ], +); + +// ./test/core/float_exprs.wast:1829 +let $74 = instantiate(`(module + (func (export "f32.no_fold_mul_sqrt_div") (param $$x f32) (param $$y f32) (result f32) + (f32.div (f32.mul (local.get $$x) (f32.sqrt (local.get $$y))) (local.get $$y))) + + (func (export "f64.no_fold_mul_sqrt_div") (param $$x f64) (param $$y f64) (result f64) + (f64.div (f64.mul (local.get $$x) (f64.sqrt (local.get $$y))) (local.get $$y))) +)`); + +// ./test/core/float_exprs.wast:1837 +assert_return( + () => invoke($74, `f32.no_fold_mul_sqrt_div`, [ + value("f32", -4728556800000000000000000), + value("f32", 8677282000000000000000000000), + ]), + [value("f32", -Infinity)], +); + +// ./test/core/float_exprs.wast:1838 +assert_return( + () => invoke($74, `f32.no_fold_mul_sqrt_div`, [ + value("f32", -0.0000000000000000000000000000000000011776882), + value("f32", 0.000000000000000000000000000009805153), + ]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:1839 +assert_return( + () => invoke($74, `f32.no_fold_mul_sqrt_div`, [ + value("f32", 816717060), + value("f32", 0.000000000000000000000000000000000000003323171), + ]), + [value("f32", 14167568000000000000000000000)], +); + +// ./test/core/float_exprs.wast:1840 +assert_return( + () => invoke($74, `f32.no_fold_mul_sqrt_div`, [ + value("f32", -11932267000000), + value("f32", 8637067000000000000000000000000000), + ]), + [value("f32", -0.00012839255)], +); + +// ./test/core/float_exprs.wast:1841 +assert_return( + () => invoke($74, `f32.no_fold_mul_sqrt_div`, [ + value("f32", -401.0235), + value("f32", 134.33022), + ]), + [value("f32", -34.600548)], +); + +// ./test/core/float_exprs.wast:1843 +assert_return( + () => invoke($74, `f64.no_fold_mul_sqrt_div`, [ + value("f64", 1468134622910490500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 2466074582285183000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/float_exprs.wast:1844 +assert_return( + () => invoke($74, `f64.no_fold_mul_sqrt_div`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017254022016758028), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000055835540747130025), + ]), + [value("f64", -0)], +); + +// ./test/core/float_exprs.wast:1845 +assert_return( + () => invoke($74, `f64.no_fold_mul_sqrt_div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016812810256029166), + value("f64", 7362783602442129000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006196112486187196), + ], +); + +// ./test/core/float_exprs.wast:1846 +assert_return( + () => invoke($74, `f64.no_fold_mul_sqrt_div`, [ + value("f64", -10605483729939836000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000622591783694072), + ]), + [ + value("f64", -42503900822233765000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_exprs.wast:1847 +assert_return( + () => invoke($74, `f64.no_fold_mul_sqrt_div`, [ + value("f64", 26336349695373093000000000000000), + value("f64", 30791413285853300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004746142447510695), + ], +); + +// ./test/core/float_exprs.wast:1852 +let $75 = instantiate(`(module + (func (export "f32.no_flush_intermediate_subnormal") (param $$x f32) (param $$y f32) (param $$z f32) (result f32) + (f32.mul (f32.mul (local.get $$x) (local.get $$y)) (local.get $$z))) + + (func (export "f64.no_flush_intermediate_subnormal") (param $$x f64) (param $$y f64) (param $$z f64) (result f64) + (f64.mul (f64.mul (local.get $$x) (local.get $$y)) (local.get $$z))) +)`); + +// ./test/core/float_exprs.wast:1860 +assert_return( + () => invoke($75, `f32.no_flush_intermediate_subnormal`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.00000011920929), + value("f32", 8388608), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/float_exprs.wast:1861 +assert_return( + () => invoke($75, `f64.no_flush_intermediate_subnormal`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.0000000000000002220446049250313), + value("f64", 4503599627370496), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/float_exprs.wast:1866 +let $76 = instantiate(`(module + (func (export "f32.recoding_eq") (param $$x f32) (param $$y f32) (result i32) + (f32.eq (f32.mul (local.get $$x) (local.get $$y)) (local.get $$x))) + + (func (export "f32.recoding_le") (param $$x f32) (param $$y f32) (result i32) + (f32.le (f32.mul (local.get $$x) (local.get $$y)) (local.get $$x))) + + (func (export "f32.recoding_lt") (param $$x f32) (param $$y f32) (result i32) + (f32.lt (f32.mul (local.get $$x) (local.get $$y)) (local.get $$x))) + + (func (export "f64.recoding_eq") (param $$x f64) (param $$y f64) (result i32) + (f64.eq (f64.mul (local.get $$x) (local.get $$y)) (local.get $$x))) + + (func (export "f64.recoding_le") (param $$x f64) (param $$y f64) (result i32) + (f64.le (f64.mul (local.get $$x) (local.get $$y)) (local.get $$x))) + + (func (export "f64.recoding_lt") (param $$x f64) (param $$y f64) (result i32) + (f64.lt (f64.mul (local.get $$x) (local.get $$y)) (local.get $$x))) + + (func (export "recoding_demote") (param $$x f64) (param $$y f32) (result f32) + (f32.mul (f32.demote_f64 (local.get $$x)) (local.get $$y))) +)`); + +// ./test/core/float_exprs.wast:1889 +assert_return( + () => invoke($76, `f32.recoding_eq`, [value("f32", -Infinity), value("f32", 3)]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1890 +assert_return( + () => invoke($76, `f32.recoding_le`, [value("f32", -Infinity), value("f32", 3)]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1891 +assert_return( + () => invoke($76, `f32.recoding_lt`, [value("f32", -Infinity), value("f32", 3)]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:1893 +assert_return( + () => invoke($76, `f32.recoding_eq`, [value("f32", 0), value("f32", 1)]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1894 +assert_return( + () => invoke($76, `f32.recoding_le`, [value("f32", 0), value("f32", 1)]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1895 +assert_return( + () => invoke($76, `f32.recoding_lt`, [value("f32", 0), value("f32", 1)]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:1897 +assert_return( + () => invoke($76, `f64.recoding_eq`, [value("f64", -Infinity), value("f64", 3)]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1898 +assert_return( + () => invoke($76, `f64.recoding_le`, [value("f64", -Infinity), value("f64", 3)]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1899 +assert_return( + () => invoke($76, `f64.recoding_lt`, [value("f64", -Infinity), value("f64", 3)]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:1901 +assert_return( + () => invoke($76, `f64.recoding_eq`, [value("f64", 0), value("f64", 1)]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1902 +assert_return( + () => invoke($76, `f64.recoding_le`, [value("f64", 0), value("f64", 1)]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1903 +assert_return( + () => invoke($76, `f64.recoding_lt`, [value("f64", 0), value("f64", 1)]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:1905 +assert_return( + () => invoke($76, `recoding_demote`, [ + value("f64", 0.00000000000000000000000000000000000000023860049081905093), + value("f32", 1221), + ]), + [value("f32", 0.0000000000000000000000000000000000002913312)], +); + +// ./test/core/float_exprs.wast:1910 +let $77 = instantiate(`(module + (func (export "f32.no_extended_precision_div") (param $$x f32) (param $$y f32) (param $$z f32) (result i32) + (f32.eq (f32.div (local.get $$x) (local.get $$y)) (local.get $$z))) + + (func (export "f64.no_extended_precision_div") (param $$x f64) (param $$y f64) (param $$z f64) (result i32) + (f64.eq (f64.div (local.get $$x) (local.get $$y)) (local.get $$z))) +)`); + +// ./test/core/float_exprs.wast:1918 +assert_return( + () => invoke($77, `f32.no_extended_precision_div`, [ + value("f32", 3), + value("f32", 7), + value("f32", 0.42857143), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1919 +assert_return( + () => invoke($77, `f64.no_extended_precision_div`, [ + value("f64", 3), + value("f64", 7), + value("f64", 0.42857142857142855), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:1926 +let $78 = instantiate(`(module + (func (export "f32.no_distribute_exact") (param $$x f32) (result f32) + (f32.add (f32.mul (f32.const -8.0) (local.get $$x)) (f32.mul (f32.const 8.0) (local.get $$x)))) + + (func (export "f64.no_distribute_exact") (param $$x f64) (result f64) + (f64.add (f64.mul (f64.const -8.0) (local.get $$x)) (f64.mul (f64.const 8.0) (local.get $$x)))) +)`); + +// ./test/core/float_exprs.wast:1934 +assert_return(() => invoke($78, `f32.no_distribute_exact`, [value("f32", -0)]), [value("f32", 0)]); + +// ./test/core/float_exprs.wast:1935 +assert_return(() => invoke($78, `f64.no_distribute_exact`, [value("f64", -0)]), [value("f64", 0)]); + +// ./test/core/float_exprs.wast:1940 +let $79 = instantiate(`(module + (func (export "f32.sqrt") (param f32) (result f32) + (f32.sqrt (local.get 0))) + + (func (export "f32.xkcd_sqrt_2") (param f32) (param f32) (param f32) (param f32) (result f32) + (f32.add (f32.div (local.get 0) (local.get 1)) (f32.div (local.get 2) (f32.sub (local.get 3) (local.get 2))))) + + (func (export "f32.xkcd_sqrt_3") (param f32) (param f32) (param f32) (result f32) + (f32.div (f32.mul (local.get 0) (local.get 1)) (local.get 2))) + + (func (export "f32.xkcd_sqrt_5") (param f32) (param f32) (param f32) (result f32) + (f32.add (f32.div (local.get 0) (local.get 1)) (f32.div (local.get 2) (local.get 0)))) + + (func (export "f32.xkcd_better_sqrt_5") (param f32) (param f32) (param f32) (param f32) (result f32) + (f32.div (f32.add (local.get 0) (f32.mul (local.get 1) (local.get 2))) (f32.sub (local.get 3) (f32.mul (local.get 1) (local.get 2))))) + + (func (export "f64.sqrt") (param f64) (result f64) + (f64.sqrt (local.get 0))) + + (func (export "f64.xkcd_sqrt_2") (param f64) (param f64) (param f64) (param f64) (result f64) + (f64.add (f64.div (local.get 0) (local.get 1)) (f64.div (local.get 2) (f64.sub (local.get 3) (local.get 2))))) + + (func (export "f64.xkcd_sqrt_3") (param f64) (param f64) (param f64) (result f64) + (f64.div (f64.mul (local.get 0) (local.get 1)) (local.get 2))) + + (func (export "f64.xkcd_sqrt_5") (param f64) (param f64) (param f64) (result f64) + (f64.add (f64.div (local.get 0) (local.get 1)) (f64.div (local.get 2) (local.get 0)))) + + (func (export "f64.xkcd_better_sqrt_5") (param f64) (param f64) (param f64) (param f64) (result f64) + (f64.div (f64.add (local.get 0) (f64.mul (local.get 1) (local.get 2))) (f64.sub (local.get 3) (f64.mul (local.get 1) (local.get 2))))) +)`); + +// ./test/core/float_exprs.wast:1972 +assert_return(() => invoke($79, `f32.sqrt`, [value("f32", 2)]), [value("f32", 1.4142135)]); + +// ./test/core/float_exprs.wast:1973 +assert_return( + () => invoke($79, `f32.xkcd_sqrt_2`, [ + value("f32", 3), + value("f32", 5), + value("f32", 3.1415927), + value("f32", 7), + ]), + [value("f32", 1.4142201)], +); + +// ./test/core/float_exprs.wast:1974 +assert_return(() => invoke($79, `f32.sqrt`, [value("f32", 3)]), [value("f32", 1.7320508)]); + +// ./test/core/float_exprs.wast:1975 +assert_return( + () => invoke($79, `f32.xkcd_sqrt_3`, [ + value("f32", 2), + value("f32", 2.7182817), + value("f32", 3.1415927), + ]), + [value("f32", 1.7305119)], +); + +// ./test/core/float_exprs.wast:1976 +assert_return(() => invoke($79, `f32.sqrt`, [value("f32", 5)]), [value("f32", 2.236068)]); + +// ./test/core/float_exprs.wast:1977 +assert_return( + () => invoke($79, `f32.xkcd_sqrt_5`, [ + value("f32", 2), + value("f32", 2.7182817), + value("f32", 3), + ]), + [value("f32", 2.2357588)], +); + +// ./test/core/float_exprs.wast:1978 +assert_return( + () => invoke($79, `f32.xkcd_better_sqrt_5`, [ + value("f32", 13), + value("f32", 4), + value("f32", 3.1415927), + value("f32", 24), + ]), + [value("f32", 2.236068)], +); + +// ./test/core/float_exprs.wast:1980 +assert_return(() => invoke($79, `f64.sqrt`, [value("f64", 2)]), [value("f64", 1.4142135623730951)]); + +// ./test/core/float_exprs.wast:1981 +assert_return( + () => invoke($79, `f64.xkcd_sqrt_2`, [ + value("f64", 3), + value("f64", 5), + value("f64", 3.141592653589793), + value("f64", 7), + ]), + [value("f64", 1.4142200580539208)], +); + +// ./test/core/float_exprs.wast:1982 +assert_return(() => invoke($79, `f64.sqrt`, [value("f64", 3)]), [value("f64", 1.7320508075688772)]); + +// ./test/core/float_exprs.wast:1983 +assert_return( + () => invoke($79, `f64.xkcd_sqrt_3`, [ + value("f64", 2), + value("f64", 2.718281828459045), + value("f64", 3.141592653589793), + ]), + [value("f64", 1.7305119588645301)], +); + +// ./test/core/float_exprs.wast:1984 +assert_return(() => invoke($79, `f64.sqrt`, [value("f64", 5)]), [value("f64", 2.23606797749979)]); + +// ./test/core/float_exprs.wast:1985 +assert_return( + () => invoke($79, `f64.xkcd_sqrt_5`, [ + value("f64", 2), + value("f64", 2.718281828459045), + value("f64", 3), + ]), + [value("f64", 2.2357588823428847)], +); + +// ./test/core/float_exprs.wast:1986 +assert_return( + () => invoke($79, `f64.xkcd_better_sqrt_5`, [ + value("f64", 13), + value("f64", 4), + value("f64", 3.141592653589793), + value("f64", 24), + ]), + [value("f64", 2.2360678094452893)], +); + +// ./test/core/float_exprs.wast:1991 +let $80 = instantiate(`(module + (func (export "f32.compute_radix") (param $$0 f32) (param $$1 f32) (result f32) + (loop $$label$$0 + (br_if $$label$$0 + (f32.eq + (f32.add + (f32.sub + (f32.add + (local.tee $$0 (f32.add (local.get $$0) (local.get $$0))) + (f32.const 1) + ) + (local.get $$0) + ) + (f32.const -1) + ) + (f32.const 0) + ) + ) + ) + (loop $$label$$2 + (br_if $$label$$2 + (f32.ne + (f32.sub + (f32.sub + (f32.add + (local.get $$0) + (local.tee $$1 (f32.add (local.get $$1) (f32.const 1))) + ) + (local.get $$0) + ) + (local.get $$1) + ) + (f32.const 0) + ) + ) + ) + (local.get $$1) + ) + + (func (export "f64.compute_radix") (param $$0 f64) (param $$1 f64) (result f64) + (loop $$label$$0 + (br_if $$label$$0 + (f64.eq + (f64.add + (f64.sub + (f64.add + (local.tee $$0 (f64.add (local.get $$0) (local.get $$0))) + (f64.const 1) + ) + (local.get $$0) + ) + (f64.const -1) + ) + (f64.const 0) + ) + ) + ) + (loop $$label$$2 + (br_if $$label$$2 + (f64.ne + (f64.sub + (f64.sub + (f64.add + (local.get $$0) + (local.tee $$1 (f64.add (local.get $$1) (f64.const 1))) + ) + (local.get $$0) + ) + (local.get $$1) + ) + (f64.const 0) + ) + ) + ) + (local.get $$1) + ) +)`); + +// ./test/core/float_exprs.wast:2069 +assert_return( + () => invoke($80, `f32.compute_radix`, [value("f32", 1), value("f32", 1)]), + [value("f32", 2)], +); + +// ./test/core/float_exprs.wast:2070 +assert_return( + () => invoke($80, `f64.compute_radix`, [value("f64", 1), value("f64", 1)]), + [value("f64", 2)], +); + +// ./test/core/float_exprs.wast:2075 +let $81 = instantiate(`(module + (func (export "f32.no_fold_sub1_mul_add") (param $$x f32) (param $$y f32) (result f32) + (f32.add (f32.mul (f32.sub (local.get $$x) (f32.const 1.0)) (local.get $$y)) (local.get $$y))) + + (func (export "f64.no_fold_sub1_mul_add") (param $$x f64) (param $$y f64) (result f64) + (f64.add (f64.mul (f64.sub (local.get $$x) (f64.const 1.0)) (local.get $$y)) (local.get $$y))) +)`); + +// ./test/core/float_exprs.wast:2083 +assert_return( + () => invoke($81, `f32.no_fold_sub1_mul_add`, [ + value("f32", 0.00000000023283064), + value("f32", 1), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:2084 +assert_return( + () => invoke($81, `f64.no_fold_sub1_mul_add`, [ + value("f64", 0.00000000000000000005421010862427522), + value("f64", 1), + ]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:2089 +let $82 = instantiate(`(module + (func (export "f32.no_fold_add_le_monotonicity") (param $$x f32) (param $$y f32) (param $$z f32) (result i32) + (f32.le (f32.add (local.get $$x) (local.get $$z)) (f32.add (local.get $$y) (local.get $$z)))) + + (func (export "f32.no_fold_add_ge_monotonicity") (param $$x f32) (param $$y f32) (param $$z f32) (result i32) + (f32.ge (f32.add (local.get $$x) (local.get $$z)) (f32.add (local.get $$y) (local.get $$z)))) + + (func (export "f64.no_fold_add_le_monotonicity") (param $$x f64) (param $$y f64) (param $$z f64) (result i32) + (f64.le (f64.add (local.get $$x) (local.get $$z)) (f64.add (local.get $$y) (local.get $$z)))) + + (func (export "f64.no_fold_add_ge_monotonicity") (param $$x f64) (param $$y f64) (param $$z f64) (result i32) + (f64.ge (f64.add (local.get $$x) (local.get $$z)) (f64.add (local.get $$y) (local.get $$z)))) +)`); + +// ./test/core/float_exprs.wast:2103 +assert_return( + () => invoke($82, `f32.no_fold_add_le_monotonicity`, [ + value("f32", 0), + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2104 +assert_return( + () => invoke($82, `f32.no_fold_add_le_monotonicity`, [ + value("f32", Infinity), + value("f32", -Infinity), + value("f32", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2105 +assert_return( + () => invoke($82, `f64.no_fold_add_le_monotonicity`, [ + value("f64", 0), + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2106 +assert_return( + () => invoke($82, `f64.no_fold_add_le_monotonicity`, [ + value("f64", Infinity), + value("f64", -Infinity), + value("f64", Infinity), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2110 +let $83 = instantiate(`(module + (func (export "f32.not_lt") (param $$x f32) (param $$y f32) (result i32) + (i32.eqz (f32.lt (local.get $$x) (local.get $$y)))) + + (func (export "f32.not_le") (param $$x f32) (param $$y f32) (result i32) + (i32.eqz (f32.le (local.get $$x) (local.get $$y)))) + + (func (export "f32.not_gt") (param $$x f32) (param $$y f32) (result i32) + (i32.eqz (f32.gt (local.get $$x) (local.get $$y)))) + + (func (export "f32.not_ge") (param $$x f32) (param $$y f32) (result i32) + (i32.eqz (f32.ge (local.get $$x) (local.get $$y)))) + + (func (export "f64.not_lt") (param $$x f64) (param $$y f64) (result i32) + (i32.eqz (f64.lt (local.get $$x) (local.get $$y)))) + + (func (export "f64.not_le") (param $$x f64) (param $$y f64) (result i32) + (i32.eqz (f64.le (local.get $$x) (local.get $$y)))) + + (func (export "f64.not_gt") (param $$x f64) (param $$y f64) (result i32) + (i32.eqz (f64.gt (local.get $$x) (local.get $$y)))) + + (func (export "f64.not_ge") (param $$x f64) (param $$y f64) (result i32) + (i32.eqz (f64.ge (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:2136 +assert_return( + () => invoke($83, `f32.not_lt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:2137 +assert_return( + () => invoke($83, `f32.not_le`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:2138 +assert_return( + () => invoke($83, `f32.not_gt`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:2139 +assert_return( + () => invoke($83, `f32.not_ge`, [ + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:2140 +assert_return( + () => invoke($83, `f64.not_lt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:2141 +assert_return( + () => invoke($83, `f64.not_le`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:2142 +assert_return( + () => invoke($83, `f64.not_gt`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:2143 +assert_return( + () => invoke($83, `f64.not_ge`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ]), + [value("i32", 1)], +); + +// ./test/core/float_exprs.wast:2149 +let $84 = instantiate(`(module + (func (export "f32.epsilon") (result f32) + (f32.sub (f32.const 1.0) (f32.mul (f32.const 3.0) (f32.sub (f32.div (f32.const 4.0) (f32.const 3.0)) (f32.const 1.0))))) + + (func (export "f64.epsilon") (result f64) + (f64.sub (f64.const 1.0) (f64.mul (f64.const 3.0) (f64.sub (f64.div (f64.const 4.0) (f64.const 3.0)) (f64.const 1.0))))) +)`); + +// ./test/core/float_exprs.wast:2157 +assert_return(() => invoke($84, `f32.epsilon`, []), [value("f32", -0.00000011920929)]); + +// ./test/core/float_exprs.wast:2158 +assert_return(() => invoke($84, `f64.epsilon`, []), [value("f64", 0.0000000000000002220446049250313)]); + +// ./test/core/float_exprs.wast:2164 +let $85 = instantiate(`(module + (func (export "f32.epsilon") (result f32) + (local $$x f32) + (local $$result f32) + (local.set $$x (f32.const 1)) + (loop $$loop + (br_if $$loop + (f32.gt + (f32.add + (local.tee $$x + (f32.mul + (local.tee $$result (local.get $$x)) + (f32.const 0.5) + ) + ) + (f32.const 1) + ) + (f32.const 1) + ) + ) + ) + (local.get $$result) + ) + + (func (export "f64.epsilon") (result f64) + (local $$x f64) + (local $$result f64) + (local.set $$x (f64.const 1)) + (loop $$loop + (br_if $$loop + (f64.gt + (f64.add + (local.tee $$x + (f64.mul + (local.tee $$result (local.get $$x)) + (f64.const 0.5) + ) + ) + (f64.const 1) + ) + (f64.const 1) + ) + ) + ) + (local.get $$result) + ) +)`); + +// ./test/core/float_exprs.wast:2212 +assert_return(() => invoke($85, `f32.epsilon`, []), [value("f32", 0.00000011920929)]); + +// ./test/core/float_exprs.wast:2213 +assert_return(() => invoke($85, `f64.epsilon`, []), [value("f64", 0.0000000000000002220446049250313)]); + +// ./test/core/float_exprs.wast:2218 +let $86 = instantiate(`(module + (func (export "f32.no_trichotomy_lt") (param $$x f32) (param $$y f32) (result i32) + (i32.or (f32.lt (local.get $$x) (local.get $$y)) (f32.ge (local.get $$x) (local.get $$y)))) + (func (export "f32.no_trichotomy_le") (param $$x f32) (param $$y f32) (result i32) + (i32.or (f32.le (local.get $$x) (local.get $$y)) (f32.gt (local.get $$x) (local.get $$y)))) + (func (export "f32.no_trichotomy_gt") (param $$x f32) (param $$y f32) (result i32) + (i32.or (f32.gt (local.get $$x) (local.get $$y)) (f32.le (local.get $$x) (local.get $$y)))) + (func (export "f32.no_trichotomy_ge") (param $$x f32) (param $$y f32) (result i32) + (i32.or (f32.ge (local.get $$x) (local.get $$y)) (f32.lt (local.get $$x) (local.get $$y)))) + + (func (export "f64.no_trichotomy_lt") (param $$x f64) (param $$y f64) (result i32) + (i32.or (f64.lt (local.get $$x) (local.get $$y)) (f64.ge (local.get $$x) (local.get $$y)))) + (func (export "f64.no_trichotomy_le") (param $$x f64) (param $$y f64) (result i32) + (i32.or (f64.le (local.get $$x) (local.get $$y)) (f64.gt (local.get $$x) (local.get $$y)))) + (func (export "f64.no_trichotomy_gt") (param $$x f64) (param $$y f64) (result i32) + (i32.or (f64.gt (local.get $$x) (local.get $$y)) (f64.le (local.get $$x) (local.get $$y)))) + (func (export "f64.no_trichotomy_ge") (param $$x f64) (param $$y f64) (result i32) + (i32.or (f64.ge (local.get $$x) (local.get $$y)) (f64.lt (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/float_exprs.wast:2238 +assert_return( + () => invoke($86, `f32.no_trichotomy_lt`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2239 +assert_return( + () => invoke($86, `f32.no_trichotomy_le`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2240 +assert_return( + () => invoke($86, `f32.no_trichotomy_gt`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2241 +assert_return( + () => invoke($86, `f32.no_trichotomy_ge`, [ + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2242 +assert_return( + () => invoke($86, `f64.no_trichotomy_lt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2243 +assert_return( + () => invoke($86, `f64.no_trichotomy_le`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2244 +assert_return( + () => invoke($86, `f64.no_trichotomy_gt`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2245 +assert_return( + () => invoke($86, `f64.no_trichotomy_ge`, [ + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [value("i32", 0)], +); + +// ./test/core/float_exprs.wast:2250 +let $87 = instantiate(`(module + (func (export "f32.arithmetic_nan_bitpattern") + (param $$x i32) (param $$y i32) (result i32) + (i32.and (i32.reinterpret_f32 + (f32.div + (f32.reinterpret_i32 (local.get $$x)) + (f32.reinterpret_i32 (local.get $$y)))) + (i32.const 0x7fc00000))) + (func (export "f32.canonical_nan_bitpattern") + (param $$x i32) (param $$y i32) (result i32) + (i32.and (i32.reinterpret_f32 + (f32.div + (f32.reinterpret_i32 (local.get $$x)) + (f32.reinterpret_i32 (local.get $$y)))) + (i32.const 0x7fffffff))) + (func (export "f32.nonarithmetic_nan_bitpattern") + (param $$x i32) (result i32) + (i32.reinterpret_f32 (f32.neg (f32.reinterpret_i32 (local.get $$x))))) + + (func (export "f64.arithmetic_nan_bitpattern") + (param $$x i64) (param $$y i64) (result i64) + (i64.and (i64.reinterpret_f64 + (f64.div + (f64.reinterpret_i64 (local.get $$x)) + (f64.reinterpret_i64 (local.get $$y)))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.canonical_nan_bitpattern") + (param $$x i64) (param $$y i64) (result i64) + (i64.and (i64.reinterpret_f64 + (f64.div + (f64.reinterpret_i64 (local.get $$x)) + (f64.reinterpret_i64 (local.get $$y)))) + (i64.const 0x7fffffffffffffff))) + (func (export "f64.nonarithmetic_nan_bitpattern") + (param $$x i64) (result i64) + (i64.reinterpret_f64 (f64.neg (f64.reinterpret_i64 (local.get $$x))))) + + ;; Versions of no_fold testcases that only care about NaN bitpatterns. + (func (export "f32.no_fold_sub_zero") (param $$x i32) (result i32) + (i32.and (i32.reinterpret_f32 (f32.sub (f32.reinterpret_i32 (local.get $$x)) (f32.const 0.0))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_neg0_sub") (param $$x i32) (result i32) + (i32.and (i32.reinterpret_f32 (f32.sub (f32.const -0.0) (f32.reinterpret_i32 (local.get $$x)))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_mul_one") (param $$x i32) (result i32) + (i32.and (i32.reinterpret_f32 (f32.mul (f32.reinterpret_i32 (local.get $$x)) (f32.const 1.0))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_neg1_mul") (param $$x i32) (result i32) + (i32.and (i32.reinterpret_f32 (f32.mul (f32.const -1.0) (f32.reinterpret_i32 (local.get $$x)))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_div_one") (param $$x i32) (result i32) + (i32.and (i32.reinterpret_f32 (f32.div (f32.reinterpret_i32 (local.get $$x)) (f32.const 1.0))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_div_neg1") (param $$x i32) (result i32) + (i32.and (i32.reinterpret_f32 (f32.div (f32.reinterpret_i32 (local.get $$x)) (f32.const -1.0))) + (i32.const 0x7fc00000))) + (func (export "f64.no_fold_sub_zero") (param $$x i64) (result i64) + (i64.and (i64.reinterpret_f64 (f64.sub (f64.reinterpret_i64 (local.get $$x)) (f64.const 0.0))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_neg0_sub") (param $$x i64) (result i64) + (i64.and (i64.reinterpret_f64 (f64.sub (f64.const -0.0) (f64.reinterpret_i64 (local.get $$x)))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_mul_one") (param $$x i64) (result i64) + (i64.and (i64.reinterpret_f64 (f64.mul (f64.reinterpret_i64 (local.get $$x)) (f64.const 1.0))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_neg1_mul") (param $$x i64) (result i64) + (i64.and (i64.reinterpret_f64 (f64.mul (f64.const -1.0) (f64.reinterpret_i64 (local.get $$x)))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_div_one") (param $$x i64) (result i64) + (i64.and (i64.reinterpret_f64 (f64.div (f64.reinterpret_i64 (local.get $$x)) (f64.const 1.0))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_div_neg1") (param $$x i64) (result i64) + (i64.and (i64.reinterpret_f64 (f64.div (f64.reinterpret_i64 (local.get $$x)) (f64.const -1.0))) + (i64.const 0x7ff8000000000000))) + (func (export "no_fold_promote_demote") (param $$x i32) (result i32) + (i32.and (i32.reinterpret_f32 (f32.demote_f64 (f64.promote_f32 (f32.reinterpret_i32 (local.get $$x))))) + (i32.const 0x7fc00000))) +)`); + +// ./test/core/float_exprs.wast:2329 +assert_return( + () => invoke($87, `f32.arithmetic_nan_bitpattern`, [2139107856, 2139107856]), + [value("i32", 2143289344)], +); + +// ./test/core/float_exprs.wast:2330 +assert_return(() => invoke($87, `f32.canonical_nan_bitpattern`, [0, 0]), [value("i32", 2143289344)]); + +// ./test/core/float_exprs.wast:2331 +assert_return( + () => invoke($87, `f32.canonical_nan_bitpattern`, [2143289344, 2143289344]), + [value("i32", 2143289344)], +); + +// ./test/core/float_exprs.wast:2332 +assert_return( + () => invoke($87, `f32.canonical_nan_bitpattern`, [-4194304, 2143289344]), + [value("i32", 2143289344)], +); + +// ./test/core/float_exprs.wast:2333 +assert_return( + () => invoke($87, `f32.canonical_nan_bitpattern`, [2143289344, -4194304]), + [value("i32", 2143289344)], +); + +// ./test/core/float_exprs.wast:2334 +assert_return( + () => invoke($87, `f32.canonical_nan_bitpattern`, [-4194304, -4194304]), + [value("i32", 2143289344)], +); + +// ./test/core/float_exprs.wast:2335 +assert_return( + () => invoke($87, `f32.nonarithmetic_nan_bitpattern`, [2143302160]), + [value("i32", -4181488)], +); + +// ./test/core/float_exprs.wast:2336 +assert_return( + () => invoke($87, `f32.nonarithmetic_nan_bitpattern`, [-4181488]), + [value("i32", 2143302160)], +); + +// ./test/core/float_exprs.wast:2337 +assert_return( + () => invoke($87, `f32.nonarithmetic_nan_bitpattern`, [2139107856]), + [value("i32", -8375792)], +); + +// ./test/core/float_exprs.wast:2338 +assert_return( + () => invoke($87, `f32.nonarithmetic_nan_bitpattern`, [-8375792]), + [value("i32", 2139107856)], +); + +// ./test/core/float_exprs.wast:2339 +assert_return( + () => invoke($87, `f64.arithmetic_nan_bitpattern`, [ + 9218868437227418128n, + 9218868437227418128n, + ]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2340 +assert_return( + () => invoke($87, `f64.canonical_nan_bitpattern`, [0n, 0n]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2341 +assert_return( + () => invoke($87, `f64.canonical_nan_bitpattern`, [ + 9221120237041090560n, + 9221120237041090560n, + ]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2342 +assert_return( + () => invoke($87, `f64.canonical_nan_bitpattern`, [ + -2251799813685248n, + 9221120237041090560n, + ]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2343 +assert_return( + () => invoke($87, `f64.canonical_nan_bitpattern`, [ + 9221120237041090560n, + -2251799813685248n, + ]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2344 +assert_return( + () => invoke($87, `f64.canonical_nan_bitpattern`, [ + -2251799813685248n, + -2251799813685248n, + ]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2345 +assert_return( + () => invoke($87, `f64.nonarithmetic_nan_bitpattern`, [9221120237041103376n]), + [value("i64", -2251799813672432n)], +); + +// ./test/core/float_exprs.wast:2346 +assert_return( + () => invoke($87, `f64.nonarithmetic_nan_bitpattern`, [-2251799813672432n]), + [value("i64", 9221120237041103376n)], +); + +// ./test/core/float_exprs.wast:2347 +assert_return( + () => invoke($87, `f64.nonarithmetic_nan_bitpattern`, [9218868437227418128n]), + [value("i64", -4503599627357680n)], +); + +// ./test/core/float_exprs.wast:2348 +assert_return( + () => invoke($87, `f64.nonarithmetic_nan_bitpattern`, [-4503599627357680n]), + [value("i64", 9218868437227418128n)], +); + +// ./test/core/float_exprs.wast:2349 +assert_return(() => invoke($87, `f32.no_fold_sub_zero`, [2141192192]), [value("i32", 2143289344)]); + +// ./test/core/float_exprs.wast:2350 +assert_return(() => invoke($87, `f32.no_fold_neg0_sub`, [2141192192]), [value("i32", 2143289344)]); + +// ./test/core/float_exprs.wast:2351 +assert_return(() => invoke($87, `f32.no_fold_mul_one`, [2141192192]), [value("i32", 2143289344)]); + +// ./test/core/float_exprs.wast:2352 +assert_return(() => invoke($87, `f32.no_fold_neg1_mul`, [2141192192]), [value("i32", 2143289344)]); + +// ./test/core/float_exprs.wast:2353 +assert_return(() => invoke($87, `f32.no_fold_div_one`, [2141192192]), [value("i32", 2143289344)]); + +// ./test/core/float_exprs.wast:2354 +assert_return(() => invoke($87, `f32.no_fold_div_neg1`, [2141192192]), [value("i32", 2143289344)]); + +// ./test/core/float_exprs.wast:2355 +assert_return( + () => invoke($87, `f64.no_fold_sub_zero`, [9219994337134247936n]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2356 +assert_return( + () => invoke($87, `f64.no_fold_neg0_sub`, [9219994337134247936n]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2357 +assert_return( + () => invoke($87, `f64.no_fold_mul_one`, [9219994337134247936n]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2358 +assert_return( + () => invoke($87, `f64.no_fold_neg1_mul`, [9219994337134247936n]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2359 +assert_return( + () => invoke($87, `f64.no_fold_div_one`, [9219994337134247936n]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2360 +assert_return( + () => invoke($87, `f64.no_fold_div_neg1`, [9219994337134247936n]), + [value("i64", 9221120237041090560n)], +); + +// ./test/core/float_exprs.wast:2361 +assert_return(() => invoke($87, `no_fold_promote_demote`, [2141192192]), [value("i32", 2143289344)]); + +// ./test/core/float_exprs.wast:2366 +let $88 = instantiate(`(module + (func (export "dot_product_example") + (param $$x0 f64) (param $$x1 f64) (param $$x2 f64) (param $$x3 f64) + (param $$y0 f64) (param $$y1 f64) (param $$y2 f64) (param $$y3 f64) + (result f64) + (f64.add (f64.add (f64.add + (f64.mul (local.get $$x0) (local.get $$y0)) + (f64.mul (local.get $$x1) (local.get $$y1))) + (f64.mul (local.get $$x2) (local.get $$y2))) + (f64.mul (local.get $$x3) (local.get $$y3))) + ) + + (func (export "with_binary_sum_collapse") + (param $$x0 f64) (param $$x1 f64) (param $$x2 f64) (param $$x3 f64) + (param $$y0 f64) (param $$y1 f64) (param $$y2 f64) (param $$y3 f64) + (result f64) + (f64.add (f64.add (f64.mul (local.get $$x0) (local.get $$y0)) + (f64.mul (local.get $$x1) (local.get $$y1))) + (f64.add (f64.mul (local.get $$x2) (local.get $$y2)) + (f64.mul (local.get $$x3) (local.get $$y3)))) + ) +)`); + +// ./test/core/float_exprs.wast:2389 +assert_return( + () => invoke($88, `dot_product_example`, [ + value("f64", 32000000), + value("f64", 1), + value("f64", -1), + value("f64", 80000000), + value("f64", 40000000), + value("f64", 1), + value("f64", -1), + value("f64", -16000000), + ]), + [value("f64", 2)], +); + +// ./test/core/float_exprs.wast:2393 +assert_return( + () => invoke($88, `with_binary_sum_collapse`, [ + value("f64", 32000000), + value("f64", 1), + value("f64", -1), + value("f64", 80000000), + value("f64", 40000000), + value("f64", 1), + value("f64", -1), + value("f64", -16000000), + ]), + [value("f64", 2)], +); + +// ./test/core/float_exprs.wast:2400 +let $89 = instantiate(`(module + (func (export "f32.contract2fma") + (param $$x f32) (param $$y f32) (result f32) + (f32.sqrt (f32.sub (f32.mul (local.get $$x) (local.get $$x)) + (f32.mul (local.get $$y) (local.get $$y))))) + (func (export "f64.contract2fma") + (param $$x f64) (param $$y f64) (result f64) + (f64.sqrt (f64.sub (f64.mul (local.get $$x) (local.get $$x)) + (f64.mul (local.get $$y) (local.get $$y))))) +)`); + +// ./test/core/float_exprs.wast:2411 +assert_return( + () => invoke($89, `f32.contract2fma`, [value("f32", 1), value("f32", 1)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:2412 +assert_return( + () => invoke($89, `f32.contract2fma`, [value("f32", 1.1), value("f32", 1.1)]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:2413 +assert_return( + () => invoke($89, `f32.contract2fma`, [ + value("f32", 1.1999999), + value("f32", 1.1999999), + ]), + [value("f32", 0)], +); + +// ./test/core/float_exprs.wast:2414 +assert_return( + () => invoke($89, `f64.contract2fma`, [value("f64", 1), value("f64", 1)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:2415 +assert_return( + () => invoke($89, `f64.contract2fma`, [value("f64", 1.1), value("f64", 1.1)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:2416 +assert_return( + () => invoke($89, `f64.contract2fma`, [value("f64", 1.2), value("f64", 1.2)]), + [value("f64", 0)], +); + +// ./test/core/float_exprs.wast:2421 +let $90 = instantiate(`(module + (func (export "f32.division_by_small_number") + (param $$a f32) (param $$b f32) (param $$c f32) (result f32) + (f32.sub (local.get $$a) (f32.div (local.get $$b) (local.get $$c)))) + (func (export "f64.division_by_small_number") + (param $$a f64) (param $$b f64) (param $$c f64) (result f64) + (f64.sub (local.get $$a) (f64.div (local.get $$b) (local.get $$c)))) +)`); + +// ./test/core/float_exprs.wast:2430 +assert_return( + () => invoke($90, `f32.division_by_small_number`, [ + value("f32", 112000000), + value("f32", 100000), + value("f32", 0.0009), + ]), + [value("f32", 888888)], +); + +// ./test/core/float_exprs.wast:2431 +assert_return( + () => invoke($90, `f64.division_by_small_number`, [ + value("f64", 112000000), + value("f64", 100000), + value("f64", 0.0009), + ]), + [value("f64", 888888.8888888806)], +); + +// ./test/core/float_exprs.wast:2436 +let $91 = instantiate(`(module + (func (export "f32.golden_ratio") (param $$a f32) (param $$b f32) (param $$c f32) (result f32) + (f32.mul (local.get 0) (f32.add (local.get 1) (f32.sqrt (local.get 2))))) + (func (export "f64.golden_ratio") (param $$a f64) (param $$b f64) (param $$c f64) (result f64) + (f64.mul (local.get 0) (f64.add (local.get 1) (f64.sqrt (local.get 2))))) +)`); + +// ./test/core/float_exprs.wast:2443 +assert_return( + () => invoke($91, `f32.golden_ratio`, [ + value("f32", 0.5), + value("f32", 1), + value("f32", 5), + ]), + [value("f32", 1.618034)], +); + +// ./test/core/float_exprs.wast:2444 +assert_return( + () => invoke($91, `f64.golden_ratio`, [ + value("f64", 0.5), + value("f64", 1), + value("f64", 5), + ]), + [value("f64", 1.618033988749895)], +); + +// ./test/core/float_exprs.wast:2449 +let $92 = instantiate(`(module + (func (export "f32.silver_means") (param $$n f32) (result f32) + (f32.mul (f32.const 0.5) + (f32.add (local.get $$n) + (f32.sqrt (f32.add (f32.mul (local.get $$n) (local.get $$n)) + (f32.const 4.0)))))) + (func (export "f64.silver_means") (param $$n f64) (result f64) + (f64.mul (f64.const 0.5) + (f64.add (local.get $$n) + (f64.sqrt (f64.add (f64.mul (local.get $$n) (local.get $$n)) + (f64.const 4.0)))))) +)`); + +// ./test/core/float_exprs.wast:2462 +assert_return(() => invoke($92, `f32.silver_means`, [value("f32", 0)]), [value("f32", 1)]); + +// ./test/core/float_exprs.wast:2463 +assert_return(() => invoke($92, `f32.silver_means`, [value("f32", 1)]), [value("f32", 1.618034)]); + +// ./test/core/float_exprs.wast:2464 +assert_return(() => invoke($92, `f32.silver_means`, [value("f32", 2)]), [value("f32", 2.4142137)]); + +// ./test/core/float_exprs.wast:2465 +assert_return(() => invoke($92, `f32.silver_means`, [value("f32", 3)]), [value("f32", 3.3027756)]); + +// ./test/core/float_exprs.wast:2466 +assert_return(() => invoke($92, `f32.silver_means`, [value("f32", 4)]), [value("f32", 4.236068)]); + +// ./test/core/float_exprs.wast:2467 +assert_return(() => invoke($92, `f32.silver_means`, [value("f32", 5)]), [value("f32", 5.192582)]); + +// ./test/core/float_exprs.wast:2468 +assert_return(() => invoke($92, `f64.silver_means`, [value("f64", 0)]), [value("f64", 1)]); + +// ./test/core/float_exprs.wast:2469 +assert_return( + () => invoke($92, `f64.silver_means`, [value("f64", 1)]), + [value("f64", 1.618033988749895)], +); + +// ./test/core/float_exprs.wast:2470 +assert_return( + () => invoke($92, `f64.silver_means`, [value("f64", 2)]), + [value("f64", 2.414213562373095)], +); + +// ./test/core/float_exprs.wast:2471 +assert_return( + () => invoke($92, `f64.silver_means`, [value("f64", 3)]), + [value("f64", 3.302775637731995)], +); + +// ./test/core/float_exprs.wast:2472 +assert_return( + () => invoke($92, `f64.silver_means`, [value("f64", 4)]), + [value("f64", 4.23606797749979)], +); + +// ./test/core/float_exprs.wast:2473 +assert_return( + () => invoke($92, `f64.silver_means`, [value("f64", 5)]), + [value("f64", 5.192582403567252)], +); + +// ./test/core/float_exprs.wast:2478 +let $93 = instantiate(`(module + (func (export "point_four") (param $$four f64) (param $$ten f64) (result i32) + (f64.lt (f64.div (local.get $$four) (local.get $$ten)) (f64.const 0.4))) +)`); + +// ./test/core/float_exprs.wast:2483 +assert_return(() => invoke($93, `point_four`, [value("f64", 4), value("f64", 10)]), [value("i32", 0)]); + +// ./test/core/float_exprs.wast:2488 +let $94 = instantiate(`(module + (func (export "tau") (param i32) (result f64) + (local f64 f64 f64 f64) + f64.const 0x0p+0 + local.set 1 + block + local.get 0 + i32.const 1 + i32.lt_s + br_if 0 + f64.const 0x1p+0 + local.set 2 + f64.const 0x0p+0 + local.set 3 + loop + local.get 1 + local.get 2 + f64.const 0x1p+3 + local.get 3 + f64.const 0x1p+3 + f64.mul + local.tee 4 + f64.const 0x1p+0 + f64.add + f64.div + f64.const 0x1p+2 + local.get 4 + f64.const 0x1p+2 + f64.add + f64.div + f64.sub + f64.const 0x1p+1 + local.get 4 + f64.const 0x1.4p+2 + f64.add + f64.div + f64.sub + f64.const 0x1p+1 + local.get 4 + f64.const 0x1.8p+2 + f64.add + f64.div + f64.sub + f64.mul + f64.add + local.set 1 + local.get 3 + f64.const 0x1p+0 + f64.add + local.set 3 + local.get 2 + f64.const 0x1p-4 + f64.mul + local.set 2 + local.get 0 + i32.const -1 + i32.add + local.tee 0 + br_if 0 + end + end + local.get 1 + ) +)`); + +// ./test/core/float_exprs.wast:2553 +assert_return(() => invoke($94, `tau`, [10]), [value("f64", 6.283185307179583)]); + +// ./test/core/float_exprs.wast:2554 +assert_return(() => invoke($94, `tau`, [11]), [value("f64", 6.283185307179586)]); + +// ./test/core/float_exprs.wast:2558 +let $95 = instantiate(`(module + (func (export "f32.no_fold_conditional_inc") (param $$x f32) (param $$y f32) (result f32) + (select (local.get $$x) + (f32.add (local.get $$x) (f32.const 1.0)) + (f32.lt (local.get $$y) (f32.const 0.0)))) + (func (export "f64.no_fold_conditional_inc") (param $$x f64) (param $$y f64) (result f64) + (select (local.get $$x) + (f64.add (local.get $$x) (f64.const 1.0)) + (f64.lt (local.get $$y) (f64.const 0.0)))) +)`); + +// ./test/core/float_exprs.wast:2569 +assert_return( + () => invoke($95, `f32.no_fold_conditional_inc`, [value("f32", -0), value("f32", -1)]), + [value("f32", -0)], +); + +// ./test/core/float_exprs.wast:2570 +assert_return( + () => invoke($95, `f64.no_fold_conditional_inc`, [value("f64", -0), value("f64", -1)]), + [value("f64", -0)], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/float_literals.wast.js b/js/src/jit-test/tests/wasm/spec/spec/float_literals.wast.js new file mode 100644 index 0000000000..c4067bf4f1 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/float_literals.wast.js @@ -0,0 +1,764 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/float_literals.wast + +// ./test/core/float_literals.wast:3 +let $0 = instantiate(`(module + ;; f32 special values + (func (export "f32.nan") (result i32) (i32.reinterpret_f32 (f32.const nan))) + (func (export "f32.positive_nan") (result i32) (i32.reinterpret_f32 (f32.const +nan))) + (func (export "f32.negative_nan") (result i32) (i32.reinterpret_f32 (f32.const -nan))) + (func (export "f32.plain_nan") (result i32) (i32.reinterpret_f32 (f32.const nan:0x400000))) + (func (export "f32.informally_known_as_plain_snan") (result i32) (i32.reinterpret_f32 (f32.const nan:0x200000))) + (func (export "f32.all_ones_nan") (result i32) (i32.reinterpret_f32 (f32.const -nan:0x7fffff))) + (func (export "f32.misc_nan") (result i32) (i32.reinterpret_f32 (f32.const nan:0x012345))) + (func (export "f32.misc_positive_nan") (result i32) (i32.reinterpret_f32 (f32.const +nan:0x304050))) + (func (export "f32.misc_negative_nan") (result i32) (i32.reinterpret_f32 (f32.const -nan:0x2abcde))) + (func (export "f32.infinity") (result i32) (i32.reinterpret_f32 (f32.const inf))) + (func (export "f32.positive_infinity") (result i32) (i32.reinterpret_f32 (f32.const +inf))) + (func (export "f32.negative_infinity") (result i32) (i32.reinterpret_f32 (f32.const -inf))) + + ;; f32 numbers + (func (export "f32.zero") (result i32) (i32.reinterpret_f32 (f32.const 0x0.0p0))) + (func (export "f32.positive_zero") (result i32) (i32.reinterpret_f32 (f32.const +0x0.0p0))) + (func (export "f32.negative_zero") (result i32) (i32.reinterpret_f32 (f32.const -0x0.0p0))) + (func (export "f32.misc") (result i32) (i32.reinterpret_f32 (f32.const 0x1.921fb6p+2))) + (func (export "f32.min_positive") (result i32) (i32.reinterpret_f32 (f32.const 0x1p-149))) + (func (export "f32.min_normal") (result i32) (i32.reinterpret_f32 (f32.const 0x1p-126))) + (func (export "f32.max_finite") (result i32) (i32.reinterpret_f32 (f32.const 0x1.fffffep+127))) + (func (export "f32.max_subnormal") (result i32) (i32.reinterpret_f32 (f32.const 0x1.fffffcp-127))) + (func (export "f32.trailing_dot") (result i32) (i32.reinterpret_f32 (f32.const 0x1.p10))) + + ;; f32 in decimal format + (func (export "f32_dec.zero") (result i32) (i32.reinterpret_f32 (f32.const 0.0e0))) + (func (export "f32_dec.positive_zero") (result i32) (i32.reinterpret_f32 (f32.const +0.0e0))) + (func (export "f32_dec.negative_zero") (result i32) (i32.reinterpret_f32 (f32.const -0.0e0))) + (func (export "f32_dec.misc") (result i32) (i32.reinterpret_f32 (f32.const 6.28318548202514648))) + (func (export "f32_dec.min_positive") (result i32) (i32.reinterpret_f32 (f32.const 1.4013e-45))) + (func (export "f32_dec.min_normal") (result i32) (i32.reinterpret_f32 (f32.const 1.1754944e-38))) + (func (export "f32_dec.max_subnormal") (result i32) (i32.reinterpret_f32 (f32.const 1.1754942e-38))) + (func (export "f32_dec.max_finite") (result i32) (i32.reinterpret_f32 (f32.const 3.4028234e+38))) + (func (export "f32_dec.trailing_dot") (result i32) (i32.reinterpret_f32 (f32.const 1.e10))) + + ;; https://twitter.com/Archivd/status/994637336506912768 + (func (export "f32_dec.root_beer_float") (result i32) (i32.reinterpret_f32 (f32.const 1.000000119))) + + ;; f64 special values + (func (export "f64.nan") (result i64) (i64.reinterpret_f64 (f64.const nan))) + (func (export "f64.positive_nan") (result i64) (i64.reinterpret_f64 (f64.const +nan))) + (func (export "f64.negative_nan") (result i64) (i64.reinterpret_f64 (f64.const -nan))) + (func (export "f64.plain_nan") (result i64) (i64.reinterpret_f64 (f64.const nan:0x8000000000000))) + (func (export "f64.informally_known_as_plain_snan") (result i64) (i64.reinterpret_f64 (f64.const nan:0x4000000000000))) + (func (export "f64.all_ones_nan") (result i64) (i64.reinterpret_f64 (f64.const -nan:0xfffffffffffff))) + (func (export "f64.misc_nan") (result i64) (i64.reinterpret_f64 (f64.const nan:0x0123456789abc))) + (func (export "f64.misc_positive_nan") (result i64) (i64.reinterpret_f64 (f64.const +nan:0x3040506070809))) + (func (export "f64.misc_negative_nan") (result i64) (i64.reinterpret_f64 (f64.const -nan:0x2abcdef012345))) + (func (export "f64.infinity") (result i64) (i64.reinterpret_f64 (f64.const inf))) + (func (export "f64.positive_infinity") (result i64) (i64.reinterpret_f64 (f64.const +inf))) + (func (export "f64.negative_infinity") (result i64) (i64.reinterpret_f64 (f64.const -inf))) + + ;; f64 numbers + (func (export "f64.zero") (result i64) (i64.reinterpret_f64 (f64.const 0x0.0p0))) + (func (export "f64.positive_zero") (result i64) (i64.reinterpret_f64 (f64.const +0x0.0p0))) + (func (export "f64.negative_zero") (result i64) (i64.reinterpret_f64 (f64.const -0x0.0p0))) + (func (export "f64.misc") (result i64) (i64.reinterpret_f64 (f64.const 0x1.921fb54442d18p+2))) + (func (export "f64.min_positive") (result i64) (i64.reinterpret_f64 (f64.const 0x0.0000000000001p-1022))) + (func (export "f64.min_normal") (result i64) (i64.reinterpret_f64 (f64.const 0x1p-1022))) + (func (export "f64.max_subnormal") (result i64) (i64.reinterpret_f64 (f64.const 0x0.fffffffffffffp-1022))) + (func (export "f64.max_finite") (result i64) (i64.reinterpret_f64 (f64.const 0x1.fffffffffffffp+1023))) + (func (export "f64.trailing_dot") (result i64) (i64.reinterpret_f64 (f64.const 0x1.p100))) + + ;; f64 numbers in decimal format + (func (export "f64_dec.zero") (result i64) (i64.reinterpret_f64 (f64.const 0.0e0))) + (func (export "f64_dec.positive_zero") (result i64) (i64.reinterpret_f64 (f64.const +0.0e0))) + (func (export "f64_dec.negative_zero") (result i64) (i64.reinterpret_f64 (f64.const -0.0e0))) + (func (export "f64_dec.misc") (result i64) (i64.reinterpret_f64 (f64.const 6.28318530717958623))) + (func (export "f64_dec.min_positive") (result i64) (i64.reinterpret_f64 (f64.const 4.94066e-324))) + (func (export "f64_dec.min_normal") (result i64) (i64.reinterpret_f64 (f64.const 2.2250738585072012e-308))) + (func (export "f64_dec.max_subnormal") (result i64) (i64.reinterpret_f64 (f64.const 2.2250738585072011e-308))) + (func (export "f64_dec.max_finite") (result i64) (i64.reinterpret_f64 (f64.const 1.7976931348623157e+308))) + (func (export "f64_dec.trailing_dot") (result i64) (i64.reinterpret_f64 (f64.const 1.e100))) + + ;; https://twitter.com/Archivd/status/994637336506912768 + (func (export "f64_dec.root_beer_float") (result i64) (i64.reinterpret_f64 (f64.const 1.000000119))) + + (func (export "f32-dec-sep1") (result f32) (f32.const 1_000_000)) + (func (export "f32-dec-sep2") (result f32) (f32.const 1_0_0_0)) + (func (export "f32-dec-sep3") (result f32) (f32.const 100_3.141_592)) + (func (export "f32-dec-sep4") (result f32) (f32.const 99e+1_3)) + (func (export "f32-dec-sep5") (result f32) (f32.const 122_000.11_3_54E0_2_3)) + (func (export "f32-hex-sep1") (result f32) (f32.const 0xa_0f_00_99)) + (func (export "f32-hex-sep2") (result f32) (f32.const 0x1_a_A_0_f)) + (func (export "f32-hex-sep3") (result f32) (f32.const 0xa0_ff.f141_a59a)) + (func (export "f32-hex-sep4") (result f32) (f32.const 0xf0P+1_3)) + (func (export "f32-hex-sep5") (result f32) (f32.const 0x2a_f00a.1f_3_eep2_3)) + + (func (export "f64-dec-sep1") (result f64) (f64.const 1_000_000)) + (func (export "f64-dec-sep2") (result f64) (f64.const 1_0_0_0)) + (func (export "f64-dec-sep3") (result f64) (f64.const 100_3.141_592)) + (func (export "f64-dec-sep4") (result f64) (f64.const 99e-1_23)) + (func (export "f64-dec-sep5") (result f64) (f64.const 122_000.11_3_54e0_2_3)) + (func (export "f64-hex-sep1") (result f64) (f64.const 0xa_f00f_0000_9999)) + (func (export "f64-hex-sep2") (result f64) (f64.const 0x1_a_A_0_f)) + (func (export "f64-hex-sep3") (result f64) (f64.const 0xa0_ff.f141_a59a)) + (func (export "f64-hex-sep4") (result f64) (f64.const 0xf0P+1_3)) + (func (export "f64-hex-sep5") (result f64) (f64.const 0x2a_f00a.1f_3_eep2_3)) +)`); + +// ./test/core/float_literals.wast:105 +assert_return(() => invoke($0, `f32.nan`, []), [value("i32", 2143289344)]); + +// ./test/core/float_literals.wast:106 +assert_return(() => invoke($0, `f32.positive_nan`, []), [value("i32", 2143289344)]); + +// ./test/core/float_literals.wast:107 +assert_return(() => invoke($0, `f32.negative_nan`, []), [value("i32", -4194304)]); + +// ./test/core/float_literals.wast:108 +assert_return(() => invoke($0, `f32.plain_nan`, []), [value("i32", 2143289344)]); + +// ./test/core/float_literals.wast:109 +assert_return(() => invoke($0, `f32.informally_known_as_plain_snan`, []), [value("i32", 2141192192)]); + +// ./test/core/float_literals.wast:110 +assert_return(() => invoke($0, `f32.all_ones_nan`, []), [value("i32", -1)]); + +// ./test/core/float_literals.wast:111 +assert_return(() => invoke($0, `f32.misc_nan`, []), [value("i32", 2139169605)]); + +// ./test/core/float_literals.wast:112 +assert_return(() => invoke($0, `f32.misc_positive_nan`, []), [value("i32", 2142257232)]); + +// ./test/core/float_literals.wast:113 +assert_return(() => invoke($0, `f32.misc_negative_nan`, []), [value("i32", -5587746)]); + +// ./test/core/float_literals.wast:114 +assert_return(() => invoke($0, `f32.infinity`, []), [value("i32", 2139095040)]); + +// ./test/core/float_literals.wast:115 +assert_return(() => invoke($0, `f32.positive_infinity`, []), [value("i32", 2139095040)]); + +// ./test/core/float_literals.wast:116 +assert_return(() => invoke($0, `f32.negative_infinity`, []), [value("i32", -8388608)]); + +// ./test/core/float_literals.wast:117 +assert_return(() => invoke($0, `f32.zero`, []), [value("i32", 0)]); + +// ./test/core/float_literals.wast:118 +assert_return(() => invoke($0, `f32.positive_zero`, []), [value("i32", 0)]); + +// ./test/core/float_literals.wast:119 +assert_return(() => invoke($0, `f32.negative_zero`, []), [value("i32", -2147483648)]); + +// ./test/core/float_literals.wast:120 +assert_return(() => invoke($0, `f32.misc`, []), [value("i32", 1086918619)]); + +// ./test/core/float_literals.wast:121 +assert_return(() => invoke($0, `f32.min_positive`, []), [value("i32", 1)]); + +// ./test/core/float_literals.wast:122 +assert_return(() => invoke($0, `f32.min_normal`, []), [value("i32", 8388608)]); + +// ./test/core/float_literals.wast:123 +assert_return(() => invoke($0, `f32.max_subnormal`, []), [value("i32", 8388607)]); + +// ./test/core/float_literals.wast:124 +assert_return(() => invoke($0, `f32.max_finite`, []), [value("i32", 2139095039)]); + +// ./test/core/float_literals.wast:125 +assert_return(() => invoke($0, `f32.trailing_dot`, []), [value("i32", 1149239296)]); + +// ./test/core/float_literals.wast:126 +assert_return(() => invoke($0, `f32_dec.zero`, []), [value("i32", 0)]); + +// ./test/core/float_literals.wast:127 +assert_return(() => invoke($0, `f32_dec.positive_zero`, []), [value("i32", 0)]); + +// ./test/core/float_literals.wast:128 +assert_return(() => invoke($0, `f32_dec.negative_zero`, []), [value("i32", -2147483648)]); + +// ./test/core/float_literals.wast:129 +assert_return(() => invoke($0, `f32_dec.misc`, []), [value("i32", 1086918619)]); + +// ./test/core/float_literals.wast:130 +assert_return(() => invoke($0, `f32_dec.min_positive`, []), [value("i32", 1)]); + +// ./test/core/float_literals.wast:131 +assert_return(() => invoke($0, `f32_dec.min_normal`, []), [value("i32", 8388608)]); + +// ./test/core/float_literals.wast:132 +assert_return(() => invoke($0, `f32_dec.max_subnormal`, []), [value("i32", 8388607)]); + +// ./test/core/float_literals.wast:133 +assert_return(() => invoke($0, `f32_dec.max_finite`, []), [value("i32", 2139095039)]); + +// ./test/core/float_literals.wast:134 +assert_return(() => invoke($0, `f32_dec.trailing_dot`, []), [value("i32", 1343554297)]); + +// ./test/core/float_literals.wast:135 +assert_return(() => invoke($0, `f32_dec.root_beer_float`, []), [value("i32", 1065353217)]); + +// ./test/core/float_literals.wast:137 +assert_return(() => invoke($0, `f64.nan`, []), [value("i64", 9221120237041090560n)]); + +// ./test/core/float_literals.wast:138 +assert_return(() => invoke($0, `f64.positive_nan`, []), [value("i64", 9221120237041090560n)]); + +// ./test/core/float_literals.wast:139 +assert_return(() => invoke($0, `f64.negative_nan`, []), [value("i64", -2251799813685248n)]); + +// ./test/core/float_literals.wast:140 +assert_return(() => invoke($0, `f64.plain_nan`, []), [value("i64", 9221120237041090560n)]); + +// ./test/core/float_literals.wast:141 +assert_return( + () => invoke($0, `f64.informally_known_as_plain_snan`, []), + [value("i64", 9219994337134247936n)], +); + +// ./test/core/float_literals.wast:142 +assert_return(() => invoke($0, `f64.all_ones_nan`, []), [value("i64", -1n)]); + +// ./test/core/float_literals.wast:143 +assert_return(() => invoke($0, `f64.misc_nan`, []), [value("i64", 9218888453225749180n)]); + +// ./test/core/float_literals.wast:144 +assert_return(() => invoke($0, `f64.misc_positive_nan`, []), [value("i64", 9219717281780008969n)]); + +// ./test/core/float_literals.wast:145 +assert_return(() => invoke($0, `f64.misc_negative_nan`, []), [value("i64", -3751748707474619n)]); + +// ./test/core/float_literals.wast:146 +assert_return(() => invoke($0, `f64.infinity`, []), [value("i64", 9218868437227405312n)]); + +// ./test/core/float_literals.wast:147 +assert_return(() => invoke($0, `f64.positive_infinity`, []), [value("i64", 9218868437227405312n)]); + +// ./test/core/float_literals.wast:148 +assert_return(() => invoke($0, `f64.negative_infinity`, []), [value("i64", -4503599627370496n)]); + +// ./test/core/float_literals.wast:149 +assert_return(() => invoke($0, `f64.zero`, []), [value("i64", 0n)]); + +// ./test/core/float_literals.wast:150 +assert_return(() => invoke($0, `f64.positive_zero`, []), [value("i64", 0n)]); + +// ./test/core/float_literals.wast:151 +assert_return(() => invoke($0, `f64.negative_zero`, []), [value("i64", -9223372036854775808n)]); + +// ./test/core/float_literals.wast:152 +assert_return(() => invoke($0, `f64.misc`, []), [value("i64", 4618760256179416344n)]); + +// ./test/core/float_literals.wast:153 +assert_return(() => invoke($0, `f64.min_positive`, []), [value("i64", 1n)]); + +// ./test/core/float_literals.wast:154 +assert_return(() => invoke($0, `f64.min_normal`, []), [value("i64", 4503599627370496n)]); + +// ./test/core/float_literals.wast:155 +assert_return(() => invoke($0, `f64.max_subnormal`, []), [value("i64", 4503599627370495n)]); + +// ./test/core/float_literals.wast:156 +assert_return(() => invoke($0, `f64.max_finite`, []), [value("i64", 9218868437227405311n)]); + +// ./test/core/float_literals.wast:157 +assert_return(() => invoke($0, `f64.trailing_dot`, []), [value("i64", 5057542381537067008n)]); + +// ./test/core/float_literals.wast:158 +assert_return(() => invoke($0, `f64_dec.zero`, []), [value("i64", 0n)]); + +// ./test/core/float_literals.wast:159 +assert_return(() => invoke($0, `f64_dec.positive_zero`, []), [value("i64", 0n)]); + +// ./test/core/float_literals.wast:160 +assert_return(() => invoke($0, `f64_dec.negative_zero`, []), [value("i64", -9223372036854775808n)]); + +// ./test/core/float_literals.wast:161 +assert_return(() => invoke($0, `f64_dec.misc`, []), [value("i64", 4618760256179416344n)]); + +// ./test/core/float_literals.wast:162 +assert_return(() => invoke($0, `f64_dec.min_positive`, []), [value("i64", 1n)]); + +// ./test/core/float_literals.wast:163 +assert_return(() => invoke($0, `f64_dec.min_normal`, []), [value("i64", 4503599627370496n)]); + +// ./test/core/float_literals.wast:164 +assert_return(() => invoke($0, `f64_dec.max_subnormal`, []), [value("i64", 4503599627370495n)]); + +// ./test/core/float_literals.wast:165 +assert_return(() => invoke($0, `f64_dec.max_finite`, []), [value("i64", 9218868437227405311n)]); + +// ./test/core/float_literals.wast:166 +assert_return(() => invoke($0, `f64_dec.trailing_dot`, []), [value("i64", 6103021453049119613n)]); + +// ./test/core/float_literals.wast:167 +assert_return(() => invoke($0, `f64_dec.root_beer_float`, []), [value("i64", 4607182419335945764n)]); + +// ./test/core/float_literals.wast:169 +assert_return(() => invoke($0, `f32-dec-sep1`, []), [value("f32", 1000000)]); + +// ./test/core/float_literals.wast:170 +assert_return(() => invoke($0, `f32-dec-sep2`, []), [value("f32", 1000)]); + +// ./test/core/float_literals.wast:171 +assert_return(() => invoke($0, `f32-dec-sep3`, []), [value("f32", 1003.1416)]); + +// ./test/core/float_literals.wast:172 +assert_return(() => invoke($0, `f32-dec-sep4`, []), [value("f32", 990000000000000)]); + +// ./test/core/float_literals.wast:173 +assert_return(() => invoke($0, `f32-dec-sep5`, []), [value("f32", 12200012000000000000000000000)]); + +// ./test/core/float_literals.wast:174 +assert_return(() => invoke($0, `f32-hex-sep1`, []), [value("f32", 168755360)]); + +// ./test/core/float_literals.wast:175 +assert_return(() => invoke($0, `f32-hex-sep2`, []), [value("f32", 109071)]); + +// ./test/core/float_literals.wast:176 +assert_return(() => invoke($0, `f32-hex-sep3`, []), [value("f32", 41215.94)]); + +// ./test/core/float_literals.wast:177 +assert_return(() => invoke($0, `f32-hex-sep4`, []), [value("f32", 1966080)]); + +// ./test/core/float_literals.wast:178 +assert_return(() => invoke($0, `f32-hex-sep5`, []), [value("f32", 23605224000000)]); + +// ./test/core/float_literals.wast:180 +assert_return(() => invoke($0, `f64-dec-sep1`, []), [value("f64", 1000000)]); + +// ./test/core/float_literals.wast:181 +assert_return(() => invoke($0, `f64-dec-sep2`, []), [value("f64", 1000)]); + +// ./test/core/float_literals.wast:182 +assert_return(() => invoke($0, `f64-dec-sep3`, []), [value("f64", 1003.141592)]); + +// ./test/core/float_literals.wast:183 +assert_return( + () => invoke($0, `f64-dec-sep4`, []), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000099), + ], +); + +// ./test/core/float_literals.wast:184 +assert_return(() => invoke($0, `f64-dec-sep5`, []), [value("f64", 12200011354000000000000000000)]); + +// ./test/core/float_literals.wast:185 +assert_return(() => invoke($0, `f64-hex-sep1`, []), [value("f64", 3078696982321561)]); + +// ./test/core/float_literals.wast:186 +assert_return(() => invoke($0, `f64-hex-sep2`, []), [value("f64", 109071)]); + +// ./test/core/float_literals.wast:187 +assert_return(() => invoke($0, `f64-hex-sep3`, []), [value("f64", 41215.94240794191)]); + +// ./test/core/float_literals.wast:188 +assert_return(() => invoke($0, `f64-hex-sep4`, []), [value("f64", 1966080)]); + +// ./test/core/float_literals.wast:189 +assert_return(() => invoke($0, `f64-hex-sep5`, []), [value("f64", 23605225168752)]); + +// ./test/core/float_literals.wast:192 +let $1 = instantiate(`(module binary + ;; (func (export "4294967249") (result f64) (f64.const 4294967249)) + "\\00\\61\\73\\6d\\01\\00\\00\\00\\01\\85\\80\\80\\80\\00\\01\\60" + "\\00\\01\\7c\\03\\82\\80\\80\\80\\00\\01\\00\\07\\8e\\80\\80\\80" + "\\00\\01\\0a\\34\\32\\39\\34\\39\\36\\37\\32\\34\\39\\00\\00\\0a" + "\\91\\80\\80\\80\\00\\01\\8b\\80\\80\\80\\00\\00\\44\\00\\00\\20" + "\\fa\\ff\\ff\\ef\\41\\0b" +)`); + +// ./test/core/float_literals.wast:201 +assert_return(() => invoke($1, `4294967249`, []), [value("f64", 4294967249)]); + +// ./test/core/float_literals.wast:203 +assert_malformed(() => instantiate(`(global f32 (f32.const _100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:207 +assert_malformed(() => instantiate(`(global f32 (f32.const +_100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:211 +assert_malformed(() => instantiate(`(global f32 (f32.const -_100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:215 +assert_malformed(() => instantiate(`(global f32 (f32.const 99_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:219 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1__000)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:223 +assert_malformed(() => instantiate(`(global f32 (f32.const _1.0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:227 +assert_malformed(() => instantiate(`(global f32 (f32.const 1.0_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:231 +assert_malformed(() => instantiate(`(global f32 (f32.const 1_.0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:235 +assert_malformed(() => instantiate(`(global f32 (f32.const 1._0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:239 +assert_malformed(() => instantiate(`(global f32 (f32.const _1e1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:243 +assert_malformed(() => instantiate(`(global f32 (f32.const 1e1_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:247 +assert_malformed(() => instantiate(`(global f32 (f32.const 1_e1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:251 +assert_malformed(() => instantiate(`(global f32 (f32.const 1e_1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:255 +assert_malformed( + () => instantiate(`(global f32 (f32.const _1.0e1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:259 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0e1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:263 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0_e1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:267 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0e_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:271 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0e+_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:275 +assert_malformed( + () => instantiate(`(global f32 (f32.const 1.0e_+1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:279 +assert_malformed( + () => instantiate(`(global f32 (f32.const _0x100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:283 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0_x100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:287 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x_100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:291 +assert_malformed(() => instantiate(`(global f32 (f32.const 0x00_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:295 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0xff__ffff)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:299 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x_1.0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:303 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:307 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1_.0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:311 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1._0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:315 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x_1p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:319 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1p1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:323 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1_p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:327 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1p_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:331 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x_1.0p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:335 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0p1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:339 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0_p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:343 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0p_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:347 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0p+_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:351 +assert_malformed( + () => instantiate(`(global f32 (f32.const 0x1.0p_+1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:356 +assert_malformed(() => instantiate(`(global f64 (f64.const _100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:360 +assert_malformed(() => instantiate(`(global f64 (f64.const +_100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:364 +assert_malformed(() => instantiate(`(global f64 (f64.const -_100)) `), `unknown operator`); + +// ./test/core/float_literals.wast:368 +assert_malformed(() => instantiate(`(global f64 (f64.const 99_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:372 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1__000)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:376 +assert_malformed(() => instantiate(`(global f64 (f64.const _1.0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:380 +assert_malformed(() => instantiate(`(global f64 (f64.const 1.0_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:384 +assert_malformed(() => instantiate(`(global f64 (f64.const 1_.0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:388 +assert_malformed(() => instantiate(`(global f64 (f64.const 1._0)) `), `unknown operator`); + +// ./test/core/float_literals.wast:392 +assert_malformed(() => instantiate(`(global f64 (f64.const _1e1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:396 +assert_malformed(() => instantiate(`(global f64 (f64.const 1e1_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:400 +assert_malformed(() => instantiate(`(global f64 (f64.const 1_e1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:404 +assert_malformed(() => instantiate(`(global f64 (f64.const 1e_1)) `), `unknown operator`); + +// ./test/core/float_literals.wast:408 +assert_malformed( + () => instantiate(`(global f64 (f64.const _1.0e1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:412 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0e1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:416 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0_e1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:420 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0e_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:424 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0e+_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:428 +assert_malformed( + () => instantiate(`(global f64 (f64.const 1.0e_+1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:432 +assert_malformed( + () => instantiate(`(global f64 (f64.const _0x100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:436 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0_x100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:440 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x_100)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:444 +assert_malformed(() => instantiate(`(global f64 (f64.const 0x00_)) `), `unknown operator`); + +// ./test/core/float_literals.wast:448 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0xff__ffff)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:452 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x_1.0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:456 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:460 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1_.0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:464 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1._0)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:468 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x_1p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:472 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1p1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:476 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1_p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:480 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1p_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:484 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x_1.0p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:488 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0p1_)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:492 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0_p1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:496 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0p_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:500 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0p+_1)) `), + `unknown operator`, +); + +// ./test/core/float_literals.wast:504 +assert_malformed( + () => instantiate(`(global f64 (f64.const 0x1.0p_+1)) `), + `unknown operator`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/float_memory.wast.js b/js/src/jit-test/tests/wasm/spec/spec/float_memory.wast.js new file mode 100644 index 0000000000..8f01f424e8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/float_memory.wast.js @@ -0,0 +1,361 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/float_memory.wast + +// ./test/core/float_memory.wast:5 +let $0 = instantiate(`(module + (memory (data "\\00\\00\\a0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 0))) + (func (export "i32.load") (result i32) (i32.load (i32.const 0))) + (func (export "f32.store") (f32.store (i32.const 0) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store (i32.const 0) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store (i32.const 0) (i32.const 0))) +)`); + +// ./test/core/float_memory.wast:15 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:16 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:17 +invoke($0, `reset`, []); + +// ./test/core/float_memory.wast:18 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:19 +assert_return(() => invoke($0, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:20 +invoke($0, `f32.store`, []); + +// ./test/core/float_memory.wast:21 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:22 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:23 +invoke($0, `reset`, []); + +// ./test/core/float_memory.wast:24 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:25 +assert_return(() => invoke($0, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:26 +invoke($0, `i32.store`, []); + +// ./test/core/float_memory.wast:27 +assert_return(() => invoke($0, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:28 +assert_return(() => invoke($0, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:30 +let $1 = instantiate(`(module + (memory (data "\\00\\00\\00\\00\\00\\00\\f4\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 0))) + (func (export "i64.load") (result i64) (i64.load (i32.const 0))) + (func (export "f64.store") (f64.store (i32.const 0) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store (i32.const 0) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store (i32.const 0) (i64.const 0))) +)`); + +// ./test/core/float_memory.wast:40 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:41 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:42 +invoke($1, `reset`, []); + +// ./test/core/float_memory.wast:43 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:44 +assert_return(() => invoke($1, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:45 +invoke($1, `f64.store`, []); + +// ./test/core/float_memory.wast:46 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:47 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:48 +invoke($1, `reset`, []); + +// ./test/core/float_memory.wast:49 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:50 +assert_return(() => invoke($1, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:51 +invoke($1, `i64.store`, []); + +// ./test/core/float_memory.wast:52 +assert_return(() => invoke($1, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:53 +assert_return( + () => invoke($1, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:57 +let $2 = instantiate(`(module + (memory (data "\\00\\00\\00\\a0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 1))) + (func (export "i32.load") (result i32) (i32.load (i32.const 1))) + (func (export "f32.store") (f32.store (i32.const 1) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store (i32.const 1) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store (i32.const 1) (i32.const 0))) +)`); + +// ./test/core/float_memory.wast:67 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:68 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:69 +invoke($2, `reset`, []); + +// ./test/core/float_memory.wast:70 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:71 +assert_return(() => invoke($2, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:72 +invoke($2, `f32.store`, []); + +// ./test/core/float_memory.wast:73 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:74 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:75 +invoke($2, `reset`, []); + +// ./test/core/float_memory.wast:76 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:77 +assert_return(() => invoke($2, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:78 +invoke($2, `i32.store`, []); + +// ./test/core/float_memory.wast:79 +assert_return(() => invoke($2, `i32.load`, []), [value("i32", 2141192192)]); + +// ./test/core/float_memory.wast:80 +assert_return(() => invoke($2, `f32.load`, []), [bytes("f32", [0x0, 0x0, 0xa0, 0x7f])]); + +// ./test/core/float_memory.wast:82 +let $3 = instantiate(`(module + (memory (data "\\00\\00\\00\\00\\00\\00\\00\\f4\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 1))) + (func (export "i64.load") (result i64) (i64.load (i32.const 1))) + (func (export "f64.store") (f64.store (i32.const 1) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store (i32.const 1) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store (i32.const 1) (i64.const 0))) +)`); + +// ./test/core/float_memory.wast:92 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:93 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:94 +invoke($3, `reset`, []); + +// ./test/core/float_memory.wast:95 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:96 +assert_return(() => invoke($3, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:97 +invoke($3, `f64.store`, []); + +// ./test/core/float_memory.wast:98 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:99 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:100 +invoke($3, `reset`, []); + +// ./test/core/float_memory.wast:101 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:102 +assert_return(() => invoke($3, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:103 +invoke($3, `i64.store`, []); + +// ./test/core/float_memory.wast:104 +assert_return(() => invoke($3, `i64.load`, []), [value("i64", 9219994337134247936n)]); + +// ./test/core/float_memory.wast:105 +assert_return( + () => invoke($3, `f64.load`, []), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f])], +); + +// ./test/core/float_memory.wast:109 +let $4 = instantiate(`(module + (memory (data "\\01\\00\\d0\\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 0))) + (func (export "i32.load") (result i32) (i32.load (i32.const 0))) + (func (export "f32.store") (f32.store (i32.const 0) (f32.const nan:0x500001))) + (func (export "i32.store") (i32.store (i32.const 0) (i32.const 0x7fd00001))) + (func (export "reset") (i32.store (i32.const 0) (i32.const 0))) +)`); + +// ./test/core/float_memory.wast:119 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory.wast:120 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory.wast:121 +invoke($4, `reset`, []); + +// ./test/core/float_memory.wast:122 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:123 +assert_return(() => invoke($4, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:124 +invoke($4, `f32.store`, []); + +// ./test/core/float_memory.wast:125 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory.wast:126 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory.wast:127 +invoke($4, `reset`, []); + +// ./test/core/float_memory.wast:128 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 0)]); + +// ./test/core/float_memory.wast:129 +assert_return(() => invoke($4, `f32.load`, []), [value("f32", 0)]); + +// ./test/core/float_memory.wast:130 +invoke($4, `i32.store`, []); + +// ./test/core/float_memory.wast:131 +assert_return(() => invoke($4, `i32.load`, []), [value("i32", 2144337921)]); + +// ./test/core/float_memory.wast:132 +assert_return(() => invoke($4, `f32.load`, []), [bytes("f32", [0x1, 0x0, 0xd0, 0x7f])]); + +// ./test/core/float_memory.wast:134 +let $5 = instantiate(`(module + (memory (data "\\01\\00\\00\\00\\00\\00\\fc\\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 0))) + (func (export "i64.load") (result i64) (i64.load (i32.const 0))) + (func (export "f64.store") (f64.store (i32.const 0) (f64.const nan:0xc000000000001))) + (func (export "i64.store") (i64.store (i32.const 0) (i64.const 0x7ffc000000000001))) + (func (export "reset") (i64.store (i32.const 0) (i64.const 0))) +)`); + +// ./test/core/float_memory.wast:144 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory.wast:145 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); + +// ./test/core/float_memory.wast:146 +invoke($5, `reset`, []); + +// ./test/core/float_memory.wast:147 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:148 +assert_return(() => invoke($5, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:149 +invoke($5, `f64.store`, []); + +// ./test/core/float_memory.wast:150 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory.wast:151 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); + +// ./test/core/float_memory.wast:152 +invoke($5, `reset`, []); + +// ./test/core/float_memory.wast:153 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 0n)]); + +// ./test/core/float_memory.wast:154 +assert_return(() => invoke($5, `f64.load`, []), [value("f64", 0)]); + +// ./test/core/float_memory.wast:155 +invoke($5, `i64.store`, []); + +// ./test/core/float_memory.wast:156 +assert_return(() => invoke($5, `i64.load`, []), [value("i64", 9222246136947933185n)]); + +// ./test/core/float_memory.wast:157 +assert_return( + () => invoke($5, `f64.load`, []), + [bytes("f64", [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfc, 0x7f])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/float_misc.wast.js b/js/src/jit-test/tests/wasm/spec/spec/float_misc.wast.js new file mode 100644 index 0000000000..9d7598b363 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/float_misc.wast.js @@ -0,0 +1,3679 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/float_misc.wast + +// ./test/core/float_misc.wast:17 +let $0 = instantiate(`(module + (func (export "f32.add") (param $$x f32) (param $$y f32) (result f32) (f32.add (local.get $$x) (local.get $$y))) + (func (export "f32.sub") (param $$x f32) (param $$y f32) (result f32) (f32.sub (local.get $$x) (local.get $$y))) + (func (export "f32.mul") (param $$x f32) (param $$y f32) (result f32) (f32.mul (local.get $$x) (local.get $$y))) + (func (export "f32.div") (param $$x f32) (param $$y f32) (result f32) (f32.div (local.get $$x) (local.get $$y))) + (func (export "f32.sqrt") (param $$x f32) (result f32) (f32.sqrt (local.get $$x))) + (func (export "f32.abs") (param $$x f32) (result f32) (f32.abs (local.get $$x))) + (func (export "f32.neg") (param $$x f32) (result f32) (f32.neg (local.get $$x))) + (func (export "f32.copysign") (param $$x f32) (param $$y f32) (result f32) (f32.copysign (local.get $$x) (local.get $$y))) + (func (export "f32.ceil") (param $$x f32) (result f32) (f32.ceil (local.get $$x))) + (func (export "f32.floor") (param $$x f32) (result f32) (f32.floor (local.get $$x))) + (func (export "f32.trunc") (param $$x f32) (result f32) (f32.trunc (local.get $$x))) + (func (export "f32.nearest") (param $$x f32) (result f32) (f32.nearest (local.get $$x))) + (func (export "f32.min") (param $$x f32) (param $$y f32) (result f32) (f32.min (local.get $$x) (local.get $$y))) + (func (export "f32.max") (param $$x f32) (param $$y f32) (result f32) (f32.max (local.get $$x) (local.get $$y))) + + (func (export "f64.add") (param $$x f64) (param $$y f64) (result f64) (f64.add (local.get $$x) (local.get $$y))) + (func (export "f64.sub") (param $$x f64) (param $$y f64) (result f64) (f64.sub (local.get $$x) (local.get $$y))) + (func (export "f64.mul") (param $$x f64) (param $$y f64) (result f64) (f64.mul (local.get $$x) (local.get $$y))) + (func (export "f64.div") (param $$x f64) (param $$y f64) (result f64) (f64.div (local.get $$x) (local.get $$y))) + (func (export "f64.sqrt") (param $$x f64) (result f64) (f64.sqrt (local.get $$x))) + (func (export "f64.abs") (param $$x f64) (result f64) (f64.abs (local.get $$x))) + (func (export "f64.neg") (param $$x f64) (result f64) (f64.neg (local.get $$x))) + (func (export "f64.copysign") (param $$x f64) (param $$y f64) (result f64) (f64.copysign (local.get $$x) (local.get $$y))) + (func (export "f64.ceil") (param $$x f64) (result f64) (f64.ceil (local.get $$x))) + (func (export "f64.floor") (param $$x f64) (result f64) (f64.floor (local.get $$x))) + (func (export "f64.trunc") (param $$x f64) (result f64) (f64.trunc (local.get $$x))) + (func (export "f64.nearest") (param $$x f64) (result f64) (f64.nearest (local.get $$x))) + (func (export "f64.min") (param $$x f64) (param $$y f64) (result f64) (f64.min (local.get $$x) (local.get $$y))) + (func (export "f64.max") (param $$x f64) (param $$y f64) (result f64) (f64.max (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/float_misc.wast:50 +assert_return( + () => invoke($0, `f32.add`, [value("f32", 1.1234568), value("f32", 0.00000000012345)]), + [value("f32", 1.1234568)], +); + +// ./test/core/float_misc.wast:51 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 1.123456789), + value("f64", 0.00000000012345), + ]), + [value("f64", 1.12345678912345)], +); + +// ./test/core/float_misc.wast:55 +assert_return( + () => invoke($0, `f32.add`, [value("f32", 1), value("f32", 0.000000059604645)]), + [value("f32", 1)], +); + +// ./test/core/float_misc.wast:56 +assert_return( + () => invoke($0, `f32.add`, [value("f32", 1), value("f32", 0.00000005960465)]), + [value("f32", 1.0000001)], +); + +// ./test/core/float_misc.wast:57 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 1), + value("f64", 0.00000000000000011102230246251565), + ]), + [value("f64", 1)], +); + +// ./test/core/float_misc.wast:58 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 1), + value("f64", 0.00000000000000011102230246251568), + ]), + [value("f64", 1.0000000000000002)], +); + +// ./test/core/float_misc.wast:61 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000011754942), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/float_misc.wast:62 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/float_misc.wast:67 +assert_return( + () => invoke($0, `f32.add`, [value("f32", 2147483600), value("f32", 1024.25)]), + [value("f32", 2147484700)], +); + +// ./test/core/float_misc.wast:68 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 9223372036854776000), + value("f64", 1024.25), + ]), + [value("f64", 9223372036854778000)], +); + +// ./test/core/float_misc.wast:72 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003645561009778199), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000292), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036455610097781983), + ], +); + +// ./test/core/float_misc.wast:75 +assert_return( + () => invoke($0, `f64.add`, [value("f64", 9007199254740992), value("f64", 1.00001)]), + [value("f64", 9007199254740994)], +); + +// ./test/core/float_misc.wast:78 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 9007199254740994), + value("f64", 0.9999847412109375), + ]), + [value("f64", 9007199254740994)], +); + +// ./test/core/float_misc.wast:81 +assert_return( + () => invoke($0, `f32.add`, [value("f32", 8388608), value("f32", 0.5)]), + [value("f32", 8388608)], +); + +// ./test/core/float_misc.wast:82 +assert_return( + () => invoke($0, `f32.add`, [value("f32", 8388609), value("f32", 0.5)]), + [value("f32", 8388610)], +); + +// ./test/core/float_misc.wast:83 +assert_return( + () => invoke($0, `f64.add`, [value("f64", 4503599627370496), value("f64", 0.5)]), + [value("f64", 4503599627370496)], +); + +// ./test/core/float_misc.wast:84 +assert_return( + () => invoke($0, `f64.add`, [value("f64", 4503599627370497), value("f64", 0.5)]), + [value("f64", 4503599627370498)], +); + +// ./test/core/float_misc.wast:87 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -6207600000000000000000000000000), + value("f32", 0.000000000000000000000000000002309799), + ]), + [value("f32", -6207600000000000000000000000000)], +); + +// ./test/core/float_misc.wast:88 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 209865800000000000000), + value("f32", -5270152500000000), + ]), + [value("f32", 209860530000000000000)], +); + +// ./test/core/float_misc.wast:89 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.0000000000000000000000001963492), + value("f32", 0.000000000000000000000000000000000000046220067), + ]), + [value("f32", 0.0000000000000000000000001963492)], +); + +// ./test/core/float_misc.wast:90 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 640905000000), + value("f32", -64449550000000000), + ]), + [value("f32", -64448910000000000)], +); + +// ./test/core/float_misc.wast:91 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.0000601966), + value("f32", 120372790000000000000000000000000), + ]), + [value("f32", 120372790000000000000000000000000)], +); + +// ./test/core/float_misc.wast:92 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009218993827002741), + value("f64", -1283078243878048500000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -1283078243878048500000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:93 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -96503407870148960000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000004670208988478548), + ]), + [value("f64", -96503407870148960000000)], +); + +// ./test/core/float_misc.wast:94 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.0000000000000000000000000000000000000000000028559147675434106), + value("f64", -0.00026124280570653086), + ]), + [value("f64", -0.00026124280570653086)], +); + +// ./test/core/float_misc.wast:95 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 417909928165296700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 79335564741512700000), + ]), + [ + value("f64", 417909928165296700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:96 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 8265442868747023000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 43603327839006250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 43603327839006250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:99 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 5238404000000000000000), + value("f32", -1570182.5), + ]), + [value("f32", 5238404000000000000000)], +); + +// ./test/core/float_misc.wast:100 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.00000000000004258938), + value("f32", -0.0000000000000000000000057092353), + ]), + [value("f32", 0.00000000000004258938)], +); + +// ./test/core/float_misc.wast:101 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -0.00000000000027251026), + value("f32", 83711560000000000000000000000000000000), + ]), + [value("f32", 83711560000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:102 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -0.0000000000000884536), + value("f32", -0.000000000000000000000000000000015165626), + ]), + [value("f32", -0.0000000000000884536)], +); + +// ./test/core/float_misc.wast:103 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.0010521035), + value("f32", -0.000000000000000000000000000000007582135), + ]), + [value("f32", 0.0010521035)], +); + +// ./test/core/float_misc.wast:104 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 1511135228188924600000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002760218100603169), + ]), + [value("f64", 1511135228188924600000000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:105 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 62386719760360280000000000000000000000000000000), + value("f64", -0.0000000000000000008592185488839212), + ]), + [value("f64", 62386719760360280000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:106 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004195022848436354), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000029225342022551453), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004195022848436354), + ], +); + +// ./test/core/float_misc.wast:107 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -215220546714824520000000000000000000000000000), + value("f64", -1112220412047137200000000000000000000000000), + ]), + [value("f64", -216332767126871650000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:108 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -13.6911535055856), + value("f64", 2066117898924419800000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 2066117898924419800000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:111 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -0.000000000000000000000000000000000006456021), + value("f32", 0.00000000000020219949), + ]), + [value("f32", 0.00000000000020219949)], +); + +// ./test/core/float_misc.wast:112 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -0.000026823169), + value("f32", 0.000000011196016), + ]), + [value("f32", -0.000026811973)], +); + +// ./test/core/float_misc.wast:113 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -128526170000), + value("f32", 0.0000000000000000000000000000000027356305), + ]), + [value("f32", -128526170000)], +); + +// ./test/core/float_misc.wast:114 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.000000000000000000000000000000000004158973), + value("f32", -1573528700), + ]), + [value("f32", -1573528700)], +); + +// ./test/core/float_misc.wast:115 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -0.0000000000000000000000000000000000009338769), + value("f32", 78647514000000000000000000000), + ]), + [value("f32", 78647514000000000000000000000)], +); + +// ./test/core/float_misc.wast:116 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021986596650683218), + value("f64", -235447594845461340000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -235447594845461340000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:117 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -314175619593595700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -30114098514611660000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -314175649707694230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:118 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013722858367681836), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000011571842749688977), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000011571842749688977), + ], +); + +// ./test/core/float_misc.wast:119 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009828583756551075), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016862581574752944), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009828583756551075), + ], +); + +// ./test/core/float_misc.wast:120 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -672584203522163500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 8374007930974482000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -672584203522163500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:123 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -210896605327889950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 581483233421196300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 581483022524591100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:124 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 102315792666821480000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 450204300797494900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 102315792667271680000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:125 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -130529978570956560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 154899434220186570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 154899434220186450000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:126 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 47629997434721684000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 455586451058259700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 455586451058259700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:127 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003958952516558414), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000023092460710062946), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230924607140219), + ], +); + +// ./test/core/float_misc.wast:130 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -43780558475415996000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -49680759347383435000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -49680759347383435000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:131 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 21174311168546080000000000000000000000000000000000000000000), + value("f64", -26385928474612128000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -26385928474612128000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:132 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -9508489561700635000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007858068235728165), + ]), + [ + value("f64", -9508489561700635000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:133 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005079144928553737), + value("f64", -354021720742499800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -354021720742499800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:134 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000004165382103988111), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010865942283516648), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000004165382103988111), + ], +); + +// ./test/core/float_misc.wast:137 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 97215650000000000000000000000000000), + value("f32", 305590870000000000000000000000000000000), + ]), + [value("f32", 305688080000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:138 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 270465630000000000000000000000000000000), + value("f32", -230236850000000000000000000000000), + ]), + [value("f32", 270465400000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:139 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 357209300000000000000000000000000000), + value("f32", -236494050000000000000000000000000000000), + ]), + [value("f32", -236136840000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:140 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -1484234100000000000000000000000000000), + value("f32", -328991400000000000000000000000000000000), + ]), + [value("f32", -330475620000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:141 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -219885600000000000000000000000000000000), + value("f32", -81560930000000000000000000000000000000), + ]), + [value("f32", -301446520000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:142 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 90390204939547630000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 22943337422040356000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 90390204939570580000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:143 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 165916059736246050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 12577349331444160000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 165916059748823400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:144 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -136351292561394300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 60507030603873580000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -136290785530790440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:145 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -34377613258227424000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 169947152758793490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 169947118381180220000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:146 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 92273427008645570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -39269416451018680000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 92273426969376150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:149 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.000000000000000000000000000000000000008313455), + value("f32", 0.000000000000000000000000000000000000000000873), + ]), + [value("f32", 0.000000000000000000000000000000000000008314328)], +); + +// ./test/core/float_misc.wast:150 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.000000000000000000000000000000000000000000052), + value("f32", -0.000000000000000000000000000000000000000000003), + ]), + [value("f32", 0.000000000000000000000000000000000000000000049)], +); + +// ./test/core/float_misc.wast:151 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -0.000000000000000000000000000000000000000000011), + value("f32", 0.000000000000000000000000000000000000005186284), + ]), + [value("f32", 0.000000000000000000000000000000000000005186273)], +); + +// ./test/core/float_misc.wast:152 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", -0.000000000000000000000000000000000000000000028), + value("f32", 0.00000000000000000000000000000000000023675283), + ]), + [value("f32", 0.0000000000000000000000000000000000002367528)], +); + +// ./test/core/float_misc.wast:153 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 0.000000000000000000000000000000000000000000635), + value("f32", -0.00000000000000000000000000000000000000003327), + ]), + [value("f32", -0.000000000000000000000000000000000000000032635)], +); + +// ./test/core/float_misc.wast:154 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028461489375936755), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005130160608603642), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002284011671009967), + ], +); + +// ./test/core/float_misc.wast:155 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000047404811354775), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008895417776504167), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004154936641026667), + ], +); + +// ./test/core/float_misc.wast:156 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009330082001250494), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000029863980609419717), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003919406261067021), + ], +); + +// ./test/core/float_misc.wast:157 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014418693884494008), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016324914377759187), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001906220493265178), + ], +); + +// ./test/core/float_misc.wast:158 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000043203619362281506), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002521511966399844), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017988499698283067), + ], +); + +// ./test/core/float_misc.wast:162 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 340282330000000000000000000000000000000), + value("f32", 20282410000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:163 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 179769313486231550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 19958403095347200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:166 +assert_return(() => invoke($0, `f32.add`, [value("f32", 2), value("f32", 2)]), [value("f32", 4)]); + +// ./test/core/float_misc.wast:167 +assert_return(() => invoke($0, `f64.add`, [value("f64", 2), value("f64", 2)]), [value("f64", 4)]); + +// ./test/core/float_misc.wast:170 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 10141204000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:171 +assert_return( + () => invoke($0, `f32.add`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 10141205000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_misc.wast:172 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 9979201547673598000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:173 +assert_return( + () => invoke($0, `f64.add`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 9979201547673600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/float_misc.wast:177 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 65536), value("f32", 0.000000000007275958)]), + [value("f32", 65536)], +); + +// ./test/core/float_misc.wast:178 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 65536), + value("f64", 0.000000000007275957614183426), + ]), + [value("f64", 65535.99999999999)], +); + +// ./test/core/float_misc.wast:182 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 1), value("f32", 0.000000029802322)]), + [value("f32", 1)], +); + +// ./test/core/float_misc.wast:183 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 1), value("f32", 0.000000029802326)]), + [value("f32", 0.99999994)], +); + +// ./test/core/float_misc.wast:184 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 1), + value("f64", 0.00000000000000005551115123125783), + ]), + [value("f64", 1)], +); + +// ./test/core/float_misc.wast:185 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 1), + value("f64", 0.00000000000000005551115123125784), + ]), + [value("f64", 0.9999999999999999)], +); + +// ./test/core/float_misc.wast:188 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", 0.00000000000000000000000000000002379208), + value("f32", -722129800000000000000000000000000000), + ]), + [value("f32", 722129800000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:189 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -842284000000000000000000000000000000), + value("f32", -11118414000000), + ]), + [value("f32", -842284000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:190 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", 1.4549444), + value("f32", -0.00000000000000000000000033792615), + ]), + [value("f32", 1.4549444)], +); + +// ./test/core/float_misc.wast:191 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", 0.0000000000000000000000000000000000094808914), + value("f32", 0.000000000000000000000018589502), + ]), + [value("f32", -0.000000000000000000000018589502)], +); + +// ./test/core/float_misc.wast:192 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", 0.000006181167), + value("f32", -0.0000000000000000000000000000000093959864), + ]), + [value("f32", 0.000006181167)], +); + +// ./test/core/float_misc.wast:193 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000775701650124413), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002524845082116609), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000775701650124413), + ], +); + +// ./test/core/float_misc.wast:194 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -20991871064832710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.0000000000000000000000000000000000000000000000038165079778426864), + ]), + [ + value("f64", -20991871064832710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:195 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028592030964162332), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020889465194336087), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028592030964162332), + ], +); + +// ./test/core/float_misc.wast:196 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000303879528930943), + value("f64", -23204941114021897000000000000000000000000000000), + ]), + [value("f64", 23204941114021897000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:197 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.00000000000000000000000000000000000000000014953904039036317), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010592252695645683), + ]), + [value("f64", -0.00000000000000000000000000000000000000000014953904039036317)], +); + +// ./test/core/float_misc.wast:200 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -448601660000000000000000000000000), + value("f32", -8984148000000000000000000000000000), + ]), + [value("f32", 8535546400000000000000000000000000)], +); + +// ./test/core/float_misc.wast:201 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -899427400000000000000000000000000), + value("f32", 91.579384), + ]), + [value("f32", -899427400000000000000000000000000)], +); + +// ./test/core/float_misc.wast:202 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -0.00000000000000000000000011975), + value("f32", 0.000000063140405), + ]), + [value("f32", -0.000000063140405)], +); + +// ./test/core/float_misc.wast:203 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -0.000000000000000000000011800487), + value("f32", -0.00031558736), + ]), + [value("f32", 0.00031558736)], +); + +// ./test/core/float_misc.wast:204 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -736483800000000000000000000000), + value("f32", 0.0000000000000000030824513), + ]), + [value("f32", -736483800000000000000000000000)], +); + +// ./test/core/float_misc.wast:205 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -9410469964196796000000000000000000000000000000000000000000000), + value("f64", -17306275691385970000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 17306275691385970000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:206 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002877908564233173), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002339448785991429), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002877908564233173), + ], +); + +// ./test/core/float_misc.wast:207 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000009719219783531962), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001572015082308034), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000009719219783531962), + ], +); + +// ./test/core/float_misc.wast:208 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034908896031751274), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000019928479721303208), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000019928479721303208), + ], +); + +// ./test/core/float_misc.wast:209 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -7538298763725556000000000000000000), + value("f64", 4447012580193329000000000000000000000000000000000000), + ]), + [value("f64", -4447012580193329000000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:212 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", 75846976000000000000000000000), + value("f32", 0.000046391753), + ]), + [value("f32", 75846976000000000000000000000)], +); + +// ./test/core/float_misc.wast:213 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -567139.9), + value("f32", -0.000000000030334842), + ]), + [value("f32", -567139.9)], +); + +// ./test/core/float_misc.wast:214 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -0.000000000017412261), + value("f32", -0.000000000000000017877793), + ]), + [value("f32", -0.000000000017412244)], +); + +// ./test/core/float_misc.wast:215 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -0.000065645545), + value("f32", 0.00014473806), + ]), + [value("f32", -0.00021038362)], +); + +// ./test/core/float_misc.wast:216 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", -0.00000000016016115), + value("f32", -0.000000000000000000000000000000085380075), + ]), + [value("f32", -0.00000000016016115)], +); + +// ./test/core/float_misc.wast:217 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000009358725267183177), + value("f64", -31137147338685164000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 31137147338685164000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:218 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -4390767596767215000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -67890457158958560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 67890457158958560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:219 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036288281010831153), + value("f64", 3383199683245004400000000000000000000000000000000000000), + ]), + [value("f64", -3383199683245004400000000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:220 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003645097751812619), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031423490969686624), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031423491006137603), + ], +); + +// ./test/core/float_misc.wast:221 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008021529638989887), + value("f64", -0.00006774972769072139), + ]), + [value("f64", 0.00006774972769072139)], +); + +// ./test/core/float_misc.wast:224 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.000000000000000000000005816988065793039), + value("f64", 0.000000000000000000000000000000000025021499241540866), + ]), + [value("f64", 0.000000000000000000000005816988065768018)], +); + +// ./test/core/float_misc.wast:225 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000043336683304809554), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016945582607476316), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000043336683135353726), + ], +); + +// ./test/core/float_misc.wast:226 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000006908052676315257), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000012001773734799856), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000012001773734799856), + ], +); + +// ./test/core/float_misc.wast:227 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.0000000000022044291547443813), + value("f64", -0.0000000000000000000027947429925618632), + ]), + [value("f64", -0.000000000002204429151949638)], +); + +// ./test/core/float_misc.wast:228 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.00000004016393569117761), + value("f64", 0.17053881989395447), + ]), + [value("f64", -0.17053877973001877)], +); + +// ./test/core/float_misc.wast:231 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010015106898667285), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004785375958943186), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000047853759589431757), + ], +); + +// ./test/core/float_misc.wast:232 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", -15618959953.641388), + value("f64", 598234410620718900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -598234410620718900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:233 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 38832071540376680000000000000000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000042192279274320304), + ]), + [value("f64", 38832071540376680000000000000000000)], +); + +// ./test/core/float_misc.wast:234 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010705986890807897), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017466607734737216), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010705986890807897), + ], +); + +// ./test/core/float_misc.wast:235 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.00000000000000000949378346261834), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014584885434950294), + ]), + [value("f64", 0.00000000000000000949378346261834)], +); + +// ./test/core/float_misc.wast:239 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 23.140692), value("f32", 3.1415927)]), + [value("f32", 19.9991)], +); + +// ./test/core/float_misc.wast:240 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 23.14069263277927), + value("f64", 3.141592653589793), + ]), + [value("f64", 19.999099979189477)], +); + +// ./test/core/float_misc.wast:243 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 2999999), value("f32", 2999998)]), + [value("f32", 1)], +); + +// ./test/core/float_misc.wast:244 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 1999999), value("f32", 1999995)]), + [value("f32", 4)], +); + +// ./test/core/float_misc.wast:245 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 1999999), value("f32", 1999993)]), + [value("f32", 6)], +); + +// ./test/core/float_misc.wast:246 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 400002), value("f32", 400001)]), + [value("f32", 1)], +); + +// ./test/core/float_misc.wast:247 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 400002), value("f32", 400000)]), + [value("f32", 2)], +); + +// ./test/core/float_misc.wast:248 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 2999999999999999), + value("f64", 2999999999999998), + ]), + [value("f64", 1)], +); + +// ./test/core/float_misc.wast:249 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 1999999999999999), + value("f64", 1999999999999995), + ]), + [value("f64", 4)], +); + +// ./test/core/float_misc.wast:250 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 1999999999999999), + value("f64", 1999999999999993), + ]), + [value("f64", 6)], +); + +// ./test/core/float_misc.wast:251 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 400000000000002), + value("f64", 400000000000001), + ]), + [value("f64", 1)], +); + +// ./test/core/float_misc.wast:252 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 400000000000002), + value("f64", 400000000000000), + ]), + [value("f64", 2)], +); + +// ./test/core/float_misc.wast:255 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754942), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/float_misc.wast:256 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/float_misc.wast:259 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 1.0000001), value("f32", 0.99999994)]), + [value("f32", 0.00000017881393)], +); + +// ./test/core/float_misc.wast:260 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 1.0000001), value("f32", 1)]), + [value("f32", 0.00000011920929)], +); + +// ./test/core/float_misc.wast:261 +assert_return( + () => invoke($0, `f32.sub`, [value("f32", 1), value("f32", 0.99999994)]), + [value("f32", 0.000000059604645)], +); + +// ./test/core/float_misc.wast:262 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 1.0000000000000002), + value("f64", 0.9999999999999999), + ]), + [value("f64", 0.00000000000000033306690738754696)], +); + +// ./test/core/float_misc.wast:263 +assert_return( + () => invoke($0, `f64.sub`, [value("f64", 1.0000000000000002), value("f64", 1)]), + [value("f64", 0.0000000000000002220446049250313)], +); + +// ./test/core/float_misc.wast:264 +assert_return( + () => invoke($0, `f64.sub`, [value("f64", 1), value("f64", 0.9999999999999999)]), + [value("f64", 0.00000000000000011102230246251565)], +); + +// ./test/core/float_misc.wast:268 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 10141204000000000000000000000000), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:269 +assert_return( + () => invoke($0, `f32.sub`, [ + value("f32", 340282350000000000000000000000000000000), + value("f32", 10141205000000000000000000000000), + ]), + [value("f32", 340282330000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:270 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 9979201547673598000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:271 +assert_return( + () => invoke($0, `f64.sub`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 9979201547673600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:274 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 1000000000000000), + value("f32", 1000000000000000), + ]), + [value("f32", 999999940000000000000000000000)], +); + +// ./test/core/float_misc.wast:275 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 100000000000000000000), + value("f32", 100000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_misc.wast:276 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 10000000000000000000000000), + value("f32", 10000000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_misc.wast:277 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 1000000000000000), + value("f64", 1000000000000000), + ]), + [value("f64", 1000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:278 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 100000000000000000000), + value("f64", 100000000000000000000), + ]), + [value("f64", 10000000000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:279 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 10000000000000000000000000), + value("f64", 10000000000000000000000000), + ]), + [value("f64", 100000000000000030000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:284 +assert_return( + () => invoke($0, `f32.mul`, [value("f32", 1848874900), value("f32", 19954563000)]), + [value("f32", 36893493000000000000)], +); + +// ./test/core/float_misc.wast:285 +assert_return( + () => invoke($0, `f64.mul`, [value("f64", 1848874847), value("f64", 19954562207)]), + [value("f64", 36893488147419110000)], +); + +// ./test/core/float_misc.wast:289 +assert_return( + () => invoke($0, `f32.mul`, [value("f32", 77.1), value("f32", 850)]), + [value("f32", 65535)], +); + +// ./test/core/float_misc.wast:290 +assert_return( + () => invoke($0, `f64.mul`, [value("f64", 77.1), value("f64", 850)]), + [value("f64", 65534.99999999999)], +); + +// ./test/core/float_misc.wast:293 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -2493839400000000000), + value("f32", 0.000000000021176054), + ]), + [value("f32", -52809680)], +); + +// ./test/core/float_misc.wast:294 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -6777248400000000000000000000000), + value("f32", -0.00000000000000000000000000000034758242), + ]), + [value("f32", 2.3556523)], +); + +// ./test/core/float_misc.wast:295 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -8384397600000000000000000000), + value("f32", -0.000000000000000000000000000011948991), + ]), + [value("f32", 0.10018509)], +); + +// ./test/core/float_misc.wast:296 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -656765400000000000000000), + value("f32", -0.000000000000000000000046889766), + ]), + [value("f32", 30.795576)], +); + +// ./test/core/float_misc.wast:297 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 13328204000000000), + value("f32", 45.567223), + ]), + [value("f32", 607329200000000000)], +); + +// ./test/core/float_misc.wast:298 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -99426226093342430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 583177241514245140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/float_misc.wast:299 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002748155824301909), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000002093035437779455), + ]), + [value("f64", 0)], +); + +// ./test/core/float_misc.wast:300 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 464888257371302500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -159272886487254360000000000000000), + ]), + [ + value("f64", -74044094645556960000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:301 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008261927764172427), + value("f64", 36684744190529535000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -3030867065492991300000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:302 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 253838958331769250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007842892881810105), + ]), + [value("f64", 0.00000000000000000019908317594263248)], +); + +// ./test/core/float_misc.wast:305 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -0.0000000000000000000000000020153333), + value("f32", -5031353000000000000000000000), + ]), + [value("f32", 10.139854)], +); + +// ./test/core/float_misc.wast:306 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 12286325000000000000000), + value("f32", 749601.8), + ]), + [value("f32", 9209852000000000000000000000)], +); + +// ./test/core/float_misc.wast:307 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -0.0000000002763514), + value("f32", -35524714000000000000000), + ]), + [value("f32", 9817304000000)], +); + +// ./test/core/float_misc.wast:308 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 218931220000000000000), + value("f32", -40298.785), + ]), + [value("f32", -8822662000000000000000000)], +); + +// ./test/core/float_misc.wast:309 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 1691996300), + value("f32", -122103350000000000000), + ]), + [value("f32", -206598410000000000000000000000)], +); + +// ./test/core/float_misc.wast:310 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007576316076452304), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004601355879514986), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003486132652344772), + ], +); + +// ./test/core/float_misc.wast:311 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000012228616081443885), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008055526185180067), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009850793705258527), + ], +); + +// ./test/core/float_misc.wast:312 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -2068651246039250800000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -366801071583254800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/float_misc.wast:313 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 1543238835610281000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007370621385787007), + ]), + [ + value("f64", 1137462916512617700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:314 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 2235876566242058700000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -760669005920257000000000000000000000000000000000000), + ]), + [ + value("f64", -1700762005003744000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:317 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -110087030000000), + value("f32", -54038020000000000000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_misc.wast:318 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -0.19366351), + value("f32", 0.0000000000000000000000000000029748954), + ]), + [value("f32", -0.0000000000000000000000000000005761287)], +); + +// ./test/core/float_misc.wast:319 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -0.0000034300713), + value("f32", 77991523000000000000000000000000), + ]), + [value("f32", -267516490000000000000000000)], +); + +// ./test/core/float_misc.wast:320 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -99003850000000000), + value("f32", 0.000000000000000000000000000020933774), + ]), + [value("f32", -0.0000000000020725242)], +); + +// ./test/core/float_misc.wast:321 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -129919.07), + value("f32", 0.0000000000000000000000000000000000018480999), + ]), + [value("f32", -0.00000000000000000000000000000024010342)], +); + +// ./test/core/float_misc.wast:322 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006625572200844895), + value("f64", -37374020681740010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0.00000000000000000024762427246273877)], +); + +// ./test/core/float_misc.wast:323 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 821076848561758000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012976552328552289), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000010654746691124455), + ], +); + +// ./test/core/float_misc.wast:324 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -10223449294906041000000000000000000000000000000000000), + value("f64", 1970855583334680500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -20148942123804574000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:325 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 2918243080119086000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -63633170941689700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -Infinity)], +); + +// ./test/core/float_misc.wast:326 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 3407037798802672000000000), + value("f64", 1225791423971563000000), + ]), + [value("f64", 4176317714919266400000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:329 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044091927284399547), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011518840702296592), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005078878866462432), + ], +); + +// ./test/core/float_misc.wast:330 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.002980041826472432), + value("f64", 63125412993218000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -188116371033135940000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:331 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -308344578081300100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010081049555008529), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000031084369716557833), + ], +); + +// ./test/core/float_misc.wast:332 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 349387501315677300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 2131316915930809900), + ]), + [ + value("f64", 744655491768901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:333 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000012500108005100234), + value("f64", 1035265704160467500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -12940933115981990000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:336 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008947461661755698), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020853844141312436), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018658897095462173), + ], +); + +// ./test/core/float_misc.wast:337 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.00000000000000001161813037330394), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018737038135583668), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021768935186877886), + ], +); + +// ./test/core/float_misc.wast:338 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021752326768352433), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006631210068072052), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014424424827029184), + ], +); + +// ./test/core/float_misc.wast:339 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007149518157441743), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000022770445062365393), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001627977104264113), + ], +); + +// ./test/core/float_misc.wast:340 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004817739302150786), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000025375023049719763), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012225024583961697), + ], +); + +// ./test/core/float_misc.wast:343 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 46576441629501554000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007021344893525714), + ]), + [value("f64", 0.000000003270292605938992)], +); + +// ./test/core/float_misc.wast:344 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.012451716278313712), + value("f64", 0.000000000000000000000000000000000000000000001945309177849331), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000002422243795617958), + ], +); + +// ./test/core/float_misc.wast:345 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -3.8312314777598586), + value("f64", 0.0000000000009039887741742674), + ]), + [value("f64", -0.0000000000034633902471580017)], +); + +// ./test/core/float_misc.wast:346 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009843582638849689), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000003375405654777583), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033226084502443684), + ], +); + +// ./test/core/float_misc.wast:347 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", -260544537094514460000000), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000032887528185809035), + ]), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000008568665807354412), + ], +); + +// ./test/core/float_misc.wast:350 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 0.00000000000000000000002646978), + value("f32", 0.00000000000000000000002646978), + ]), + [value("f32", 0)], +); + +// ./test/core/float_misc.wast:351 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 0.000000000000000000000026469783), + value("f32", 0.000000000000000000000026469783), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/float_misc.wast:352 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015717277847026285), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015717277847026285), + ]), + [value("f64", 0)], +); + +// ./test/core/float_misc.wast:353 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015717277847026288), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015717277847026288), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/float_misc.wast:356 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 18446743000000000000), + value("f32", 18446743000000000000), + ]), + [value("f32", 340282330000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:357 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 18446744000000000000), + value("f32", 18446744000000000000), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_misc.wast:358 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 13407807929942596000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 13407807929942596000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 179769313486231550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:359 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 13407807929942597000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 13407807929942597000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", Infinity)], +); + +// ./test/core/float_misc.wast:362 +assert_return( + () => invoke($0, `f32.mul`, [value("f32", 1.0000001), value("f32", 1.0000001)]), + [value("f32", 1.0000002)], +); + +// ./test/core/float_misc.wast:363 +assert_return( + () => invoke($0, `f32.mul`, [value("f32", 0.99999994), value("f32", 0.99999994)]), + [value("f32", 0.9999999)], +); + +// ./test/core/float_misc.wast:364 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 1.0000000000000002), + value("f64", 1.0000000000000002), + ]), + [value("f64", 1.0000000000000004)], +); + +// ./test/core/float_misc.wast:365 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.9999999999999999), + value("f64", 0.9999999999999999), + ]), + [value("f64", 0.9999999999999998)], +); + +// ./test/core/float_misc.wast:368 +assert_return( + () => invoke($0, `f32.mul`, [value("f32", 1.0000001), value("f32", 0.99999994)]), + [value("f32", 1)], +); + +// ./test/core/float_misc.wast:369 +assert_return( + () => invoke($0, `f32.mul`, [value("f32", 1.0000002), value("f32", 0.9999999)]), + [value("f32", 1.0000001)], +); + +// ./test/core/float_misc.wast:370 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 1.0000000000000002), + value("f64", 0.9999999999999999), + ]), + [value("f64", 1)], +); + +// ./test/core/float_misc.wast:371 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 1.0000000000000004), + value("f64", 0.9999999999999998), + ]), + [value("f64", 1.0000000000000002)], +); + +// ./test/core/float_misc.wast:375 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.00000011920929), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/float_misc.wast:376 +assert_return( + () => invoke($0, `f64.mul`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.0000000000000002220446049250313), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/float_misc.wast:379 +assert_return( + () => invoke($0, `f32.mul`, [ + value("f32", -16.001465), + value("f32", 0.000000000000000000000000000000000000000298465), + ]), + [value("f32", -0.000000000000000000000000000000000000004775883)], +); + +// ./test/core/float_misc.wast:382 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 1.1234568), value("f32", 100)]), + [value("f32", 0.011234568)], +); + +// ./test/core/float_misc.wast:383 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 8391667), value("f32", 12582905)]), + [value("f32", 0.6669102)], +); + +// ./test/core/float_misc.wast:384 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 65536), value("f32", 0.000000000007275958)]), + [value("f32", 9007199000000000)], +); + +// ./test/core/float_misc.wast:385 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1.8622957), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000005472795)], +); + +// ./test/core/float_misc.wast:386 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 4), value("f32", 3)]), + [value("f32", 1.3333334)], +); + +// ./test/core/float_misc.wast:387 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 1.123456789), value("f64", 100)]), + [value("f64", 0.01123456789)], +); + +// ./test/core/float_misc.wast:388 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 8391667), value("f64", 12582905)]), + [value("f64", 0.6669101451532854)], +); + +// ./test/core/float_misc.wast:389 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 65536), + value("f64", 0.000000000007275957614183426), + ]), + [value("f64", 9007199254740992)], +); + +// ./test/core/float_misc.wast:390 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 1.8622957468032837), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001035936395755283), + ], +); + +// ./test/core/float_misc.wast:391 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 4), value("f64", 3)]), + [value("f64", 1.3333333333333333)], +); + +// ./test/core/float_misc.wast:395 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 4195835), value("f32", 3145727)]), + [value("f32", 1.3338205)], +); + +// ./test/core/float_misc.wast:396 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 4195835), value("f64", 3145727)]), + [value("f64", 1.333820449136241)], +); + +// ./test/core/float_misc.wast:399 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 0.000000000000005029633), + value("f32", 336324380000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/float_misc.wast:400 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 0.000000000000000000000000008921987), + value("f32", 354097530000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/float_misc.wast:401 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", -104167.47), + value("f32", 0.0000000000000000000000015866623), + ]), + [value("f32", -65651950000000000000000000000)], +); + +// ./test/core/float_misc.wast:402 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", -0.000000000000000000000024938657), + value("f32", -0.00000000000000000000000000000000000036230088), + ]), + [value("f32", 68834107000000)], +); + +// ./test/core/float_misc.wast:403 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", -4142204200000), + value("f32", 0.0000000000000000000000011954948), + ]), + [value("f32", -3464845000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:404 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 193901163824483840000000000000000000000000000), + value("f64", 25290742357348314000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0.000000000000000000000007666883046955921)], +); + +// ./test/core/float_misc.wast:405 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006600332149752304), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003007915153468629), + ]), + [ + value("f64", 219432125342399270000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:406 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -934827517366190300000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4809309529035847000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000019437873809582001), + ], +); + +// ./test/core/float_misc.wast:407 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -17598339088417535000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 199386072580682850000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -88262629684409150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:408 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -4566268877844991000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 31282495822334530000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -145968816036246260000000000)], +); + +// ./test/core/float_misc.wast:411 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", -1039406400000000000000), + value("f32", -0.000000000000000000000000012965966), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_misc.wast:412 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 0.000000000000026831563), + value("f32", 31241038000000), + ]), + [value("f32", 0.0000000000000000000000000008588563)], +); + +// ./test/core/float_misc.wast:413 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1.2734247), + value("f32", -692783700000000000000000000), + ]), + [value("f32", -0.0000000000000000000000000018381274)], +); + +// ./test/core/float_misc.wast:414 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 0.00000000000000068988827), + value("f32", 0.000000000000000000000000000000000000003762676), + ]), + [value("f32", 183350460000000000000000)], +); + +// ./test/core/float_misc.wast:415 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1819916200000000000000000000), + value("f32", 205067030000000000000000000), + ]), + [value("f32", 8.874739)], +); + +// ./test/core/float_misc.wast:416 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021137715924428077), + value("f64", -16733261612910253000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0)], +); + +// ./test/core/float_misc.wast:417 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008116644948016275), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006517571349002277), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012453480772801648), + ], +); + +// ./test/core/float_misc.wast:418 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009335476912259029), + value("f64", -39099281466396.5), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000023876338802497726), + ], +); + +// ./test/core/float_misc.wast:419 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -1686856985488590200000000), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013535993861076857), + ]), + [ + value("f64", -12462010568276012000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:420 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -173388773324941200000000000000000000000000000000000000000000000000000000), + value("f64", -70026160475217470), + ]), + [value("f64", 2476057121342590000000000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:423 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 93506190), + value("f32", 0.0000000000000000000000000000000000028760885), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_misc.wast:424 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", -200575400000000000000000), + value("f32", 246697220), + ]), + [value("f32", -813042800000000)], +); + +// ./test/core/float_misc.wast:425 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 384712200000), + value("f32", -107037850000000000000000000000), + ]), + [value("f32", -0.00000000000000000359417)], +); + +// ./test/core/float_misc.wast:426 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", -4156665000000000000000000000000000), + value("f32", -901.4192), + ]), + [value("f32", 4611245300000000000000000000000)], +); + +// ./test/core/float_misc.wast:427 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", -6702387000000000000000000000), + value("f32", -14000.255), + ]), + [value("f32", 478733200000000000000000)], +); + +// ./test/core/float_misc.wast:428 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010085269598907525), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018780374032850215), + ]), + [value("f64", -53701111496.85621)], +); + +// ./test/core/float_misc.wast:429 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -32571664562951100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005885738519211168), + ]), + [value("f64", Infinity)], +); + +// ./test/core/float_misc.wast:430 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031640946861233317), + value("f64", 0.000000000000000000045854510556516254), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006900291046010721), + ], +); + +// ./test/core/float_misc.wast:431 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -526842242946656600000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014816907071451201), + ]), + [ + value("f64", 355568298030134360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:432 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 4039956270017490000000000000000000000000000000000000000), + value("f64", -47097881971884274000000000000000000000000000000000000000000000000), + ]), + [value("f64", -0.0000000000857778757955442)], +); + +// ./test/core/float_misc.wast:435 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -203959560468347600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -74740887394612260000000000000000000000000000000000000000000), + ]), + [ + value("f64", 2728888665604071000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:436 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -304261712294687660000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -2655679232658824300000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 114570204320220420000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:437 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 49235240512480730000000000000000000000000000000000000000), + value("f64", -366340828310036700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013439736089369927), + ], +); + +// ./test/core/float_misc.wast:438 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 289260843556341600000000000000000000000000000000000000000000000000), + value("f64", 517194875837335500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000005592879146144478), + ], +); + +// ./test/core/float_misc.wast:439 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -421542582344268600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1428505854670649100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -295093352936560340000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:442 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 1.8622957433108482), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010359363938125513), + ], +); + +// ./test/core/float_misc.wast:443 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008566632480779937), + value("f64", 5381.2699796556235), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001591935084685746), + ], +); + +// ./test/core/float_misc.wast:444 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -0.00000000000000000000000000000000000000000008196220919495565), + value("f64", -10406557086484777000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007876015911295176), + ], +); + +// ./test/core/float_misc.wast:445 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007052801866447111), + value("f64", -13767429405781133000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005122816800851397), + ], +); + +// ./test/core/float_misc.wast:446 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022655621734165475), + value("f64", 133219932963494700000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017006180103974106), + ], +); + +// ./test/core/float_misc.wast:447 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004196304106554003), + value("f64", -9789327.297653636), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000042866113053139), + ], +); + +// ./test/core/float_misc.wast:450 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1038860800000000000000000000), + value("f32", 6211079500000), + ]), + [value("f32", 167259300000000)], +); + +// ./test/core/float_misc.wast:451 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1869033000000000000000000000), + value("f32", -112355730000000000000000000000000), + ]), + [value("f32", -0.00001663496)], +); + +// ./test/core/float_misc.wast:452 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 3290747200000000000000000), + value("f32", 0.9064788), + ]), + [value("f32", 3630252700000000000000000)], +); + +// ./test/core/float_misc.wast:453 +assert_return( + () => invoke($0, `f32.div`, [value("f32", -908946.56), value("f32", -17034289000)]), + [value("f32", 0.000053359818)], +); + +// ./test/core/float_misc.wast:454 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", -0.00000000000024092477), + value("f32", -89840810000000000), + ]), + [value("f32", 0.0000000000000000000000000000026816852)], +); + +// ./test/core/float_misc.wast:455 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 3910973045785834000), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008392730733897136), + ]), + [ + value("f64", -46599529638070336000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:456 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.0000000000000000000000000000000000000008379351966732404), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021077277802048832), + ]), + [ + value("f64", -3975538039318286000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:457 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 4561142017854715000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 1500578067736849100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 3039589952.6465592)], +); + +// ./test/core/float_misc.wast:458 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -6236072401827852000000000000000000000000000000000000000), + value("f64", 83170632504609900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007497925907299316), + ], +); + +// ./test/core/float_misc.wast:459 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009757271330468098), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035613812243480865), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000002739743575824061), + ], +); + +// ./test/core/float_misc.wast:462 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.00000000000000001046256872449641), + value("f64", 1.8150892711657447), + ]), + [value("f64", 0.000000000000000005764217160391678)], +); + +// ./test/core/float_misc.wast:463 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.00000000000000000000000000000022038268106596436), + value("f64", -0.0000000000002859803943943555), + ]), + [value("f64", -0.0000000000000000007706216418530616)], +); + +// ./test/core/float_misc.wast:464 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.0000000000007596539988437179), + value("f64", 0.00000000000000000000000000000000021055358831337124), + ]), + [value("f64", 3607889112357986600000)], +); + +// ./test/core/float_misc.wast:465 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 1120696114500866900000000000), + value("f64", 159713233802866500000000000000), + ]), + [value("f64", 0.007016927074960728)], +); + +// ./test/core/float_misc.wast:466 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.0006342142502301953), + value("f64", -6391950865520085), + ]), + [value("f64", -0.00000000000000000009922076429769178)], +); + +// ./test/core/float_misc.wast:469 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754942), + ]), + [value("f32", 1.0000001)], +); + +// ./test/core/float_misc.wast:470 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754944), + ]), + [value("f32", 0.9999999)], +); + +// ./test/core/float_misc.wast:471 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ]), + [value("f64", 1.0000000000000002)], +); + +// ./test/core/float_misc.wast:472 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [value("f64", 0.9999999999999998)], +); + +// ./test/core/float_misc.wast:475 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 0.00000023841856), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0)], +); + +// ./test/core/float_misc.wast:476 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 0.00000023841858), + value("f32", 340282350000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000000000001)], +); + +// ./test/core/float_misc.wast:477 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.00000000000000044408920985006257), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 0)], +); + +// ./test/core/float_misc.wast:478 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.0000000000000004440892098500626), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/float_misc.wast:481 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000002938736), + ]), + [value("f32", Infinity)], +); + +// ./test/core/float_misc.wast:482 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1), + value("f32", 0.000000000000000000000000000000000000002938737), + ]), + [value("f32", 340282200000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:483 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 1), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ]), + [value("f64", Infinity)], +); + +// ./test/core/float_misc.wast:484 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 1), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000556268464626801), + ]), + [ + value("f64", 179769313486231430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:487 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1), + value("f32", 85070600000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000011754942)], +); + +// ./test/core/float_misc.wast:488 +assert_return( + () => invoke($0, `f32.div`, [ + value("f32", 1), + value("f32", 85070590000000000000000000000000000000), + ]), + [value("f32", 0.000000000000000000000000000000000000011754944)], +); + +// ./test/core/float_misc.wast:489 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 1), + value("f64", 44942328371557910000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/float_misc.wast:490 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 1), + value("f64", 44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/float_misc.wast:500 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 1), value("f32", 3)]), + [value("f32", 0.33333334)], +); + +// ./test/core/float_misc.wast:501 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 3), value("f32", 9)]), + [value("f32", 0.33333334)], +); + +// ./test/core/float_misc.wast:502 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 9), value("f32", 27)]), + [value("f32", 0.33333334)], +); + +// ./test/core/float_misc.wast:503 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 1), value("f64", 3)]), + [value("f64", 0.3333333333333333)], +); + +// ./test/core/float_misc.wast:504 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 3), value("f64", 9)]), + [value("f64", 0.3333333333333333)], +); + +// ./test/core/float_misc.wast:505 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 9), value("f64", 27)]), + [value("f64", 0.3333333333333333)], +); + +// ./test/core/float_misc.wast:508 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 1.0000001), value("f32", 0.99999994)]), + [value("f32", 1.0000002)], +); + +// ./test/core/float_misc.wast:509 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 0.99999994), value("f32", 1.0000001)]), + [value("f32", 0.9999998)], +); + +// ./test/core/float_misc.wast:510 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 1), value("f32", 0.99999994)]), + [value("f32", 1.0000001)], +); + +// ./test/core/float_misc.wast:511 +assert_return( + () => invoke($0, `f32.div`, [value("f32", 1), value("f32", 1.0000001)]), + [value("f32", 0.9999999)], +); + +// ./test/core/float_misc.wast:512 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 1.0000000000000002), + value("f64", 0.9999999999999999), + ]), + [value("f64", 1.0000000000000004)], +); + +// ./test/core/float_misc.wast:513 +assert_return( + () => invoke($0, `f64.div`, [ + value("f64", 0.9999999999999999), + value("f64", 1.0000000000000002), + ]), + [value("f64", 0.9999999999999997)], +); + +// ./test/core/float_misc.wast:514 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 1), value("f64", 0.9999999999999999)]), + [value("f64", 1.0000000000000002)], +); + +// ./test/core/float_misc.wast:515 +assert_return( + () => invoke($0, `f64.div`, [value("f64", 1), value("f64", 1.0000000000000002)]), + [value("f64", 0.9999999999999998)], +); + +// ./test/core/float_misc.wast:519 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 171)]), [value("f32", 13.076696)]); + +// ./test/core/float_misc.wast:520 +assert_return( + () => invoke($0, `f32.sqrt`, [value("f32", 0.000000160795)]), + [value("f32", 0.00040099252)], +); + +// ./test/core/float_misc.wast:521 +assert_return(() => invoke($0, `f64.sqrt`, [value("f64", 171)]), [value("f64", 13.076696830622021)]); + +// ./test/core/float_misc.wast:522 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 0.000000160795)]), + [value("f64", 0.00040099251863345283)], +); + +// ./test/core/float_misc.wast:525 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.00000000000000000000000000000000000000000000000004316357580352844), + ]), + [value("f64", 0.00000000000000000000000020775845543209175)], +); + +// ./test/core/float_misc.wast:526 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 676253300479648500000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 822346216918183800000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:527 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 17485296624861996000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 4181542373916829400000000000000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:528 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 0.000000000009593720960603523)]), + [value("f64", 0.0000030973732355987585)], +); + +// ./test/core/float_misc.wast:529 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006348452898717835), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000002519613640762773), + ], +); + +// ./test/core/float_misc.wast:533 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 0.9999999999999999)]), + [value("f64", 0.9999999999999999)], +); + +// ./test/core/float_misc.wast:536 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 0.12963942)]), [value("f32", 0.36005473)]); + +// ./test/core/float_misc.wast:537 +assert_return( + () => invoke($0, `f32.sqrt`, [value("f32", 2345875800000000000000000000000)]), + [value("f32", 1531625200000000)], +); + +// ./test/core/float_misc.wast:538 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 0.078786574)]), [value("f32", 0.28068945)]); + +// ./test/core/float_misc.wast:539 +assert_return( + () => invoke($0, `f32.sqrt`, [value("f32", 0.00000000000000000000051371026)]), + [value("f32", 0.000000000022665177)], +); + +// ./test/core/float_misc.wast:540 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 0.00090167153)]), [value("f32", 0.030027846)]); + +// ./test/core/float_misc.wast:541 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009591922760825561), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009793836204892116), + ], +); + +// ./test/core/float_misc.wast:542 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 935787535216400500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 30590644570136150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:543 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 147706699783365580000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [value("f64", 12153464517715332000000000000000000000000000000000000000000)], +); + +// ./test/core/float_misc.wast:544 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 48800457180027890000000000000000)]), + [value("f64", 6985732401117859)], +); + +// ./test/core/float_misc.wast:545 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 7618977687174540000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 2760249569726357000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:548 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 154481010)]), [value("f32", 12429.039)]); + +// ./test/core/float_misc.wast:549 +assert_return( + () => invoke($0, `f32.sqrt`, [ + value("f32", 0.00000000000000000000000000000000010471305), + ]), + [value("f32", 0.00000000000000001023294)], +); + +// ./test/core/float_misc.wast:550 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 0.00003790637)]), [value("f32", 0.006156815)]); + +// ./test/core/float_misc.wast:551 +assert_return( + () => invoke($0, `f32.sqrt`, [ + value("f32", 0.00000000000000000000000000000000000089607535), + ]), + [value("f32", 0.0000000000000000009466126)], +); + +// ./test/core/float_misc.wast:552 +assert_return( + () => invoke($0, `f32.sqrt`, [ + value("f32", 0.0000000000000000000000000000000000001687712), + ]), + [value("f32", 0.00000000000000000041081773)], +); + +// ./test/core/float_misc.wast:553 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 316996264378909500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 563024212959717700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:554 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040573669271847993), + ]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020142906759414837), + ], +); + +// ./test/core/float_misc.wast:555 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 0.0000000015299861660588838)]), + [value("f64", 0.00003911503759500793)], +); + +// ./test/core/float_misc.wast:556 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000002822766928951239), + ]), + [value("f64", 0.0000000000000000000000000000000000005312971794533864)], +); + +// ./test/core/float_misc.wast:557 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 14375957727045067000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 119899782014168260000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:560 +assert_return( + () => invoke($0, `f32.sqrt`, [value("f32", 464023420000000000000000000000000000)]), + [value("f32", 681192700000000000)], +); + +// ./test/core/float_misc.wast:561 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 47536.133)]), [value("f32", 218.02783)]); + +// ./test/core/float_misc.wast:562 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 0.812613)]), [value("f32", 0.9014505)]); + +// ./test/core/float_misc.wast:563 +assert_return( + () => invoke($0, `f32.sqrt`, [value("f32", 0.000000000000000000000000009549605)]), + [value("f32", 0.00000000000009772208)], +); + +// ./test/core/float_misc.wast:564 +assert_return( + () => invoke($0, `f32.sqrt`, [value("f32", 0.000000000000000000000000000068856485)]), + [value("f32", 0.000000000000008297981)], +); + +// ./test/core/float_misc.wast:565 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 2349768917495332200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 1532895599020146000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:566 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000029262574743429683), + ]), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000005409489323718985), + ], +); + +// ./test/core/float_misc.wast:567 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 377335087484490800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 19425114864126050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:568 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 0.000000000000035498432023945234)]), + [value("f64", 0.00000018841027579180822)], +); + +// ./test/core/float_misc.wast:569 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013747419336166767), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000011724938949165905), + ], +); + +// ./test/core/float_misc.wast:572 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015535152663257847), + ]), + [`canonical_nan`], +); + +// ./test/core/float_misc.wast:573 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 18763296348029700000000000000000)]), + [value("f64", 4331662076851067)], +); + +// ./test/core/float_misc.wast:574 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000274405777036165), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000523837548325972), + ], +); + +// ./test/core/float_misc.wast:575 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000015613859952920445), + ]), + [value("f64", 0.0000000000000000000000000000000000000000039514377070783294)], +); + +// ./test/core/float_misc.wast:576 +assert_return( + () => invoke($0, `f64.sqrt`, [ + value("f64", 619303768945071200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + value("f64", 24885814612848646000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/float_misc.wast:579 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 1.0000001)]), [value("f32", 1)]); + +// ./test/core/float_misc.wast:580 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 1.0000002)]), [value("f32", 1.0000001)]); + +// ./test/core/float_misc.wast:581 +assert_return(() => invoke($0, `f64.sqrt`, [value("f64", 1.0000000000000002)]), [value("f64", 1)]); + +// ./test/core/float_misc.wast:582 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 1.0000000000000004)]), + [value("f64", 1.0000000000000002)], +); + +// ./test/core/float_misc.wast:585 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 0.9999999)]), [value("f32", 0.99999994)]); + +// ./test/core/float_misc.wast:586 +assert_return(() => invoke($0, `f32.sqrt`, [value("f32", 0.9999998)]), [value("f32", 0.9999999)]); + +// ./test/core/float_misc.wast:587 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 0.9999999999999998)]), + [value("f64", 0.9999999999999999)], +); + +// ./test/core/float_misc.wast:588 +assert_return( + () => invoke($0, `f64.sqrt`, [value("f64", 0.9999999999999997)]), + [value("f64", 0.9999999999999998)], +); + +// ./test/core/float_misc.wast:592 +assert_return( + () => invoke($0, `f32.abs`, [bytes("f32", [0xe2, 0xf1, 0x80, 0x7f])]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0x7f])], +); + +// ./test/core/float_misc.wast:593 +assert_return( + () => invoke($0, `f32.abs`, [bytes("f32", [0xe2, 0xf1, 0x80, 0xff])]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0x7f])], +); + +// ./test/core/float_misc.wast:594 +assert_return( + () => invoke($0, `f64.abs`, [ + bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f]), + ]), + [bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f])], +); + +// ./test/core/float_misc.wast:595 +assert_return( + () => invoke($0, `f64.abs`, [ + bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0xff]), + ]), + [bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f])], +); + +// ./test/core/float_misc.wast:597 +assert_return( + () => invoke($0, `f32.neg`, [bytes("f32", [0xe2, 0xf1, 0x80, 0x7f])]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0xff])], +); + +// ./test/core/float_misc.wast:598 +assert_return( + () => invoke($0, `f32.neg`, [bytes("f32", [0xe2, 0xf1, 0x80, 0xff])]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0x7f])], +); + +// ./test/core/float_misc.wast:599 +assert_return( + () => invoke($0, `f64.neg`, [ + bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f]), + ]), + [bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0xff])], +); + +// ./test/core/float_misc.wast:600 +assert_return( + () => invoke($0, `f64.neg`, [ + bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0xff]), + ]), + [bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f])], +); + +// ./test/core/float_misc.wast:602 +assert_return( + () => invoke($0, `f32.copysign`, [ + bytes("f32", [0xe2, 0xf1, 0x80, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0x7f])], +); + +// ./test/core/float_misc.wast:603 +assert_return( + () => invoke($0, `f32.copysign`, [ + bytes("f32", [0xe2, 0xf1, 0x80, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0xff])], +); + +// ./test/core/float_misc.wast:604 +assert_return( + () => invoke($0, `f32.copysign`, [ + bytes("f32", [0xe2, 0xf1, 0x80, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0x7f])], +); + +// ./test/core/float_misc.wast:605 +assert_return( + () => invoke($0, `f32.copysign`, [ + bytes("f32", [0xe2, 0xf1, 0x80, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0xff])], +); + +// ./test/core/float_misc.wast:606 +assert_return( + () => invoke($0, `f64.copysign`, [ + bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f])], +); + +// ./test/core/float_misc.wast:607 +assert_return( + () => invoke($0, `f64.copysign`, [ + bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0xff])], +); + +// ./test/core/float_misc.wast:608 +assert_return( + () => invoke($0, `f64.copysign`, [ + bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0x7f])], +); + +// ./test/core/float_misc.wast:609 +assert_return( + () => invoke($0, `f64.copysign`, [ + bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [bytes("f64", [0x6b, 0x7a, 0xe2, 0xf1, 0x0, 0x0, 0xf0, 0xff])], +); + +// ./test/core/float_misc.wast:612 +assert_return(() => invoke($0, `f32.ceil`, [value("f32", 0.99999994)]), [value("f32", 1)]); + +// ./test/core/float_misc.wast:613 +assert_return(() => invoke($0, `f32.ceil`, [value("f32", 1.0000001)]), [value("f32", 2)]); + +// ./test/core/float_misc.wast:614 +assert_return(() => invoke($0, `f64.ceil`, [value("f64", 0.9999999999999999)]), [value("f64", 1)]); + +// ./test/core/float_misc.wast:615 +assert_return(() => invoke($0, `f64.ceil`, [value("f64", 1.0000000000000002)]), [value("f64", 2)]); + +// ./test/core/float_misc.wast:618 +assert_return(() => invoke($0, `f32.ceil`, [value("f32", 8388607.5)]), [value("f32", 8388608)]); + +// ./test/core/float_misc.wast:619 +assert_return(() => invoke($0, `f32.ceil`, [value("f32", -8388607.5)]), [value("f32", -8388607)]); + +// ./test/core/float_misc.wast:620 +assert_return( + () => invoke($0, `f64.ceil`, [value("f64", 4503599627370495.5)]), + [value("f64", 4503599627370496)], +); + +// ./test/core/float_misc.wast:621 +assert_return( + () => invoke($0, `f64.ceil`, [value("f64", -4503599627370495.5)]), + [value("f64", -4503599627370495)], +); + +// ./test/core/float_misc.wast:625 +assert_return(() => invoke($0, `f32.ceil`, [value("f32", 16777215)]), [value("f32", 16777215)]); + +// ./test/core/float_misc.wast:626 +assert_return(() => invoke($0, `f32.ceil`, [value("f32", -16777215)]), [value("f32", -16777215)]); + +// ./test/core/float_misc.wast:627 +assert_return( + () => invoke($0, `f64.ceil`, [value("f64", 9007199254740991)]), + [value("f64", 9007199254740991)], +); + +// ./test/core/float_misc.wast:628 +assert_return( + () => invoke($0, `f64.ceil`, [value("f64", -9007199254740991)]), + [value("f64", -9007199254740991)], +); + +// ./test/core/float_misc.wast:631 +assert_return(() => invoke($0, `f32.floor`, [value("f32", -0.99999994)]), [value("f32", -1)]); + +// ./test/core/float_misc.wast:632 +assert_return(() => invoke($0, `f32.floor`, [value("f32", -1.0000001)]), [value("f32", -2)]); + +// ./test/core/float_misc.wast:633 +assert_return(() => invoke($0, `f64.floor`, [value("f64", -0.9999999999999999)]), [value("f64", -1)]); + +// ./test/core/float_misc.wast:634 +assert_return(() => invoke($0, `f64.floor`, [value("f64", -1.0000000000000002)]), [value("f64", -2)]); + +// ./test/core/float_misc.wast:637 +assert_return(() => invoke($0, `f32.floor`, [value("f32", -8388607.5)]), [value("f32", -8388608)]); + +// ./test/core/float_misc.wast:638 +assert_return(() => invoke($0, `f32.floor`, [value("f32", 8388607.5)]), [value("f32", 8388607)]); + +// ./test/core/float_misc.wast:639 +assert_return( + () => invoke($0, `f64.floor`, [value("f64", -4503599627370495.5)]), + [value("f64", -4503599627370496)], +); + +// ./test/core/float_misc.wast:640 +assert_return( + () => invoke($0, `f64.floor`, [value("f64", 4503599627370495.5)]), + [value("f64", 4503599627370495)], +); + +// ./test/core/float_misc.wast:644 +assert_return(() => invoke($0, `f32.floor`, [value("f32", 88607)]), [value("f32", 88607)]); + +// ./test/core/float_misc.wast:645 +assert_return(() => invoke($0, `f64.floor`, [value("f64", 88607)]), [value("f64", 88607)]); + +// ./test/core/float_misc.wast:648 +assert_return(() => invoke($0, `f32.trunc`, [value("f32", -8388607.5)]), [value("f32", -8388607)]); + +// ./test/core/float_misc.wast:649 +assert_return(() => invoke($0, `f32.trunc`, [value("f32", 8388607.5)]), [value("f32", 8388607)]); + +// ./test/core/float_misc.wast:650 +assert_return( + () => invoke($0, `f64.trunc`, [value("f64", -4503599627370495.5)]), + [value("f64", -4503599627370495)], +); + +// ./test/core/float_misc.wast:651 +assert_return( + () => invoke($0, `f64.trunc`, [value("f64", 4503599627370495.5)]), + [value("f64", 4503599627370495)], +); + +// ./test/core/float_misc.wast:656 +assert_return(() => invoke($0, `f32.nearest`, [value("f32", 8388609)]), [value("f32", 8388609)]); + +// ./test/core/float_misc.wast:657 +assert_return(() => invoke($0, `f32.nearest`, [value("f32", 8388610)]), [value("f32", 8388610)]); + +// ./test/core/float_misc.wast:658 +assert_return(() => invoke($0, `f32.nearest`, [value("f32", 0.49999997)]), [value("f32", 0)]); + +// ./test/core/float_misc.wast:659 +assert_return( + () => invoke($0, `f32.nearest`, [value("f32", 281474960000000)]), + [value("f32", 281474960000000)], +); + +// ./test/core/float_misc.wast:660 +assert_return( + () => invoke($0, `f64.nearest`, [value("f64", 4503599627370497)]), + [value("f64", 4503599627370497)], +); + +// ./test/core/float_misc.wast:661 +assert_return( + () => invoke($0, `f64.nearest`, [value("f64", 4503599627370498)]), + [value("f64", 4503599627370498)], +); + +// ./test/core/float_misc.wast:662 +assert_return(() => invoke($0, `f64.nearest`, [value("f64", 0.49999999999999994)]), [value("f64", 0)]); + +// ./test/core/float_misc.wast:663 +assert_return( + () => invoke($0, `f64.nearest`, [value("f64", 81129638414606670000000000000000)]), + [value("f64", 81129638414606670000000000000000)], +); + +// ./test/core/float_misc.wast:667 +assert_return(() => invoke($0, `f32.nearest`, [value("f32", 4.5)]), [value("f32", 4)]); + +// ./test/core/float_misc.wast:668 +assert_return(() => invoke($0, `f32.nearest`, [value("f32", -4.5)]), [value("f32", -4)]); + +// ./test/core/float_misc.wast:669 +assert_return(() => invoke($0, `f32.nearest`, [value("f32", -3.5)]), [value("f32", -4)]); + +// ./test/core/float_misc.wast:670 +assert_return(() => invoke($0, `f64.nearest`, [value("f64", 4.5)]), [value("f64", 4)]); + +// ./test/core/float_misc.wast:671 +assert_return(() => invoke($0, `f64.nearest`, [value("f64", -4.5)]), [value("f64", -4)]); + +// ./test/core/float_misc.wast:672 +assert_return(() => invoke($0, `f64.nearest`, [value("f64", -3.5)]), [value("f64", -4)]); + +// ./test/core/float_misc.wast:675 +assert_return(() => invoke($0, `f32.nearest`, [value("f32", -8388607.5)]), [value("f32", -8388608)]); + +// ./test/core/float_misc.wast:676 +assert_return(() => invoke($0, `f32.nearest`, [value("f32", 8388607.5)]), [value("f32", 8388608)]); + +// ./test/core/float_misc.wast:677 +assert_return( + () => invoke($0, `f64.nearest`, [value("f64", -4503599627370495.5)]), + [value("f64", -4503599627370496)], +); + +// ./test/core/float_misc.wast:678 +assert_return( + () => invoke($0, `f64.nearest`, [value("f64", 4503599627370495.5)]), + [value("f64", 4503599627370496)], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/forward.wast.js b/js/src/jit-test/tests/wasm/spec/spec/forward.wast.js new file mode 100644 index 0000000000..49bd1bda87 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/forward.wast.js @@ -0,0 +1,45 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/forward.wast + +// ./test/core/forward.wast:1 +let $0 = instantiate(`(module + (func $$even (export "even") (param $$n i32) (result i32) + (if (result i32) (i32.eq (local.get $$n) (i32.const 0)) + (then (i32.const 1)) + (else (call $$odd (i32.sub (local.get $$n) (i32.const 1)))) + ) + ) + + (func $$odd (export "odd") (param $$n i32) (result i32) + (if (result i32) (i32.eq (local.get $$n) (i32.const 0)) + (then (i32.const 0)) + (else (call $$even (i32.sub (local.get $$n) (i32.const 1)))) + ) + ) +)`); + +// ./test/core/forward.wast:17 +assert_return(() => invoke($0, `even`, [13]), [value("i32", 0)]); + +// ./test/core/forward.wast:18 +assert_return(() => invoke($0, `even`, [20]), [value("i32", 1)]); + +// ./test/core/forward.wast:19 +assert_return(() => invoke($0, `odd`, [13]), [value("i32", 1)]); + +// ./test/core/forward.wast:20 +assert_return(() => invoke($0, `odd`, [20]), [value("i32", 0)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/func.wast.js b/js/src/jit-test/tests/wasm/spec/spec/func.wast.js new file mode 100644 index 0000000000..e5c1253de4 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/func.wast.js @@ -0,0 +1,1218 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/func.wast + +// ./test/core/func.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definition + (type $$sig (func)) + (func $$dummy) + + ;; Syntax + + (func) + (func (export "f")) + (func $$f) + (func $$h (export "g")) + + (func (local)) + (func (local) (local)) + (func (local i32)) + (func (local $$x i32)) + (func (local i32 f64 i64)) + (func (local i32) (local f64)) + (func (local i32 f32) (local $$x i64) (local) (local i32 f64)) + + (func (param)) + (func (param) (param)) + (func (param i32)) + (func (param $$x i32)) + (func (param i32 f64 i64)) + (func (param i32) (param f64)) + (func (param i32 f32) (param $$x i64) (param) (param i32 f64)) + + (func (result)) + (func (result) (result)) + (func (result i32) (unreachable)) + (func (result i32 f64 f32) (unreachable)) + (func (result i32) (result f64) (unreachable)) + (func (result i32 f32) (result i64) (result) (result i32 f64) (unreachable)) + + (type $$sig-1 (func)) + (type $$sig-2 (func (result i32))) + (type $$sig-3 (func (param $$x i32))) + (type $$sig-4 (func (param i32 f64 i32) (result i32))) + + (func (export "type-use-1") (type $$sig-1)) + (func (export "type-use-2") (type $$sig-2) (i32.const 0)) + (func (export "type-use-3") (type $$sig-3)) + (func (export "type-use-4") (type $$sig-4) (i32.const 0)) + (func (export "type-use-5") (type $$sig-2) (result i32) (i32.const 0)) + (func (export "type-use-6") (type $$sig-3) (param i32)) + (func (export "type-use-7") + (type $$sig-4) (param i32) (param f64 i32) (result i32) (i32.const 0) + ) + + (func (type $$sig)) + (func (type $$forward)) ;; forward reference + + (func $$complex + (param i32 f32) (param $$x i64) (param) (param i32) + (result) (result i32) (result) (result i64 i32) + (local f32) (local $$y i32) (local i64 i32) (local) (local f64 i32) + (unreachable) (unreachable) + ) + (func $$complex-sig + (type $$sig) + (local f32) (local $$y i32) (local i64 i32) (local) (local f64 i32) + (unreachable) (unreachable) + ) + + (type $$forward (func)) + + ;; Typing of locals + + (func (export "local-first-i32") (result i32) (local i32 i32) (local.get 0)) + (func (export "local-first-i64") (result i64) (local i64 i64) (local.get 0)) + (func (export "local-first-f32") (result f32) (local f32 f32) (local.get 0)) + (func (export "local-first-f64") (result f64) (local f64 f64) (local.get 0)) + (func (export "local-second-i32") (result i32) (local i32 i32) (local.get 1)) + (func (export "local-second-i64") (result i64) (local i64 i64) (local.get 1)) + (func (export "local-second-f32") (result f32) (local f32 f32) (local.get 1)) + (func (export "local-second-f64") (result f64) (local f64 f64) (local.get 1)) + (func (export "local-mixed") (result f64) + (local f32) (local $$x i32) (local i64 i32) (local) (local f64 i32) + (drop (f32.neg (local.get 0))) + (drop (i32.eqz (local.get 1))) + (drop (i64.eqz (local.get 2))) + (drop (i32.eqz (local.get 3))) + (drop (f64.neg (local.get 4))) + (drop (i32.eqz (local.get 5))) + (local.get 4) + ) + + ;; Typing of parameters + + (func (export "param-first-i32") (param i32 i32) (result i32) (local.get 0)) + (func (export "param-first-i64") (param i64 i64) (result i64) (local.get 0)) + (func (export "param-first-f32") (param f32 f32) (result f32) (local.get 0)) + (func (export "param-first-f64") (param f64 f64) (result f64) (local.get 0)) + (func (export "param-second-i32") (param i32 i32) (result i32) (local.get 1)) + (func (export "param-second-i64") (param i64 i64) (result i64) (local.get 1)) + (func (export "param-second-f32") (param f32 f32) (result f32) (local.get 1)) + (func (export "param-second-f64") (param f64 f64) (result f64) (local.get 1)) + (func (export "param-mixed") (param f32 i32) (param) (param $$x i64) (param i32 f64 i32) + (result f64) + (drop (f32.neg (local.get 0))) + (drop (i32.eqz (local.get 1))) + (drop (i64.eqz (local.get 2))) + (drop (i32.eqz (local.get 3))) + (drop (f64.neg (local.get 4))) + (drop (i32.eqz (local.get 5))) + (local.get 4) + ) + + ;; Typing of results + + (func (export "empty")) + (func (export "value-void") (call $$dummy)) + (func (export "value-i32") (result i32) (i32.const 77)) + (func (export "value-i64") (result i64) (i64.const 7777)) + (func (export "value-f32") (result f32) (f32.const 77.7)) + (func (export "value-f64") (result f64) (f64.const 77.77)) + (func (export "value-i32-f64") (result i32 f64) (i32.const 77) (f64.const 7)) + (func (export "value-i32-i32-i32") (result i32 i32 i32) + (i32.const 1) (i32.const 2) (i32.const 3) + ) + (func (export "value-block-void") (block (call $$dummy) (call $$dummy))) + (func (export "value-block-i32") (result i32) + (block (result i32) (call $$dummy) (i32.const 77)) + ) + (func (export "value-block-i32-i64") (result i32 i64) + (block (result i32 i64) (call $$dummy) (i32.const 1) (i64.const 2)) + ) + + (func (export "return-empty") (return)) + (func (export "return-i32") (result i32) (return (i32.const 78))) + (func (export "return-i64") (result i64) (return (i64.const 7878))) + (func (export "return-f32") (result f32) (return (f32.const 78.7))) + (func (export "return-f64") (result f64) (return (f64.const 78.78))) + (func (export "return-i32-f64") (result i32 f64) + (return (i32.const 78) (f64.const 78.78)) + ) + (func (export "return-i32-i32-i32") (result i32 i32 i32) + (return (i32.const 1) (i32.const 2) (i32.const 3)) + ) + (func (export "return-block-i32") (result i32) + (return (block (result i32) (call $$dummy) (i32.const 77))) + ) + (func (export "return-block-i32-i64") (result i32 i64) + (return (block (result i32 i64) (call $$dummy) (i32.const 1) (i64.const 2))) + ) + + (func (export "break-empty") (br 0)) + (func (export "break-i32") (result i32) (br 0 (i32.const 79))) + (func (export "break-i64") (result i64) (br 0 (i64.const 7979))) + (func (export "break-f32") (result f32) (br 0 (f32.const 79.9))) + (func (export "break-f64") (result f64) (br 0 (f64.const 79.79))) + (func (export "break-i32-f64") (result i32 f64) + (br 0 (i32.const 79) (f64.const 79.79)) + ) + (func (export "break-i32-i32-i32") (result i32 i32 i32) + (br 0 (i32.const 1) (i32.const 2) (i32.const 3)) + ) + (func (export "break-block-i32") (result i32) + (br 0 (block (result i32) (call $$dummy) (i32.const 77))) + ) + (func (export "break-block-i32-i64") (result i32 i64) + (br 0 (block (result i32 i64) (call $$dummy) (i32.const 1) (i64.const 2))) + ) + + (func (export "break-br_if-empty") (param i32) + (br_if 0 (local.get 0)) + ) + (func (export "break-br_if-num") (param i32) (result i32) + (drop (br_if 0 (i32.const 50) (local.get 0))) (i32.const 51) + ) + (func (export "break-br_if-num-num") (param i32) (result i32 i64) + (drop (drop (br_if 0 (i32.const 50) (i64.const 51) (local.get 0)))) + (i32.const 51) (i64.const 52) + ) + + (func (export "break-br_table-empty") (param i32) + (br_table 0 0 0 (local.get 0)) + ) + (func (export "break-br_table-num") (param i32) (result i32) + (br_table 0 0 (i32.const 50) (local.get 0)) (i32.const 51) + ) + (func (export "break-br_table-num-num") (param i32) (result i32 i64) + (br_table 0 0 (i32.const 50) (i64.const 51) (local.get 0)) + (i32.const 51) (i64.const 52) + ) + (func (export "break-br_table-nested-empty") (param i32) + (block (br_table 0 1 0 (local.get 0))) + ) + (func (export "break-br_table-nested-num") (param i32) (result i32) + (i32.add + (block (result i32) + (br_table 0 1 0 (i32.const 50) (local.get 0)) (i32.const 51) + ) + (i32.const 2) + ) + ) + (func (export "break-br_table-nested-num-num") (param i32) (result i32 i32) + (i32.add + (block (result i32 i32) + (br_table 0 1 0 (i32.const 50) (i32.const 51) (local.get 0)) + (i32.const 51) (i32.const -3) + ) + ) + (i32.const 52) + ) + + ;; Large signatures + + (func (export "large-sig") + (param i32 i64 f32 f32 i32 f64 f32 i32 i32 i32 f32 f64 f64 f64 i32 i32 f32) + (result f64 f32 i32 i32 i32 i64 f32 i32 i32 f32 f64 f64 i32 f32 i32 f64) + (local.get 5) + (local.get 2) + (local.get 0) + (local.get 8) + (local.get 7) + (local.get 1) + (local.get 3) + (local.get 9) + (local.get 4) + (local.get 6) + (local.get 13) + (local.get 11) + (local.get 15) + (local.get 16) + (local.get 14) + (local.get 12) + ) + + ;; Default initialization of locals + + (func (export "init-local-i32") (result i32) (local i32) (local.get 0)) + (func (export "init-local-i64") (result i64) (local i64) (local.get 0)) + (func (export "init-local-f32") (result f32) (local f32) (local.get 0)) + (func (export "init-local-f64") (result f64) (local f64) (local.get 0)) +)`); + +// ./test/core/func.wast:241 +assert_return(() => invoke($0, `type-use-1`, []), []); + +// ./test/core/func.wast:242 +assert_return(() => invoke($0, `type-use-2`, []), [value("i32", 0)]); + +// ./test/core/func.wast:243 +assert_return(() => invoke($0, `type-use-3`, [1]), []); + +// ./test/core/func.wast:244 +assert_return(() => invoke($0, `type-use-4`, [1, value("f64", 1), 1]), [value("i32", 0)]); + +// ./test/core/func.wast:248 +assert_return(() => invoke($0, `type-use-5`, []), [value("i32", 0)]); + +// ./test/core/func.wast:249 +assert_return(() => invoke($0, `type-use-6`, [1]), []); + +// ./test/core/func.wast:250 +assert_return(() => invoke($0, `type-use-7`, [1, value("f64", 1), 1]), [value("i32", 0)]); + +// ./test/core/func.wast:255 +assert_return(() => invoke($0, `local-first-i32`, []), [value("i32", 0)]); + +// ./test/core/func.wast:256 +assert_return(() => invoke($0, `local-first-i64`, []), [value("i64", 0n)]); + +// ./test/core/func.wast:257 +assert_return(() => invoke($0, `local-first-f32`, []), [value("f32", 0)]); + +// ./test/core/func.wast:258 +assert_return(() => invoke($0, `local-first-f64`, []), [value("f64", 0)]); + +// ./test/core/func.wast:259 +assert_return(() => invoke($0, `local-second-i32`, []), [value("i32", 0)]); + +// ./test/core/func.wast:260 +assert_return(() => invoke($0, `local-second-i64`, []), [value("i64", 0n)]); + +// ./test/core/func.wast:261 +assert_return(() => invoke($0, `local-second-f32`, []), [value("f32", 0)]); + +// ./test/core/func.wast:262 +assert_return(() => invoke($0, `local-second-f64`, []), [value("f64", 0)]); + +// ./test/core/func.wast:263 +assert_return(() => invoke($0, `local-mixed`, []), [value("f64", 0)]); + +// ./test/core/func.wast:265 +assert_return(() => invoke($0, `param-first-i32`, [2, 3]), [value("i32", 2)]); + +// ./test/core/func.wast:268 +assert_return(() => invoke($0, `param-first-i64`, [2n, 3n]), [value("i64", 2n)]); + +// ./test/core/func.wast:271 +assert_return( + () => invoke($0, `param-first-f32`, [value("f32", 2), value("f32", 3)]), + [value("f32", 2)], +); + +// ./test/core/func.wast:274 +assert_return( + () => invoke($0, `param-first-f64`, [value("f64", 2), value("f64", 3)]), + [value("f64", 2)], +); + +// ./test/core/func.wast:277 +assert_return(() => invoke($0, `param-second-i32`, [2, 3]), [value("i32", 3)]); + +// ./test/core/func.wast:280 +assert_return(() => invoke($0, `param-second-i64`, [2n, 3n]), [value("i64", 3n)]); + +// ./test/core/func.wast:283 +assert_return( + () => invoke($0, `param-second-f32`, [value("f32", 2), value("f32", 3)]), + [value("f32", 3)], +); + +// ./test/core/func.wast:286 +assert_return( + () => invoke($0, `param-second-f64`, [value("f64", 2), value("f64", 3)]), + [value("f64", 3)], +); + +// ./test/core/func.wast:290 +assert_return( + () => invoke($0, `param-mixed`, [value("f32", 1), 2, 3n, 4, value("f64", 5.5), 6]), + [value("f64", 5.5)], +); + +// ./test/core/func.wast:298 +assert_return(() => invoke($0, `empty`, []), []); + +// ./test/core/func.wast:299 +assert_return(() => invoke($0, `value-void`, []), []); + +// ./test/core/func.wast:300 +assert_return(() => invoke($0, `value-i32`, []), [value("i32", 77)]); + +// ./test/core/func.wast:301 +assert_return(() => invoke($0, `value-i64`, []), [value("i64", 7777n)]); + +// ./test/core/func.wast:302 +assert_return(() => invoke($0, `value-f32`, []), [value("f32", 77.7)]); + +// ./test/core/func.wast:303 +assert_return(() => invoke($0, `value-f64`, []), [value("f64", 77.77)]); + +// ./test/core/func.wast:304 +assert_return(() => invoke($0, `value-i32-f64`, []), [value("i32", 77), value("f64", 7)]); + +// ./test/core/func.wast:305 +assert_return( + () => invoke($0, `value-i32-i32-i32`, []), + [value("i32", 1), value("i32", 2), value("i32", 3)], +); + +// ./test/core/func.wast:308 +assert_return(() => invoke($0, `value-block-void`, []), []); + +// ./test/core/func.wast:309 +assert_return(() => invoke($0, `value-block-i32`, []), [value("i32", 77)]); + +// ./test/core/func.wast:310 +assert_return(() => invoke($0, `value-block-i32-i64`, []), [value("i32", 1), value("i64", 2n)]); + +// ./test/core/func.wast:312 +assert_return(() => invoke($0, `return-empty`, []), []); + +// ./test/core/func.wast:313 +assert_return(() => invoke($0, `return-i32`, []), [value("i32", 78)]); + +// ./test/core/func.wast:314 +assert_return(() => invoke($0, `return-i64`, []), [value("i64", 7878n)]); + +// ./test/core/func.wast:315 +assert_return(() => invoke($0, `return-f32`, []), [value("f32", 78.7)]); + +// ./test/core/func.wast:316 +assert_return(() => invoke($0, `return-f64`, []), [value("f64", 78.78)]); + +// ./test/core/func.wast:317 +assert_return(() => invoke($0, `return-i32-f64`, []), [value("i32", 78), value("f64", 78.78)]); + +// ./test/core/func.wast:318 +assert_return( + () => invoke($0, `return-i32-i32-i32`, []), + [value("i32", 1), value("i32", 2), value("i32", 3)], +); + +// ./test/core/func.wast:321 +assert_return(() => invoke($0, `return-block-i32`, []), [value("i32", 77)]); + +// ./test/core/func.wast:322 +assert_return(() => invoke($0, `return-block-i32-i64`, []), [value("i32", 1), value("i64", 2n)]); + +// ./test/core/func.wast:324 +assert_return(() => invoke($0, `break-empty`, []), []); + +// ./test/core/func.wast:325 +assert_return(() => invoke($0, `break-i32`, []), [value("i32", 79)]); + +// ./test/core/func.wast:326 +assert_return(() => invoke($0, `break-i64`, []), [value("i64", 7979n)]); + +// ./test/core/func.wast:327 +assert_return(() => invoke($0, `break-f32`, []), [value("f32", 79.9)]); + +// ./test/core/func.wast:328 +assert_return(() => invoke($0, `break-f64`, []), [value("f64", 79.79)]); + +// ./test/core/func.wast:329 +assert_return(() => invoke($0, `break-i32-f64`, []), [value("i32", 79), value("f64", 79.79)]); + +// ./test/core/func.wast:330 +assert_return( + () => invoke($0, `break-i32-i32-i32`, []), + [value("i32", 1), value("i32", 2), value("i32", 3)], +); + +// ./test/core/func.wast:333 +assert_return(() => invoke($0, `break-block-i32`, []), [value("i32", 77)]); + +// ./test/core/func.wast:334 +assert_return(() => invoke($0, `break-block-i32-i64`, []), [value("i32", 1), value("i64", 2n)]); + +// ./test/core/func.wast:336 +assert_return(() => invoke($0, `break-br_if-empty`, [0]), []); + +// ./test/core/func.wast:337 +assert_return(() => invoke($0, `break-br_if-empty`, [2]), []); + +// ./test/core/func.wast:338 +assert_return(() => invoke($0, `break-br_if-num`, [0]), [value("i32", 51)]); + +// ./test/core/func.wast:339 +assert_return(() => invoke($0, `break-br_if-num`, [1]), [value("i32", 50)]); + +// ./test/core/func.wast:340 +assert_return(() => invoke($0, `break-br_if-num-num`, [0]), [value("i32", 51), value("i64", 52n)]); + +// ./test/core/func.wast:343 +assert_return(() => invoke($0, `break-br_if-num-num`, [1]), [value("i32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:347 +assert_return(() => invoke($0, `break-br_table-empty`, [0]), []); + +// ./test/core/func.wast:348 +assert_return(() => invoke($0, `break-br_table-empty`, [1]), []); + +// ./test/core/func.wast:349 +assert_return(() => invoke($0, `break-br_table-empty`, [5]), []); + +// ./test/core/func.wast:350 +assert_return(() => invoke($0, `break-br_table-empty`, [-1]), []); + +// ./test/core/func.wast:351 +assert_return(() => invoke($0, `break-br_table-num`, [0]), [value("i32", 50)]); + +// ./test/core/func.wast:352 +assert_return(() => invoke($0, `break-br_table-num`, [1]), [value("i32", 50)]); + +// ./test/core/func.wast:353 +assert_return(() => invoke($0, `break-br_table-num`, [10]), [value("i32", 50)]); + +// ./test/core/func.wast:354 +assert_return(() => invoke($0, `break-br_table-num`, [-100]), [value("i32", 50)]); + +// ./test/core/func.wast:355 +assert_return(() => invoke($0, `break-br_table-num-num`, [0]), [value("i32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:358 +assert_return(() => invoke($0, `break-br_table-num-num`, [1]), [value("i32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:361 +assert_return(() => invoke($0, `break-br_table-num-num`, [10]), [value("i32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:364 +assert_return(() => invoke($0, `break-br_table-num-num`, [-100]), [value("i32", 50), value("i64", 51n)]); + +// ./test/core/func.wast:367 +assert_return(() => invoke($0, `break-br_table-nested-empty`, [0]), []); + +// ./test/core/func.wast:368 +assert_return(() => invoke($0, `break-br_table-nested-empty`, [1]), []); + +// ./test/core/func.wast:369 +assert_return(() => invoke($0, `break-br_table-nested-empty`, [3]), []); + +// ./test/core/func.wast:370 +assert_return(() => invoke($0, `break-br_table-nested-empty`, [-2]), []); + +// ./test/core/func.wast:371 +assert_return(() => invoke($0, `break-br_table-nested-num`, [0]), [value("i32", 52)]); + +// ./test/core/func.wast:374 +assert_return(() => invoke($0, `break-br_table-nested-num`, [1]), [value("i32", 50)]); + +// ./test/core/func.wast:377 +assert_return(() => invoke($0, `break-br_table-nested-num`, [2]), [value("i32", 52)]); + +// ./test/core/func.wast:380 +assert_return(() => invoke($0, `break-br_table-nested-num`, [-3]), [value("i32", 52)]); + +// ./test/core/func.wast:383 +assert_return( + () => invoke($0, `break-br_table-nested-num-num`, [0]), + [value("i32", 101), value("i32", 52)], +); + +// ./test/core/func.wast:387 +assert_return( + () => invoke($0, `break-br_table-nested-num-num`, [1]), + [value("i32", 50), value("i32", 51)], +); + +// ./test/core/func.wast:391 +assert_return( + () => invoke($0, `break-br_table-nested-num-num`, [2]), + [value("i32", 101), value("i32", 52)], +); + +// ./test/core/func.wast:395 +assert_return( + () => invoke($0, `break-br_table-nested-num-num`, [-3]), + [value("i32", 101), value("i32", 52)], +); + +// ./test/core/func.wast:400 +assert_return( + () => invoke($0, `large-sig`, [ + 0, + 1n, + value("f32", 2), + value("f32", 3), + 4, + value("f64", 5), + value("f32", 6), + 7, + 8, + 9, + value("f32", 10), + value("f64", 11), + value("f64", 12), + value("f64", 13), + 14, + 15, + value("f32", 16), + ]), + [ + value("f64", 5), + value("f32", 2), + value("i32", 0), + value("i32", 8), + value("i32", 7), + value("i64", 1n), + value("f32", 3), + value("i32", 9), + value("i32", 4), + value("f32", 6), + value("f64", 13), + value("f64", 11), + value("i32", 15), + value("f32", 16), + value("i32", 14), + value("f64", 12), + ], +); + +// ./test/core/func.wast:414 +assert_return(() => invoke($0, `init-local-i32`, []), [value("i32", 0)]); + +// ./test/core/func.wast:415 +assert_return(() => invoke($0, `init-local-i64`, []), [value("i64", 0n)]); + +// ./test/core/func.wast:416 +assert_return(() => invoke($0, `init-local-f32`, []), [value("f32", 0)]); + +// ./test/core/func.wast:417 +assert_return(() => invoke($0, `init-local-f64`, []), [value("f64", 0)]); + +// ./test/core/func.wast:422 +let $1 = instantiate(`(module + (func $$f (result f64) (f64.const 0)) ;; adds implicit type definition + (func $$g (param i32)) ;; reuses explicit type definition + (type $$t (func (param i32))) + + (func $$i32->void (type 0)) ;; (param i32) + (func $$void->f64 (type 1) (f64.const 0)) ;; (result f64) + (func $$check + (call $$i32->void (i32.const 0)) + (drop (call $$void->f64)) + ) +)`); + +// ./test/core/func.wast:435 +assert_invalid( + () => instantiate(`(module + (func $$f (result f64) (f64.const 0)) ;; adds implicit type definition + (func $$g (param i32)) ;; reuses explicit type definition + (func $$h (result f64) (f64.const 1)) ;; reuses implicit type definition + (type $$t (func (param i32))) + + (func (type 2)) ;; does not exist + )`), + `unknown type`, +); + +// ./test/core/func.wast:447 +assert_malformed( + () => instantiate(`(func $$f (result f64) (f64.const 0)) (func $$g (param i32)) (func $$h (result f64) (f64.const 1)) (type $$t (func (param i32))) (func (type 2) (param i32)) `), + `unknown type`, +); + +// ./test/core/func.wast:459 +let $2 = instantiate(`(module + (type $$proc (func (result i32))) + (type $$sig (func (param i32) (result i32))) + + (func (export "f") (type $$sig) + (local $$var i32) + (local.get $$var) + ) + + (func $$g (type $$sig) + (local $$var i32) + (local.get $$var) + ) + (func (export "g") (type $$sig) + (call $$g (local.get 0)) + ) + + (func (export "p") (type $$proc) + (local $$var i32) + (local.set 0 (i32.const 42)) + (local.get $$var) + ) +)`); + +// ./test/core/func.wast:483 +assert_return(() => invoke($2, `f`, [42]), [value("i32", 0)]); + +// ./test/core/func.wast:484 +assert_return(() => invoke($2, `g`, [42]), [value("i32", 0)]); + +// ./test/core/func.wast:485 +assert_return(() => invoke($2, `p`, []), [value("i32", 42)]); + +// ./test/core/func.wast:488 +let $3 = instantiate(`(module + (type $$sig (func)) + + (func $$empty-sig-1) ;; should be assigned type $$sig + (func $$complex-sig-1 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $$empty-sig-2) ;; should be assigned type $$sig + (func $$complex-sig-2 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $$complex-sig-3 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $$complex-sig-4 (param i64 i64 f64 i64 f64 i64 f32 i32)) + (func $$complex-sig-5 (param i64 i64 f64 i64 f64 i64 f32 i32)) + + (type $$empty-sig-duplicate (func)) + (type $$complex-sig-duplicate (func (param i64 i64 f64 i64 f64 i64 f32 i32))) + (table funcref + (elem + $$complex-sig-3 $$empty-sig-2 $$complex-sig-1 $$complex-sig-3 $$empty-sig-1 + $$complex-sig-4 $$complex-sig-5 + ) + ) + + (func (export "signature-explicit-reused") + (call_indirect (type $$sig) (i32.const 1)) + (call_indirect (type $$sig) (i32.const 4)) + ) + + (func (export "signature-implicit-reused") + ;; The implicit index 3 in this test depends on the function and + ;; type definitions, and may need adapting if they change. + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 0) + ) + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 2) + ) + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 3) + ) + ) + + (func (export "signature-explicit-duplicate") + (call_indirect (type $$empty-sig-duplicate) (i32.const 1)) + ) + + (func (export "signature-implicit-duplicate") + (call_indirect (type $$complex-sig-duplicate) + (i64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 5) + ) + (call_indirect (type $$complex-sig-duplicate) + (i64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 6) + ) + ) +)`); + +// ./test/core/func.wast:551 +assert_return(() => invoke($3, `signature-explicit-reused`, []), []); + +// ./test/core/func.wast:552 +assert_return(() => invoke($3, `signature-implicit-reused`, []), []); + +// ./test/core/func.wast:553 +assert_return(() => invoke($3, `signature-explicit-duplicate`, []), []); + +// ./test/core/func.wast:554 +assert_return(() => invoke($3, `signature-implicit-duplicate`, []), []); + +// ./test/core/func.wast:559 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (type $$sig) (result i32) (param i32) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:566 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (param i32) (type $$sig) (result i32) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:573 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (param i32) (result i32) (type $$sig) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:580 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (result i32) (type $$sig) (param i32) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:587 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (result i32) (param i32) (type $$sig) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:594 +assert_malformed( + () => instantiate(`(func (result i32) (param i32) (i32.const 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:601 +assert_malformed( + () => instantiate(`(type $$sig (func)) (func (type $$sig) (result i32) (i32.const 0)) `), + `inline function type`, +); + +// ./test/core/func.wast:608 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (type $$sig) (result i32) (i32.const 0)) `), + `inline function type`, +); + +// ./test/core/func.wast:615 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (type $$sig) (param i32) (i32.const 0)) `), + `inline function type`, +); + +// ./test/core/func.wast:622 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (func (type $$sig) (param i32) (result i32) (unreachable)) `), + `inline function type`, +); + +// ./test/core/func.wast:633 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result i64) (local i32) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/func.wast:637 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (local f32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/func.wast:641 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (local f64 i64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/func.wast:649 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param i32) (result i64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/func.wast:653 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/func.wast:657 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f64 i64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/func.wast:665 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32)))`), + `type mismatch`, +); + +// ./test/core/func.wast:669 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64)))`), + `type mismatch`, +); + +// ./test/core/func.wast:673 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32)))`), + `type mismatch`, +); + +// ./test/core/func.wast:677 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64)))`), + `type mismatch`, +); + +// ./test/core/func.wast:681 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64-i32 (result f64 i32)))`), + `type mismatch`, +); + +// ./test/core/func.wast:686 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-num (result i32) + (nop) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:692 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-nums (result i32 i32) + (nop) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:698 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-void + (i32.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:704 +assert_invalid( + () => instantiate(`(module (func $$type-value-nums-vs-void + (i32.const 0) (i64.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:710 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-num (result i32) + (f32.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:716 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-nums (result f32 f32) + (f32.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:722 +assert_invalid( + () => instantiate(`(module (func $$type-value-nums-vs-num (result f32) + (f32.const 0) (f32.const 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:729 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-empty-vs-num (result i32) + (return) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:735 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-empty-vs-nums (result i32 i32) + (return) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:741 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-void-vs-num (result i32) + (return (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:747 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-void-vs-nums (result i32 i64) + (return (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:753 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-num-vs-num (result i32) + (return (i64.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:759 +assert_invalid( + () => instantiate(`(module (func $$type-return-last-num-vs-nums (result i64 i64) + (return (i64.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:766 +assert_invalid( + () => instantiate(`(module (func $$type-return-empty-vs-num (result i32) + (return) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:772 +assert_invalid( + () => instantiate(`(module (func $$type-return-empty-vs-nums (result i32 i32) + (return) (i32.const 1) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:778 +assert_invalid( + () => instantiate(`(module (func $$type-return-partial-vs-nums (result i32 i32) + (i32.const 1) (return) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:784 +assert_invalid( + () => instantiate(`(module (func $$type-return-void-vs-num (result i32) + (return (nop)) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:790 +assert_invalid( + () => instantiate(`(module (func $$type-return-void-vs-nums (result i32 i32) + (return (nop)) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:796 +assert_invalid( + () => instantiate(`(module (func $$type-return-num-vs-num (result i32) + (return (i64.const 1)) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:802 +assert_invalid( + () => instantiate(`(module (func $$type-return-num-vs-nums (result i32 i32) + (return (i64.const 1)) (i32.const 1) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:808 +assert_invalid( + () => instantiate(`(module (func $$type-return-first-num-vs-num (result i32) + (return (i64.const 1)) (return (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:814 +assert_invalid( + () => instantiate(`(module (func $$type-return-first-num-vs-nums (result i32 i32) + (return (i32.const 1)) (return (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:821 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-num (result i32) + (br 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:827 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-void-vs-nums (result i32 i32) + (br 0) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:833 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-num-vs-num (result i32) + (br 0 (f32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:839 +assert_invalid( + () => instantiate(`(module (func $$type-break-last-num-vs-nums (result i32 i32) + (br 0 (i32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:845 +assert_invalid( + () => instantiate(`(module (func $$type-break-void-vs-num (result i32) + (br 0) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:851 +assert_invalid( + () => instantiate(`(module (func $$type-break-void-vs-nums (result i32 i32) + (br 0) (i32.const 1) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:857 +assert_invalid( + () => instantiate(`(module (func $$type-break-num-vs-num (result i32) + (br 0 (i64.const 1)) (i32.const 1) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:863 +assert_invalid( + () => instantiate(`(module (func $$type-break-num-vs-nums (result i32 i32) + (br 0 (i32.const 1)) (i32.const 1) (i32.const 2) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:869 +assert_invalid( + () => instantiate(`(module (func $$type-break-first-num-vs-num (result i32) + (br 0 (i64.const 1)) (br 0 (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:876 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-num (result i32) + (block (br 1)) (br 0 (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:882 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-empty-vs-nums (result i32 i32) + (block (br 1)) (br 0 (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:888 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-num (result i32) + (block (br 1 (nop))) (br 0 (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:894 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-void-vs-nums (result i32 i32) + (block (br 1 (nop))) (br 0 (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:900 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-num-vs-num (result i32) + (block (br 1 (i64.const 1))) (br 0 (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:906 +assert_invalid( + () => instantiate(`(module (func $$type-break-nested-num-vs-nums (result i32 i32) + (block (result i32) (br 1 (i32.const 1))) (br 0 (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/func.wast:916 +assert_malformed(() => instantiate(`(func (nop) (local i32)) `), `unexpected token`); + +// ./test/core/func.wast:920 +assert_malformed(() => instantiate(`(func (nop) (param i32)) `), `unexpected token`); + +// ./test/core/func.wast:924 +assert_malformed(() => instantiate(`(func (nop) (result i32)) `), `unexpected token`); + +// ./test/core/func.wast:928 +assert_malformed(() => instantiate(`(func (local i32) (param i32)) `), `unexpected token`); + +// ./test/core/func.wast:932 +assert_malformed( + () => instantiate(`(func (local i32) (result i32) (local.get 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:936 +assert_malformed( + () => instantiate(`(func (result i32) (param i32) (local.get 0)) `), + `unexpected token`, +); + +// ./test/core/func.wast:943 +assert_malformed(() => instantiate(`(func $$foo) (func $$foo) `), `duplicate func`); + +// ./test/core/func.wast:947 +assert_malformed( + () => instantiate(`(import "" "" (func $$foo)) (func $$foo) `), + `duplicate func`, +); + +// ./test/core/func.wast:951 +assert_malformed( + () => instantiate(`(import "" "" (func $$foo)) (import "" "" (func $$foo)) `), + `duplicate func`, +); + +// ./test/core/func.wast:956 +assert_malformed( + () => instantiate(`(func (param $$foo i32) (param $$foo i32)) `), + `duplicate local`, +); + +// ./test/core/func.wast:958 +assert_malformed( + () => instantiate(`(func (param $$foo i32) (local $$foo i32)) `), + `duplicate local`, +); + +// ./test/core/func.wast:960 +assert_malformed( + () => instantiate(`(func (local $$foo i32) (local $$foo i32)) `), + `duplicate local`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/func_ptrs.wast.js b/js/src/jit-test/tests/wasm/spec/spec/func_ptrs.wast.js new file mode 100644 index 0000000000..b2a46e861e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/func_ptrs.wast.js @@ -0,0 +1,191 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/func_ptrs.wast + +// ./test/core/func_ptrs.wast:1 +let $0 = instantiate(`(module + (type (func)) ;; 0: void -> void + (type $$S (func)) ;; 1: void -> void + (type (func (param))) ;; 2: void -> void + (type (func (result i32))) ;; 3: void -> i32 + (type (func (param) (result i32))) ;; 4: void -> i32 + (type $$T (func (param i32) (result i32))) ;; 5: i32 -> i32 + (type $$U (func (param i32))) ;; 6: i32 -> void + + (func $$print (import "spectest" "print_i32") (type 6)) + + (func (type 0)) + (func (type $$S)) + + (func (export "one") (type 4) (i32.const 13)) + (func (export "two") (type $$T) (i32.add (local.get 0) (i32.const 1))) + + ;; Both signature and parameters are allowed (and required to match) + ;; since this allows the naming of parameters. + (func (export "three") (type $$T) (param $$a i32) (result i32) + (i32.sub (local.get 0) (i32.const 2)) + ) + + (func (export "four") (type $$U) (call $$print (local.get 0))) +)`); + +// ./test/core/func_ptrs.wast:27 +assert_return(() => invoke($0, `one`, []), [value("i32", 13)]); + +// ./test/core/func_ptrs.wast:28 +assert_return(() => invoke($0, `two`, [13]), [value("i32", 14)]); + +// ./test/core/func_ptrs.wast:29 +assert_return(() => invoke($0, `three`, [13]), [value("i32", 11)]); + +// ./test/core/func_ptrs.wast:30 +invoke($0, `four`, [83]); + +// ./test/core/func_ptrs.wast:32 +assert_invalid(() => instantiate(`(module (elem (i32.const 0)))`), `unknown table`); + +// ./test/core/func_ptrs.wast:33 +assert_invalid( + () => instantiate(`(module (elem (i32.const 0) 0) (func))`), + `unknown table`, +); + +// ./test/core/func_ptrs.wast:35 +assert_invalid( + () => instantiate(`(module (table 1 funcref) (elem (i64.const 0)))`), + `type mismatch`, +); + +// ./test/core/func_ptrs.wast:39 +assert_invalid( + () => instantiate(`(module (table 1 funcref) (elem (i32.ctz (i32.const 0))))`), + `constant expression required`, +); + +// ./test/core/func_ptrs.wast:43 +assert_invalid( + () => instantiate(`(module (table 1 funcref) (elem (nop)))`), + `constant expression required`, +); + +// ./test/core/func_ptrs.wast:48 +assert_invalid(() => instantiate(`(module (func (type 42)))`), `unknown type`); + +// ./test/core/func_ptrs.wast:49 +assert_invalid( + () => instantiate(`(module (import "spectest" "print_i32" (func (type 43))))`), + `unknown type`, +); + +// ./test/core/func_ptrs.wast:51 +let $1 = instantiate(`(module + (type $$T (func (param) (result i32))) + (type $$U (func (param) (result i32))) + (table funcref (elem $$t1 $$t2 $$t3 $$u1 $$u2 $$t1 $$t3)) + + (func $$t1 (type $$T) (i32.const 1)) + (func $$t2 (type $$T) (i32.const 2)) + (func $$t3 (type $$T) (i32.const 3)) + (func $$u1 (type $$U) (i32.const 4)) + (func $$u2 (type $$U) (i32.const 5)) + + (func (export "callt") (param $$i i32) (result i32) + (call_indirect (type $$T) (local.get $$i)) + ) + + (func (export "callu") (param $$i i32) (result i32) + (call_indirect (type $$U) (local.get $$i)) + ) +)`); + +// ./test/core/func_ptrs.wast:71 +assert_return(() => invoke($1, `callt`, [0]), [value("i32", 1)]); + +// ./test/core/func_ptrs.wast:72 +assert_return(() => invoke($1, `callt`, [1]), [value("i32", 2)]); + +// ./test/core/func_ptrs.wast:73 +assert_return(() => invoke($1, `callt`, [2]), [value("i32", 3)]); + +// ./test/core/func_ptrs.wast:74 +assert_return(() => invoke($1, `callt`, [3]), [value("i32", 4)]); + +// ./test/core/func_ptrs.wast:75 +assert_return(() => invoke($1, `callt`, [4]), [value("i32", 5)]); + +// ./test/core/func_ptrs.wast:76 +assert_return(() => invoke($1, `callt`, [5]), [value("i32", 1)]); + +// ./test/core/func_ptrs.wast:77 +assert_return(() => invoke($1, `callt`, [6]), [value("i32", 3)]); + +// ./test/core/func_ptrs.wast:78 +assert_trap(() => invoke($1, `callt`, [7]), `undefined element`); + +// ./test/core/func_ptrs.wast:79 +assert_trap(() => invoke($1, `callt`, [100]), `undefined element`); + +// ./test/core/func_ptrs.wast:80 +assert_trap(() => invoke($1, `callt`, [-1]), `undefined element`); + +// ./test/core/func_ptrs.wast:82 +assert_return(() => invoke($1, `callu`, [0]), [value("i32", 1)]); + +// ./test/core/func_ptrs.wast:83 +assert_return(() => invoke($1, `callu`, [1]), [value("i32", 2)]); + +// ./test/core/func_ptrs.wast:84 +assert_return(() => invoke($1, `callu`, [2]), [value("i32", 3)]); + +// ./test/core/func_ptrs.wast:85 +assert_return(() => invoke($1, `callu`, [3]), [value("i32", 4)]); + +// ./test/core/func_ptrs.wast:86 +assert_return(() => invoke($1, `callu`, [4]), [value("i32", 5)]); + +// ./test/core/func_ptrs.wast:87 +assert_return(() => invoke($1, `callu`, [5]), [value("i32", 1)]); + +// ./test/core/func_ptrs.wast:88 +assert_return(() => invoke($1, `callu`, [6]), [value("i32", 3)]); + +// ./test/core/func_ptrs.wast:89 +assert_trap(() => invoke($1, `callu`, [7]), `undefined element`); + +// ./test/core/func_ptrs.wast:90 +assert_trap(() => invoke($1, `callu`, [100]), `undefined element`); + +// ./test/core/func_ptrs.wast:91 +assert_trap(() => invoke($1, `callu`, [-1]), `undefined element`); + +// ./test/core/func_ptrs.wast:93 +let $2 = instantiate(`(module + (type $$T (func (result i32))) + (table funcref (elem 0 1)) + + (func $$t1 (type $$T) (i32.const 1)) + (func $$t2 (type $$T) (i32.const 2)) + + (func (export "callt") (param $$i i32) (result i32) + (call_indirect (type $$T) (local.get $$i)) + ) +)`); + +// ./test/core/func_ptrs.wast:105 +assert_return(() => invoke($2, `callt`, [0]), [value("i32", 1)]); + +// ./test/core/func_ptrs.wast:106 +assert_return(() => invoke($2, `callt`, [1]), [value("i32", 2)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/global.wast.js b/js/src/jit-test/tests/wasm/spec/spec/global.wast.js new file mode 100644 index 0000000000..e3351d3421 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/global.wast.js @@ -0,0 +1,809 @@ +// |jit-test| --no-wasm-gc +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/global.wast + +// ./test/core/global.wast:3 +let $0 = instantiate(`(module + (global (import "spectest" "global_i32") i32) + (global (import "spectest" "global_i64") i64) + + (global $$a i32 (i32.const -2)) + (global (;3;) f32 (f32.const -3)) + (global (;4;) f64 (f64.const -4)) + (global $$b i64 (i64.const -5)) + + (global $$x (mut i32) (i32.const -12)) + (global (;7;) (mut f32) (f32.const -13)) + (global (;8;) (mut f64) (f64.const -14)) + (global $$y (mut i64) (i64.const -15)) + + (global $$z1 i32 (global.get 0)) + (global $$z2 i64 (global.get 1)) + + (global $$r externref (ref.null extern)) + (global $$mr (mut externref) (ref.null extern)) + (global funcref (ref.null func)) + + (func (export "get-a") (result i32) (global.get $$a)) + (func (export "get-b") (result i64) (global.get $$b)) + (func (export "get-r") (result externref) (global.get $$r)) + (func (export "get-mr") (result externref) (global.get $$mr)) + (func (export "get-x") (result i32) (global.get $$x)) + (func (export "get-y") (result i64) (global.get $$y)) + (func (export "get-z1") (result i32) (global.get $$z1)) + (func (export "get-z2") (result i64) (global.get $$z2)) + (func (export "set-x") (param i32) (global.set $$x (local.get 0))) + (func (export "set-y") (param i64) (global.set $$y (local.get 0))) + (func (export "set-mr") (param externref) (global.set $$mr (local.get 0))) + + (func (export "get-3") (result f32) (global.get 3)) + (func (export "get-4") (result f64) (global.get 4)) + (func (export "get-7") (result f32) (global.get 7)) + (func (export "get-8") (result f64) (global.get 8)) + (func (export "set-7") (param f32) (global.set 7 (local.get 0))) + (func (export "set-8") (param f64) (global.set 8 (local.get 0))) + + ;; As the argument of control constructs and instructions + + (memory 1) + + (func $$dummy) + + (func (export "as-select-first") (result i32) + (select (global.get $$x) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (global.get $$x) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (global.get $$x)) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) + (global.get $$x) (call $$dummy) (call $$dummy) + ) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) + (call $$dummy) (global.get $$x) (call $$dummy) + ) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) + (call $$dummy) (call $$dummy) (global.get $$x) + ) + ) + + (func (export "as-if-condition") (result i32) + (if (result i32) (global.get $$x) + (then (call $$dummy) (i32.const 2)) + (else (call $$dummy) (i32.const 3)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (global.get $$x)) (else (i32.const 2)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 2)) (else (global.get $$x)) + ) + ) + + (func (export "as-br_if-first") (result i32) + (block (result i32) + (br_if 0 (global.get $$x) (i32.const 2)) + (return (i32.const 3)) + ) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) + (br_if 0 (i32.const 2) (global.get $$x)) + (return (i32.const 3)) + ) + ) + + (func (export "as-br_table-first") (result i32) + (block (result i32) + (global.get $$x) (i32.const 2) (br_table 0 0) + ) + ) + (func (export "as-br_table-last") (result i32) + (block (result i32) + (i32.const 2) (global.get $$x) (br_table 0 0) + ) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (global.get $$x) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (global.get $$x) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (i32.const 0) (global.get $$x) + ) + ) + ) + + (func (export "as-store-first") + (global.get $$x) (i32.const 1) (i32.store) + ) + (func (export "as-store-last") + (i32.const 0) (global.get $$x) (i32.store) + ) + (func (export "as-load-operand") (result i32) + (i32.load (global.get $$x)) + ) + (func (export "as-memory.grow-value") (result i32) + (memory.grow (global.get $$x)) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + (func (export "as-call-value") (result i32) + (call $$f (global.get $$x)) + ) + + (func (export "as-return-value") (result i32) + (global.get $$x) (return) + ) + (func (export "as-drop-operand") + (drop (global.get $$x)) + ) + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (global.get $$x))) + ) + + (func (export "as-local.set-value") (param i32) (result i32) + (local.set 0 (global.get $$x)) + (local.get 0) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (local.tee 0 (global.get $$x)) + ) + (func (export "as-global.set-value") (result i32) + (global.set $$x (global.get $$x)) + (global.get $$x) + ) + + (func (export "as-unary-operand") (result i32) + (i32.eqz (global.get $$x)) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (global.get $$x) (global.get $$x) + ) + ) + (func (export "as-compare-operand") (result i32) + (i32.gt_u + (global.get 0) (i32.const 1) + ) + ) +)`); + +// ./test/core/global.wast:196 +assert_return(() => invoke($0, `get-a`, []), [value("i32", -2)]); + +// ./test/core/global.wast:197 +assert_return(() => invoke($0, `get-b`, []), [value("i64", -5n)]); + +// ./test/core/global.wast:198 +assert_return(() => invoke($0, `get-r`, []), [value('externref', null)]); + +// ./test/core/global.wast:199 +assert_return(() => invoke($0, `get-mr`, []), [value('externref', null)]); + +// ./test/core/global.wast:200 +assert_return(() => invoke($0, `get-x`, []), [value("i32", -12)]); + +// ./test/core/global.wast:201 +assert_return(() => invoke($0, `get-y`, []), [value("i64", -15n)]); + +// ./test/core/global.wast:202 +assert_return(() => invoke($0, `get-z1`, []), [value("i32", 666)]); + +// ./test/core/global.wast:203 +assert_return(() => invoke($0, `get-z2`, []), [value("i64", 666n)]); + +// ./test/core/global.wast:205 +assert_return(() => invoke($0, `get-3`, []), [value("f32", -3)]); + +// ./test/core/global.wast:206 +assert_return(() => invoke($0, `get-4`, []), [value("f64", -4)]); + +// ./test/core/global.wast:207 +assert_return(() => invoke($0, `get-7`, []), [value("f32", -13)]); + +// ./test/core/global.wast:208 +assert_return(() => invoke($0, `get-8`, []), [value("f64", -14)]); + +// ./test/core/global.wast:210 +assert_return(() => invoke($0, `set-x`, [6]), []); + +// ./test/core/global.wast:211 +assert_return(() => invoke($0, `set-y`, [7n]), []); + +// ./test/core/global.wast:213 +assert_return(() => invoke($0, `set-7`, [value("f32", 8)]), []); + +// ./test/core/global.wast:214 +assert_return(() => invoke($0, `set-8`, [value("f64", 9)]), []); + +// ./test/core/global.wast:216 +assert_return(() => invoke($0, `get-x`, []), [value("i32", 6)]); + +// ./test/core/global.wast:217 +assert_return(() => invoke($0, `get-y`, []), [value("i64", 7n)]); + +// ./test/core/global.wast:218 +assert_return(() => invoke($0, `get-7`, []), [value("f32", 8)]); + +// ./test/core/global.wast:219 +assert_return(() => invoke($0, `get-8`, []), [value("f64", 9)]); + +// ./test/core/global.wast:221 +assert_return(() => invoke($0, `set-7`, [value("f32", 8)]), []); + +// ./test/core/global.wast:222 +assert_return(() => invoke($0, `set-8`, [value("f64", 9)]), []); + +// ./test/core/global.wast:223 +assert_return(() => invoke($0, `set-mr`, [externref(10)]), []); + +// ./test/core/global.wast:225 +assert_return(() => invoke($0, `get-x`, []), [value("i32", 6)]); + +// ./test/core/global.wast:226 +assert_return(() => invoke($0, `get-y`, []), [value("i64", 7n)]); + +// ./test/core/global.wast:227 +assert_return(() => invoke($0, `get-7`, []), [value("f32", 8)]); + +// ./test/core/global.wast:228 +assert_return(() => invoke($0, `get-8`, []), [value("f64", 9)]); + +// ./test/core/global.wast:229 +assert_return(() => invoke($0, `get-mr`, []), [new ExternRefResult(10)]); + +// ./test/core/global.wast:231 +assert_return(() => invoke($0, `as-select-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:232 +assert_return(() => invoke($0, `as-select-mid`, []), [value("i32", 2)]); + +// ./test/core/global.wast:233 +assert_return(() => invoke($0, `as-select-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:235 +assert_return(() => invoke($0, `as-loop-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:236 +assert_return(() => invoke($0, `as-loop-mid`, []), [value("i32", 6)]); + +// ./test/core/global.wast:237 +assert_return(() => invoke($0, `as-loop-last`, []), [value("i32", 6)]); + +// ./test/core/global.wast:239 +assert_return(() => invoke($0, `as-if-condition`, []), [value("i32", 2)]); + +// ./test/core/global.wast:240 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 6)]); + +// ./test/core/global.wast:241 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 6)]); + +// ./test/core/global.wast:243 +assert_return(() => invoke($0, `as-br_if-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:244 +assert_return(() => invoke($0, `as-br_if-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:246 +assert_return(() => invoke($0, `as-br_table-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:247 +assert_return(() => invoke($0, `as-br_table-last`, []), [value("i32", 2)]); + +// ./test/core/global.wast:249 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 6)]); + +// ./test/core/global.wast:250 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 2)]); + +// ./test/core/global.wast:251 +assert_trap(() => invoke($0, `as-call_indirect-last`, []), `undefined element`); + +// ./test/core/global.wast:253 +assert_return(() => invoke($0, `as-store-first`, []), []); + +// ./test/core/global.wast:254 +assert_return(() => invoke($0, `as-store-last`, []), []); + +// ./test/core/global.wast:255 +assert_return(() => invoke($0, `as-load-operand`, []), [value("i32", 1)]); + +// ./test/core/global.wast:256 +assert_return(() => invoke($0, `as-memory.grow-value`, []), [value("i32", 1)]); + +// ./test/core/global.wast:258 +assert_return(() => invoke($0, `as-call-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:260 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:261 +assert_return(() => invoke($0, `as-drop-operand`, []), []); + +// ./test/core/global.wast:262 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:264 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 6)]); + +// ./test/core/global.wast:265 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 6)]); + +// ./test/core/global.wast:266 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 6)]); + +// ./test/core/global.wast:268 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 0)]); + +// ./test/core/global.wast:269 +assert_return(() => invoke($0, `as-binary-operand`, []), [value("i32", 36)]); + +// ./test/core/global.wast:270 +assert_return(() => invoke($0, `as-compare-operand`, []), [value("i32", 1)]); + +// ./test/core/global.wast:272 +assert_invalid( + () => instantiate(`(module (global f32 (f32.const 0)) (func (global.set 0 (f32.const 1))))`), + `global is immutable`, +); + +// ./test/core/global.wast:277 +assert_invalid( + () => instantiate(`(module (import "spectest" "global_i32" (global i32)) (func (global.set 0 (i32.const 1))))`), + `global is immutable`, +); + +// ./test/core/global.wast:283 +let $1 = instantiate(`(module (global (mut f32) (f32.const 0)) (export "a" (global 0)))`); + +// ./test/core/global.wast:284 +let $2 = instantiate(`(module (global (export "a") (mut f32) (f32.const 0)))`); + +// ./test/core/global.wast:286 +assert_invalid( + () => instantiate(`(module (global f32 (f32.neg (f32.const 0))))`), + `constant expression required`, +); + +// ./test/core/global.wast:291 +assert_invalid( + () => instantiate(`(module (global f32 (local.get 0)))`), + `constant expression required`, +); + +// ./test/core/global.wast:296 +assert_invalid( + () => instantiate(`(module (global f32 (f32.neg (f32.const 1))))`), + `constant expression required`, +); + +// ./test/core/global.wast:301 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0) (nop)))`), + `constant expression required`, +); + +// ./test/core/global.wast:306 +assert_invalid( + () => instantiate(`(module (global i32 (i32.ctz (i32.const 0))))`), + `constant expression required`, +); + +// ./test/core/global.wast:311 +assert_invalid( + () => instantiate(`(module (global i32 (nop)))`), + `constant expression required`, +); + +// ./test/core/global.wast:316 +assert_invalid(() => instantiate(`(module (global i32 (f32.const 0)))`), `type mismatch`); + +// ./test/core/global.wast:321 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0) (i32.const 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:326 +assert_invalid( + () => instantiate(`(module (global i32 (;empty instruction sequence;)))`), + `type mismatch`, +); + +// ./test/core/global.wast:331 +assert_invalid( + () => instantiate(`(module (global (import "" "") externref) (global funcref (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:336 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (global.get 0) (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:341 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (i32.const 0) (global.get 0)))`), + `type mismatch`, +); + +// ./test/core/global.wast:346 +assert_invalid( + () => instantiate(`(module (global i32 (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:351 +assert_invalid( + () => instantiate(`(module (global i32 (i32.const 0)) (global i32 (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:355 +assert_invalid( + () => instantiate(`(module (global $$g i32 (i32.const 0)) (global i32 (global.get $$g)))`), + `unknown global`, +); + +// ./test/core/global.wast:360 +assert_invalid( + () => instantiate(`(module (global i32 (global.get 1)) (global i32 (i32.const 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:365 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-i32") i32) (global i32 (global.get 2)))`), + `unknown global`, +); + +// ./test/core/global.wast:370 +assert_invalid( + () => instantiate(`(module (global (import "test" "global-mut-i32") (mut i32)) (global i32 (global.get 0)))`), + `constant expression required`, +); + +// ./test/core/global.wast:375 +let $3 = instantiate(`(module + (import "spectest" "global_i32" (global i32)) +)`); + +// ./test/core/global.wast:378 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\98\\80\\80\\80\\00" ;; import section + "\\01" ;; length 1 + "\\08\\73\\70\\65\\63\\74\\65\\73\\74" ;; "spectest" + "\\0a\\67\\6c\\6f\\62\\61\\6c\\5f\\69\\33\\32" ;; "global_i32" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\02" ;; malformed mutability + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:391 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\98\\80\\80\\80\\00" ;; import section + "\\01" ;; length 1 + "\\08\\73\\70\\65\\63\\74\\65\\73\\74" ;; "spectest" + "\\0a\\67\\6c\\6f\\62\\61\\6c\\5f\\69\\33\\32" ;; "global_i32" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\ff" ;; malformed mutability + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:405 +let $4 = instantiate(`(module + (global i32 (i32.const 0)) +)`); + +// ./test/core/global.wast:408 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\06\\86\\80\\80\\80\\00" ;; global section + "\\01" ;; length 1 + "\\7f" ;; i32 + "\\02" ;; malformed mutability + "\\41\\00" ;; i32.const 0 + "\\0b" ;; end + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:420 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\06\\86\\80\\80\\80\\00" ;; global section + "\\01" ;; length 1 + "\\7f" ;; i32 + "\\ff" ;; malformed mutability + "\\41\\00" ;; i32.const 0 + "\\0b" ;; end + )`), + `malformed mutability`, +); + +// ./test/core/global.wast:434 +assert_invalid( + () => instantiate(`(module (func (result i32) (global.get 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:439 +assert_invalid( + () => instantiate(`(module + (global i32 (i32.const 0)) + (func (result i32) (global.get 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:447 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (func (result i32) (global.get 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:455 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (global i32 (i32.const 0)) + (func (result i32) (global.get 2)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:465 +assert_invalid( + () => instantiate(`(module (func (i32.const 0) (global.set 0)))`), + `unknown global`, +); + +// ./test/core/global.wast:470 +assert_invalid( + () => instantiate(`(module + (global i32 (i32.const 0)) + (func (i32.const 0) (global.set 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:478 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (func (i32.const 0) (global.set 1)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:486 +assert_invalid( + () => instantiate(`(module + (import "spectest" "global_i32" (global i32)) + (global i32 (i32.const 0)) + (func (i32.const 0) (global.set 2)) + )`), + `unknown global`, +); + +// ./test/core/global.wast:496 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty + (global.set $$x) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:505 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-block + (i32.const 0) + (block (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:515 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-loop + (i32.const 0) + (loop (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:525 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:535 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:545 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br + (i32.const 0) + (block (br 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:555 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br_if + (i32.const 0) + (block (br_if 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:565 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-br_table + (i32.const 0) + (block (br_table 0 (global.set $$x))) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:575 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-return + (return (global.set $$x)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:584 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-select + (select (global.set $$x) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:593 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-global.set-value-empty-in-call + (call 1 (global.set $$x)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:603 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-global.set-value-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (global.set $$x) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/global.wast:622 +assert_malformed( + () => instantiate(`(global $$foo i32 (i32.const 0)) (global $$foo i32 (i32.const 0)) `), + `duplicate global`, +); + +// ./test/core/global.wast:626 +assert_malformed( + () => instantiate(`(import "" "" (global $$foo i32)) (global $$foo i32 (i32.const 0)) `), + `duplicate global`, +); + +// ./test/core/global.wast:630 +assert_malformed( + () => instantiate(`(import "" "" (global $$foo i32)) (import "" "" (global $$foo i32)) `), + `duplicate global`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/spec/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/spec/harness/harness.js b/js/src/jit-test/tests/wasm/spec/spec/harness/harness.js new file mode 100644 index 0000000000..a96781e8ed --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/harness/harness.js @@ -0,0 +1,448 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/spec/i32.wast.js b/js/src/jit-test/tests/wasm/spec/spec/i32.wast.js new file mode 100644 index 0000000000..b7455c08b1 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/i32.wast.js @@ -0,0 +1,1967 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/i32.wast + +// ./test/core/i32.wast:3 +let $0 = instantiate(`(module + (func (export "add") (param $$x i32) (param $$y i32) (result i32) (i32.add (local.get $$x) (local.get $$y))) + (func (export "sub") (param $$x i32) (param $$y i32) (result i32) (i32.sub (local.get $$x) (local.get $$y))) + (func (export "mul") (param $$x i32) (param $$y i32) (result i32) (i32.mul (local.get $$x) (local.get $$y))) + (func (export "div_s") (param $$x i32) (param $$y i32) (result i32) (i32.div_s (local.get $$x) (local.get $$y))) + (func (export "div_u") (param $$x i32) (param $$y i32) (result i32) (i32.div_u (local.get $$x) (local.get $$y))) + (func (export "rem_s") (param $$x i32) (param $$y i32) (result i32) (i32.rem_s (local.get $$x) (local.get $$y))) + (func (export "rem_u") (param $$x i32) (param $$y i32) (result i32) (i32.rem_u (local.get $$x) (local.get $$y))) + (func (export "and") (param $$x i32) (param $$y i32) (result i32) (i32.and (local.get $$x) (local.get $$y))) + (func (export "or") (param $$x i32) (param $$y i32) (result i32) (i32.or (local.get $$x) (local.get $$y))) + (func (export "xor") (param $$x i32) (param $$y i32) (result i32) (i32.xor (local.get $$x) (local.get $$y))) + (func (export "shl") (param $$x i32) (param $$y i32) (result i32) (i32.shl (local.get $$x) (local.get $$y))) + (func (export "shr_s") (param $$x i32) (param $$y i32) (result i32) (i32.shr_s (local.get $$x) (local.get $$y))) + (func (export "shr_u") (param $$x i32) (param $$y i32) (result i32) (i32.shr_u (local.get $$x) (local.get $$y))) + (func (export "rotl") (param $$x i32) (param $$y i32) (result i32) (i32.rotl (local.get $$x) (local.get $$y))) + (func (export "rotr") (param $$x i32) (param $$y i32) (result i32) (i32.rotr (local.get $$x) (local.get $$y))) + (func (export "clz") (param $$x i32) (result i32) (i32.clz (local.get $$x))) + (func (export "ctz") (param $$x i32) (result i32) (i32.ctz (local.get $$x))) + (func (export "popcnt") (param $$x i32) (result i32) (i32.popcnt (local.get $$x))) + (func (export "extend8_s") (param $$x i32) (result i32) (i32.extend8_s (local.get $$x))) + (func (export "extend16_s") (param $$x i32) (result i32) (i32.extend16_s (local.get $$x))) + (func (export "eqz") (param $$x i32) (result i32) (i32.eqz (local.get $$x))) + (func (export "eq") (param $$x i32) (param $$y i32) (result i32) (i32.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x i32) (param $$y i32) (result i32) (i32.ne (local.get $$x) (local.get $$y))) + (func (export "lt_s") (param $$x i32) (param $$y i32) (result i32) (i32.lt_s (local.get $$x) (local.get $$y))) + (func (export "lt_u") (param $$x i32) (param $$y i32) (result i32) (i32.lt_u (local.get $$x) (local.get $$y))) + (func (export "le_s") (param $$x i32) (param $$y i32) (result i32) (i32.le_s (local.get $$x) (local.get $$y))) + (func (export "le_u") (param $$x i32) (param $$y i32) (result i32) (i32.le_u (local.get $$x) (local.get $$y))) + (func (export "gt_s") (param $$x i32) (param $$y i32) (result i32) (i32.gt_s (local.get $$x) (local.get $$y))) + (func (export "gt_u") (param $$x i32) (param $$y i32) (result i32) (i32.gt_u (local.get $$x) (local.get $$y))) + (func (export "ge_s") (param $$x i32) (param $$y i32) (result i32) (i32.ge_s (local.get $$x) (local.get $$y))) + (func (export "ge_u") (param $$x i32) (param $$y i32) (result i32) (i32.ge_u (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/i32.wast:37 +assert_return(() => invoke($0, `add`, [1, 1]), [value("i32", 2)]); + +// ./test/core/i32.wast:38 +assert_return(() => invoke($0, `add`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:39 +assert_return(() => invoke($0, `add`, [-1, -1]), [value("i32", -2)]); + +// ./test/core/i32.wast:40 +assert_return(() => invoke($0, `add`, [-1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:41 +assert_return(() => invoke($0, `add`, [2147483647, 1]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:42 +assert_return(() => invoke($0, `add`, [-2147483648, -1]), [value("i32", 2147483647)]); + +// ./test/core/i32.wast:43 +assert_return(() => invoke($0, `add`, [-2147483648, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:44 +assert_return(() => invoke($0, `add`, [1073741823, 1]), [value("i32", 1073741824)]); + +// ./test/core/i32.wast:46 +assert_return(() => invoke($0, `sub`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:47 +assert_return(() => invoke($0, `sub`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:48 +assert_return(() => invoke($0, `sub`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:49 +assert_return(() => invoke($0, `sub`, [2147483647, -1]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:50 +assert_return(() => invoke($0, `sub`, [-2147483648, 1]), [value("i32", 2147483647)]); + +// ./test/core/i32.wast:51 +assert_return(() => invoke($0, `sub`, [-2147483648, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:52 +assert_return(() => invoke($0, `sub`, [1073741823, -1]), [value("i32", 1073741824)]); + +// ./test/core/i32.wast:54 +assert_return(() => invoke($0, `mul`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:55 +assert_return(() => invoke($0, `mul`, [1, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:56 +assert_return(() => invoke($0, `mul`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:57 +assert_return(() => invoke($0, `mul`, [268435456, 4096]), [value("i32", 0)]); + +// ./test/core/i32.wast:58 +assert_return(() => invoke($0, `mul`, [-2147483648, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:59 +assert_return(() => invoke($0, `mul`, [-2147483648, -1]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:60 +assert_return(() => invoke($0, `mul`, [2147483647, -1]), [value("i32", -2147483647)]); + +// ./test/core/i32.wast:61 +assert_return(() => invoke($0, `mul`, [19088743, 1985229328]), [value("i32", 898528368)]); + +// ./test/core/i32.wast:62 +assert_return(() => invoke($0, `mul`, [2147483647, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:64 +assert_trap(() => invoke($0, `div_s`, [1, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:65 +assert_trap(() => invoke($0, `div_s`, [0, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:66 +assert_trap(() => invoke($0, `div_s`, [-2147483648, -1]), `integer overflow`); + +// ./test/core/i32.wast:67 +assert_trap(() => invoke($0, `div_s`, [-2147483648, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:68 +assert_return(() => invoke($0, `div_s`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:69 +assert_return(() => invoke($0, `div_s`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:70 +assert_return(() => invoke($0, `div_s`, [0, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:71 +assert_return(() => invoke($0, `div_s`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:72 +assert_return(() => invoke($0, `div_s`, [-2147483648, 2]), [value("i32", -1073741824)]); + +// ./test/core/i32.wast:73 +assert_return(() => invoke($0, `div_s`, [-2147483647, 1000]), [value("i32", -2147483)]); + +// ./test/core/i32.wast:74 +assert_return(() => invoke($0, `div_s`, [5, 2]), [value("i32", 2)]); + +// ./test/core/i32.wast:75 +assert_return(() => invoke($0, `div_s`, [-5, 2]), [value("i32", -2)]); + +// ./test/core/i32.wast:76 +assert_return(() => invoke($0, `div_s`, [5, -2]), [value("i32", -2)]); + +// ./test/core/i32.wast:77 +assert_return(() => invoke($0, `div_s`, [-5, -2]), [value("i32", 2)]); + +// ./test/core/i32.wast:78 +assert_return(() => invoke($0, `div_s`, [7, 3]), [value("i32", 2)]); + +// ./test/core/i32.wast:79 +assert_return(() => invoke($0, `div_s`, [-7, 3]), [value("i32", -2)]); + +// ./test/core/i32.wast:80 +assert_return(() => invoke($0, `div_s`, [7, -3]), [value("i32", -2)]); + +// ./test/core/i32.wast:81 +assert_return(() => invoke($0, `div_s`, [-7, -3]), [value("i32", 2)]); + +// ./test/core/i32.wast:82 +assert_return(() => invoke($0, `div_s`, [11, 5]), [value("i32", 2)]); + +// ./test/core/i32.wast:83 +assert_return(() => invoke($0, `div_s`, [17, 7]), [value("i32", 2)]); + +// ./test/core/i32.wast:85 +assert_trap(() => invoke($0, `div_u`, [1, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:86 +assert_trap(() => invoke($0, `div_u`, [0, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:87 +assert_return(() => invoke($0, `div_u`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:88 +assert_return(() => invoke($0, `div_u`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:89 +assert_return(() => invoke($0, `div_u`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:90 +assert_return(() => invoke($0, `div_u`, [-2147483648, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:91 +assert_return(() => invoke($0, `div_u`, [-2147483648, 2]), [value("i32", 1073741824)]); + +// ./test/core/i32.wast:92 +assert_return(() => invoke($0, `div_u`, [-1880092688, 65537]), [value("i32", 36847)]); + +// ./test/core/i32.wast:93 +assert_return(() => invoke($0, `div_u`, [-2147483647, 1000]), [value("i32", 2147483)]); + +// ./test/core/i32.wast:94 +assert_return(() => invoke($0, `div_u`, [5, 2]), [value("i32", 2)]); + +// ./test/core/i32.wast:95 +assert_return(() => invoke($0, `div_u`, [-5, 2]), [value("i32", 2147483645)]); + +// ./test/core/i32.wast:96 +assert_return(() => invoke($0, `div_u`, [5, -2]), [value("i32", 0)]); + +// ./test/core/i32.wast:97 +assert_return(() => invoke($0, `div_u`, [-5, -2]), [value("i32", 0)]); + +// ./test/core/i32.wast:98 +assert_return(() => invoke($0, `div_u`, [7, 3]), [value("i32", 2)]); + +// ./test/core/i32.wast:99 +assert_return(() => invoke($0, `div_u`, [11, 5]), [value("i32", 2)]); + +// ./test/core/i32.wast:100 +assert_return(() => invoke($0, `div_u`, [17, 7]), [value("i32", 2)]); + +// ./test/core/i32.wast:102 +assert_trap(() => invoke($0, `rem_s`, [1, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:103 +assert_trap(() => invoke($0, `rem_s`, [0, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:104 +assert_return(() => invoke($0, `rem_s`, [2147483647, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:105 +assert_return(() => invoke($0, `rem_s`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:106 +assert_return(() => invoke($0, `rem_s`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:107 +assert_return(() => invoke($0, `rem_s`, [0, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:108 +assert_return(() => invoke($0, `rem_s`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:109 +assert_return(() => invoke($0, `rem_s`, [-2147483648, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:110 +assert_return(() => invoke($0, `rem_s`, [-2147483648, 2]), [value("i32", 0)]); + +// ./test/core/i32.wast:111 +assert_return(() => invoke($0, `rem_s`, [-2147483647, 1000]), [value("i32", -647)]); + +// ./test/core/i32.wast:112 +assert_return(() => invoke($0, `rem_s`, [5, 2]), [value("i32", 1)]); + +// ./test/core/i32.wast:113 +assert_return(() => invoke($0, `rem_s`, [-5, 2]), [value("i32", -1)]); + +// ./test/core/i32.wast:114 +assert_return(() => invoke($0, `rem_s`, [5, -2]), [value("i32", 1)]); + +// ./test/core/i32.wast:115 +assert_return(() => invoke($0, `rem_s`, [-5, -2]), [value("i32", -1)]); + +// ./test/core/i32.wast:116 +assert_return(() => invoke($0, `rem_s`, [7, 3]), [value("i32", 1)]); + +// ./test/core/i32.wast:117 +assert_return(() => invoke($0, `rem_s`, [-7, 3]), [value("i32", -1)]); + +// ./test/core/i32.wast:118 +assert_return(() => invoke($0, `rem_s`, [7, -3]), [value("i32", 1)]); + +// ./test/core/i32.wast:119 +assert_return(() => invoke($0, `rem_s`, [-7, -3]), [value("i32", -1)]); + +// ./test/core/i32.wast:120 +assert_return(() => invoke($0, `rem_s`, [11, 5]), [value("i32", 1)]); + +// ./test/core/i32.wast:121 +assert_return(() => invoke($0, `rem_s`, [17, 7]), [value("i32", 3)]); + +// ./test/core/i32.wast:123 +assert_trap(() => invoke($0, `rem_u`, [1, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:124 +assert_trap(() => invoke($0, `rem_u`, [0, 0]), `integer divide by zero`); + +// ./test/core/i32.wast:125 +assert_return(() => invoke($0, `rem_u`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:126 +assert_return(() => invoke($0, `rem_u`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:127 +assert_return(() => invoke($0, `rem_u`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:128 +assert_return(() => invoke($0, `rem_u`, [-2147483648, -1]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:129 +assert_return(() => invoke($0, `rem_u`, [-2147483648, 2]), [value("i32", 0)]); + +// ./test/core/i32.wast:130 +assert_return(() => invoke($0, `rem_u`, [-1880092688, 65537]), [value("i32", 32769)]); + +// ./test/core/i32.wast:131 +assert_return(() => invoke($0, `rem_u`, [-2147483647, 1000]), [value("i32", 649)]); + +// ./test/core/i32.wast:132 +assert_return(() => invoke($0, `rem_u`, [5, 2]), [value("i32", 1)]); + +// ./test/core/i32.wast:133 +assert_return(() => invoke($0, `rem_u`, [-5, 2]), [value("i32", 1)]); + +// ./test/core/i32.wast:134 +assert_return(() => invoke($0, `rem_u`, [5, -2]), [value("i32", 5)]); + +// ./test/core/i32.wast:135 +assert_return(() => invoke($0, `rem_u`, [-5, -2]), [value("i32", -5)]); + +// ./test/core/i32.wast:136 +assert_return(() => invoke($0, `rem_u`, [7, 3]), [value("i32", 1)]); + +// ./test/core/i32.wast:137 +assert_return(() => invoke($0, `rem_u`, [11, 5]), [value("i32", 1)]); + +// ./test/core/i32.wast:138 +assert_return(() => invoke($0, `rem_u`, [17, 7]), [value("i32", 3)]); + +// ./test/core/i32.wast:140 +assert_return(() => invoke($0, `and`, [1, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:141 +assert_return(() => invoke($0, `and`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:142 +assert_return(() => invoke($0, `and`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:143 +assert_return(() => invoke($0, `and`, [0, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:144 +assert_return(() => invoke($0, `and`, [2147483647, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:145 +assert_return(() => invoke($0, `and`, [2147483647, -1]), [value("i32", 2147483647)]); + +// ./test/core/i32.wast:146 +assert_return(() => invoke($0, `and`, [-252641281, -3856]), [value("i32", -252645136)]); + +// ./test/core/i32.wast:147 +assert_return(() => invoke($0, `and`, [-1, -1]), [value("i32", -1)]); + +// ./test/core/i32.wast:149 +assert_return(() => invoke($0, `or`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:150 +assert_return(() => invoke($0, `or`, [0, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:151 +assert_return(() => invoke($0, `or`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:152 +assert_return(() => invoke($0, `or`, [0, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:153 +assert_return(() => invoke($0, `or`, [2147483647, -2147483648]), [value("i32", -1)]); + +// ./test/core/i32.wast:154 +assert_return(() => invoke($0, `or`, [-2147483648, 0]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:155 +assert_return(() => invoke($0, `or`, [-252641281, -3856]), [value("i32", -1)]); + +// ./test/core/i32.wast:156 +assert_return(() => invoke($0, `or`, [-1, -1]), [value("i32", -1)]); + +// ./test/core/i32.wast:158 +assert_return(() => invoke($0, `xor`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:159 +assert_return(() => invoke($0, `xor`, [0, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:160 +assert_return(() => invoke($0, `xor`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:161 +assert_return(() => invoke($0, `xor`, [0, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:162 +assert_return(() => invoke($0, `xor`, [2147483647, -2147483648]), [value("i32", -1)]); + +// ./test/core/i32.wast:163 +assert_return(() => invoke($0, `xor`, [-2147483648, 0]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:164 +assert_return(() => invoke($0, `xor`, [-1, -2147483648]), [value("i32", 2147483647)]); + +// ./test/core/i32.wast:165 +assert_return(() => invoke($0, `xor`, [-1, 2147483647]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:166 +assert_return(() => invoke($0, `xor`, [-252641281, -3856]), [value("i32", 252645135)]); + +// ./test/core/i32.wast:167 +assert_return(() => invoke($0, `xor`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:169 +assert_return(() => invoke($0, `shl`, [1, 1]), [value("i32", 2)]); + +// ./test/core/i32.wast:170 +assert_return(() => invoke($0, `shl`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:171 +assert_return(() => invoke($0, `shl`, [2147483647, 1]), [value("i32", -2)]); + +// ./test/core/i32.wast:172 +assert_return(() => invoke($0, `shl`, [-1, 1]), [value("i32", -2)]); + +// ./test/core/i32.wast:173 +assert_return(() => invoke($0, `shl`, [-2147483648, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:174 +assert_return(() => invoke($0, `shl`, [1073741824, 1]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:175 +assert_return(() => invoke($0, `shl`, [1, 31]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:176 +assert_return(() => invoke($0, `shl`, [1, 32]), [value("i32", 1)]); + +// ./test/core/i32.wast:177 +assert_return(() => invoke($0, `shl`, [1, 33]), [value("i32", 2)]); + +// ./test/core/i32.wast:178 +assert_return(() => invoke($0, `shl`, [1, -1]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:179 +assert_return(() => invoke($0, `shl`, [1, 2147483647]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:181 +assert_return(() => invoke($0, `shr_s`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:182 +assert_return(() => invoke($0, `shr_s`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:183 +assert_return(() => invoke($0, `shr_s`, [-1, 1]), [value("i32", -1)]); + +// ./test/core/i32.wast:184 +assert_return(() => invoke($0, `shr_s`, [2147483647, 1]), [value("i32", 1073741823)]); + +// ./test/core/i32.wast:185 +assert_return(() => invoke($0, `shr_s`, [-2147483648, 1]), [value("i32", -1073741824)]); + +// ./test/core/i32.wast:186 +assert_return(() => invoke($0, `shr_s`, [1073741824, 1]), [value("i32", 536870912)]); + +// ./test/core/i32.wast:187 +assert_return(() => invoke($0, `shr_s`, [1, 32]), [value("i32", 1)]); + +// ./test/core/i32.wast:188 +assert_return(() => invoke($0, `shr_s`, [1, 33]), [value("i32", 0)]); + +// ./test/core/i32.wast:189 +assert_return(() => invoke($0, `shr_s`, [1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:190 +assert_return(() => invoke($0, `shr_s`, [1, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:191 +assert_return(() => invoke($0, `shr_s`, [1, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:192 +assert_return(() => invoke($0, `shr_s`, [-2147483648, 31]), [value("i32", -1)]); + +// ./test/core/i32.wast:193 +assert_return(() => invoke($0, `shr_s`, [-1, 32]), [value("i32", -1)]); + +// ./test/core/i32.wast:194 +assert_return(() => invoke($0, `shr_s`, [-1, 33]), [value("i32", -1)]); + +// ./test/core/i32.wast:195 +assert_return(() => invoke($0, `shr_s`, [-1, -1]), [value("i32", -1)]); + +// ./test/core/i32.wast:196 +assert_return(() => invoke($0, `shr_s`, [-1, 2147483647]), [value("i32", -1)]); + +// ./test/core/i32.wast:197 +assert_return(() => invoke($0, `shr_s`, [-1, -2147483648]), [value("i32", -1)]); + +// ./test/core/i32.wast:199 +assert_return(() => invoke($0, `shr_u`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:200 +assert_return(() => invoke($0, `shr_u`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:201 +assert_return(() => invoke($0, `shr_u`, [-1, 1]), [value("i32", 2147483647)]); + +// ./test/core/i32.wast:202 +assert_return(() => invoke($0, `shr_u`, [2147483647, 1]), [value("i32", 1073741823)]); + +// ./test/core/i32.wast:203 +assert_return(() => invoke($0, `shr_u`, [-2147483648, 1]), [value("i32", 1073741824)]); + +// ./test/core/i32.wast:204 +assert_return(() => invoke($0, `shr_u`, [1073741824, 1]), [value("i32", 536870912)]); + +// ./test/core/i32.wast:205 +assert_return(() => invoke($0, `shr_u`, [1, 32]), [value("i32", 1)]); + +// ./test/core/i32.wast:206 +assert_return(() => invoke($0, `shr_u`, [1, 33]), [value("i32", 0)]); + +// ./test/core/i32.wast:207 +assert_return(() => invoke($0, `shr_u`, [1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:208 +assert_return(() => invoke($0, `shr_u`, [1, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:209 +assert_return(() => invoke($0, `shr_u`, [1, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:210 +assert_return(() => invoke($0, `shr_u`, [-2147483648, 31]), [value("i32", 1)]); + +// ./test/core/i32.wast:211 +assert_return(() => invoke($0, `shr_u`, [-1, 32]), [value("i32", -1)]); + +// ./test/core/i32.wast:212 +assert_return(() => invoke($0, `shr_u`, [-1, 33]), [value("i32", 2147483647)]); + +// ./test/core/i32.wast:213 +assert_return(() => invoke($0, `shr_u`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:214 +assert_return(() => invoke($0, `shr_u`, [-1, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:215 +assert_return(() => invoke($0, `shr_u`, [-1, -2147483648]), [value("i32", -1)]); + +// ./test/core/i32.wast:217 +assert_return(() => invoke($0, `rotl`, [1, 1]), [value("i32", 2)]); + +// ./test/core/i32.wast:218 +assert_return(() => invoke($0, `rotl`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:219 +assert_return(() => invoke($0, `rotl`, [-1, 1]), [value("i32", -1)]); + +// ./test/core/i32.wast:220 +assert_return(() => invoke($0, `rotl`, [1, 32]), [value("i32", 1)]); + +// ./test/core/i32.wast:221 +assert_return(() => invoke($0, `rotl`, [-1412589450, 1]), [value("i32", 1469788397)]); + +// ./test/core/i32.wast:222 +assert_return(() => invoke($0, `rotl`, [-33498112, 4]), [value("i32", -535969777)]); + +// ./test/core/i32.wast:223 +assert_return(() => invoke($0, `rotl`, [-1329474845, 5]), [value("i32", 406477942)]); + +// ./test/core/i32.wast:224 +assert_return(() => invoke($0, `rotl`, [32768, 37]), [value("i32", 1048576)]); + +// ./test/core/i32.wast:225 +assert_return(() => invoke($0, `rotl`, [-1329474845, 65285]), [value("i32", 406477942)]); + +// ./test/core/i32.wast:226 +assert_return(() => invoke($0, `rotl`, [1989852383, -19]), [value("i32", 1469837011)]); + +// ./test/core/i32.wast:227 +assert_return(() => invoke($0, `rotl`, [1989852383, -2147483635]), [value("i32", 1469837011)]); + +// ./test/core/i32.wast:228 +assert_return(() => invoke($0, `rotl`, [1, 31]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:229 +assert_return(() => invoke($0, `rotl`, [-2147483648, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:231 +assert_return(() => invoke($0, `rotr`, [1, 1]), [value("i32", -2147483648)]); + +// ./test/core/i32.wast:232 +assert_return(() => invoke($0, `rotr`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:233 +assert_return(() => invoke($0, `rotr`, [-1, 1]), [value("i32", -1)]); + +// ./test/core/i32.wast:234 +assert_return(() => invoke($0, `rotr`, [1, 32]), [value("i32", 1)]); + +// ./test/core/i32.wast:235 +assert_return(() => invoke($0, `rotr`, [-16724992, 1]), [value("i32", 2139121152)]); + +// ./test/core/i32.wast:236 +assert_return(() => invoke($0, `rotr`, [524288, 4]), [value("i32", 32768)]); + +// ./test/core/i32.wast:237 +assert_return(() => invoke($0, `rotr`, [-1329474845, 5]), [value("i32", 495324823)]); + +// ./test/core/i32.wast:238 +assert_return(() => invoke($0, `rotr`, [32768, 37]), [value("i32", 1024)]); + +// ./test/core/i32.wast:239 +assert_return(() => invoke($0, `rotr`, [-1329474845, 65285]), [value("i32", 495324823)]); + +// ./test/core/i32.wast:240 +assert_return(() => invoke($0, `rotr`, [1989852383, -19]), [value("i32", -419711787)]); + +// ./test/core/i32.wast:241 +assert_return(() => invoke($0, `rotr`, [1989852383, -2147483635]), [value("i32", -419711787)]); + +// ./test/core/i32.wast:242 +assert_return(() => invoke($0, `rotr`, [1, 31]), [value("i32", 2)]); + +// ./test/core/i32.wast:243 +assert_return(() => invoke($0, `rotr`, [-2147483648, 31]), [value("i32", 1)]); + +// ./test/core/i32.wast:245 +assert_return(() => invoke($0, `clz`, [-1]), [value("i32", 0)]); + +// ./test/core/i32.wast:246 +assert_return(() => invoke($0, `clz`, [0]), [value("i32", 32)]); + +// ./test/core/i32.wast:247 +assert_return(() => invoke($0, `clz`, [32768]), [value("i32", 16)]); + +// ./test/core/i32.wast:248 +assert_return(() => invoke($0, `clz`, [255]), [value("i32", 24)]); + +// ./test/core/i32.wast:249 +assert_return(() => invoke($0, `clz`, [-2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:250 +assert_return(() => invoke($0, `clz`, [1]), [value("i32", 31)]); + +// ./test/core/i32.wast:251 +assert_return(() => invoke($0, `clz`, [2]), [value("i32", 30)]); + +// ./test/core/i32.wast:252 +assert_return(() => invoke($0, `clz`, [2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:254 +assert_return(() => invoke($0, `ctz`, [-1]), [value("i32", 0)]); + +// ./test/core/i32.wast:255 +assert_return(() => invoke($0, `ctz`, [0]), [value("i32", 32)]); + +// ./test/core/i32.wast:256 +assert_return(() => invoke($0, `ctz`, [32768]), [value("i32", 15)]); + +// ./test/core/i32.wast:257 +assert_return(() => invoke($0, `ctz`, [65536]), [value("i32", 16)]); + +// ./test/core/i32.wast:258 +assert_return(() => invoke($0, `ctz`, [-2147483648]), [value("i32", 31)]); + +// ./test/core/i32.wast:259 +assert_return(() => invoke($0, `ctz`, [2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:261 +assert_return(() => invoke($0, `popcnt`, [-1]), [value("i32", 32)]); + +// ./test/core/i32.wast:262 +assert_return(() => invoke($0, `popcnt`, [0]), [value("i32", 0)]); + +// ./test/core/i32.wast:263 +assert_return(() => invoke($0, `popcnt`, [32768]), [value("i32", 1)]); + +// ./test/core/i32.wast:264 +assert_return(() => invoke($0, `popcnt`, [-2147450880]), [value("i32", 2)]); + +// ./test/core/i32.wast:265 +assert_return(() => invoke($0, `popcnt`, [2147483647]), [value("i32", 31)]); + +// ./test/core/i32.wast:266 +assert_return(() => invoke($0, `popcnt`, [-1431655766]), [value("i32", 16)]); + +// ./test/core/i32.wast:267 +assert_return(() => invoke($0, `popcnt`, [1431655765]), [value("i32", 16)]); + +// ./test/core/i32.wast:268 +assert_return(() => invoke($0, `popcnt`, [-559038737]), [value("i32", 24)]); + +// ./test/core/i32.wast:270 +assert_return(() => invoke($0, `extend8_s`, [0]), [value("i32", 0)]); + +// ./test/core/i32.wast:271 +assert_return(() => invoke($0, `extend8_s`, [127]), [value("i32", 127)]); + +// ./test/core/i32.wast:272 +assert_return(() => invoke($0, `extend8_s`, [128]), [value("i32", -128)]); + +// ./test/core/i32.wast:273 +assert_return(() => invoke($0, `extend8_s`, [255]), [value("i32", -1)]); + +// ./test/core/i32.wast:274 +assert_return(() => invoke($0, `extend8_s`, [19088640]), [value("i32", 0)]); + +// ./test/core/i32.wast:275 +assert_return(() => invoke($0, `extend8_s`, [-19088768]), [value("i32", -128)]); + +// ./test/core/i32.wast:276 +assert_return(() => invoke($0, `extend8_s`, [-1]), [value("i32", -1)]); + +// ./test/core/i32.wast:278 +assert_return(() => invoke($0, `extend16_s`, [0]), [value("i32", 0)]); + +// ./test/core/i32.wast:279 +assert_return(() => invoke($0, `extend16_s`, [32767]), [value("i32", 32767)]); + +// ./test/core/i32.wast:280 +assert_return(() => invoke($0, `extend16_s`, [32768]), [value("i32", -32768)]); + +// ./test/core/i32.wast:281 +assert_return(() => invoke($0, `extend16_s`, [65535]), [value("i32", -1)]); + +// ./test/core/i32.wast:282 +assert_return(() => invoke($0, `extend16_s`, [19070976]), [value("i32", 0)]); + +// ./test/core/i32.wast:283 +assert_return(() => invoke($0, `extend16_s`, [-19103744]), [value("i32", -32768)]); + +// ./test/core/i32.wast:284 +assert_return(() => invoke($0, `extend16_s`, [-1]), [value("i32", -1)]); + +// ./test/core/i32.wast:286 +assert_return(() => invoke($0, `eqz`, [0]), [value("i32", 1)]); + +// ./test/core/i32.wast:287 +assert_return(() => invoke($0, `eqz`, [1]), [value("i32", 0)]); + +// ./test/core/i32.wast:288 +assert_return(() => invoke($0, `eqz`, [-2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:289 +assert_return(() => invoke($0, `eqz`, [2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:290 +assert_return(() => invoke($0, `eqz`, [-1]), [value("i32", 0)]); + +// ./test/core/i32.wast:292 +assert_return(() => invoke($0, `eq`, [0, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:293 +assert_return(() => invoke($0, `eq`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:294 +assert_return(() => invoke($0, `eq`, [-1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:295 +assert_return(() => invoke($0, `eq`, [-2147483648, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:296 +assert_return(() => invoke($0, `eq`, [2147483647, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:297 +assert_return(() => invoke($0, `eq`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:298 +assert_return(() => invoke($0, `eq`, [1, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:299 +assert_return(() => invoke($0, `eq`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:300 +assert_return(() => invoke($0, `eq`, [-2147483648, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:301 +assert_return(() => invoke($0, `eq`, [0, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:302 +assert_return(() => invoke($0, `eq`, [-2147483648, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:303 +assert_return(() => invoke($0, `eq`, [-1, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:304 +assert_return(() => invoke($0, `eq`, [-2147483648, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:305 +assert_return(() => invoke($0, `eq`, [2147483647, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:307 +assert_return(() => invoke($0, `ne`, [0, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:308 +assert_return(() => invoke($0, `ne`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:309 +assert_return(() => invoke($0, `ne`, [-1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:310 +assert_return(() => invoke($0, `ne`, [-2147483648, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:311 +assert_return(() => invoke($0, `ne`, [2147483647, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:312 +assert_return(() => invoke($0, `ne`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:313 +assert_return(() => invoke($0, `ne`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:314 +assert_return(() => invoke($0, `ne`, [0, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:315 +assert_return(() => invoke($0, `ne`, [-2147483648, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:316 +assert_return(() => invoke($0, `ne`, [0, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:317 +assert_return(() => invoke($0, `ne`, [-2147483648, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:318 +assert_return(() => invoke($0, `ne`, [-1, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:319 +assert_return(() => invoke($0, `ne`, [-2147483648, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:320 +assert_return(() => invoke($0, `ne`, [2147483647, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:322 +assert_return(() => invoke($0, `lt_s`, [0, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:323 +assert_return(() => invoke($0, `lt_s`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:324 +assert_return(() => invoke($0, `lt_s`, [-1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:325 +assert_return(() => invoke($0, `lt_s`, [-2147483648, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:326 +assert_return(() => invoke($0, `lt_s`, [2147483647, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:327 +assert_return(() => invoke($0, `lt_s`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:328 +assert_return(() => invoke($0, `lt_s`, [1, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:329 +assert_return(() => invoke($0, `lt_s`, [0, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:330 +assert_return(() => invoke($0, `lt_s`, [-2147483648, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:331 +assert_return(() => invoke($0, `lt_s`, [0, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:332 +assert_return(() => invoke($0, `lt_s`, [-2147483648, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:333 +assert_return(() => invoke($0, `lt_s`, [-1, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:334 +assert_return(() => invoke($0, `lt_s`, [-2147483648, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:335 +assert_return(() => invoke($0, `lt_s`, [2147483647, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:337 +assert_return(() => invoke($0, `lt_u`, [0, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:338 +assert_return(() => invoke($0, `lt_u`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:339 +assert_return(() => invoke($0, `lt_u`, [-1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:340 +assert_return(() => invoke($0, `lt_u`, [-2147483648, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:341 +assert_return(() => invoke($0, `lt_u`, [2147483647, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:342 +assert_return(() => invoke($0, `lt_u`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:343 +assert_return(() => invoke($0, `lt_u`, [1, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:344 +assert_return(() => invoke($0, `lt_u`, [0, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:345 +assert_return(() => invoke($0, `lt_u`, [-2147483648, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:346 +assert_return(() => invoke($0, `lt_u`, [0, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:347 +assert_return(() => invoke($0, `lt_u`, [-2147483648, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:348 +assert_return(() => invoke($0, `lt_u`, [-1, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:349 +assert_return(() => invoke($0, `lt_u`, [-2147483648, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:350 +assert_return(() => invoke($0, `lt_u`, [2147483647, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:352 +assert_return(() => invoke($0, `le_s`, [0, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:353 +assert_return(() => invoke($0, `le_s`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:354 +assert_return(() => invoke($0, `le_s`, [-1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:355 +assert_return(() => invoke($0, `le_s`, [-2147483648, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:356 +assert_return(() => invoke($0, `le_s`, [2147483647, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:357 +assert_return(() => invoke($0, `le_s`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:358 +assert_return(() => invoke($0, `le_s`, [1, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:359 +assert_return(() => invoke($0, `le_s`, [0, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:360 +assert_return(() => invoke($0, `le_s`, [-2147483648, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:361 +assert_return(() => invoke($0, `le_s`, [0, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:362 +assert_return(() => invoke($0, `le_s`, [-2147483648, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:363 +assert_return(() => invoke($0, `le_s`, [-1, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:364 +assert_return(() => invoke($0, `le_s`, [-2147483648, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:365 +assert_return(() => invoke($0, `le_s`, [2147483647, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:367 +assert_return(() => invoke($0, `le_u`, [0, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:368 +assert_return(() => invoke($0, `le_u`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:369 +assert_return(() => invoke($0, `le_u`, [-1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:370 +assert_return(() => invoke($0, `le_u`, [-2147483648, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:371 +assert_return(() => invoke($0, `le_u`, [2147483647, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:372 +assert_return(() => invoke($0, `le_u`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:373 +assert_return(() => invoke($0, `le_u`, [1, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:374 +assert_return(() => invoke($0, `le_u`, [0, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:375 +assert_return(() => invoke($0, `le_u`, [-2147483648, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:376 +assert_return(() => invoke($0, `le_u`, [0, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:377 +assert_return(() => invoke($0, `le_u`, [-2147483648, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:378 +assert_return(() => invoke($0, `le_u`, [-1, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:379 +assert_return(() => invoke($0, `le_u`, [-2147483648, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:380 +assert_return(() => invoke($0, `le_u`, [2147483647, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:382 +assert_return(() => invoke($0, `gt_s`, [0, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:383 +assert_return(() => invoke($0, `gt_s`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:384 +assert_return(() => invoke($0, `gt_s`, [-1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:385 +assert_return(() => invoke($0, `gt_s`, [-2147483648, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:386 +assert_return(() => invoke($0, `gt_s`, [2147483647, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:387 +assert_return(() => invoke($0, `gt_s`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:388 +assert_return(() => invoke($0, `gt_s`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:389 +assert_return(() => invoke($0, `gt_s`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:390 +assert_return(() => invoke($0, `gt_s`, [-2147483648, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:391 +assert_return(() => invoke($0, `gt_s`, [0, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:392 +assert_return(() => invoke($0, `gt_s`, [-2147483648, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:393 +assert_return(() => invoke($0, `gt_s`, [-1, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:394 +assert_return(() => invoke($0, `gt_s`, [-2147483648, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:395 +assert_return(() => invoke($0, `gt_s`, [2147483647, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:397 +assert_return(() => invoke($0, `gt_u`, [0, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:398 +assert_return(() => invoke($0, `gt_u`, [1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:399 +assert_return(() => invoke($0, `gt_u`, [-1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:400 +assert_return(() => invoke($0, `gt_u`, [-2147483648, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:401 +assert_return(() => invoke($0, `gt_u`, [2147483647, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:402 +assert_return(() => invoke($0, `gt_u`, [-1, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:403 +assert_return(() => invoke($0, `gt_u`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:404 +assert_return(() => invoke($0, `gt_u`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:405 +assert_return(() => invoke($0, `gt_u`, [-2147483648, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:406 +assert_return(() => invoke($0, `gt_u`, [0, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:407 +assert_return(() => invoke($0, `gt_u`, [-2147483648, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:408 +assert_return(() => invoke($0, `gt_u`, [-1, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:409 +assert_return(() => invoke($0, `gt_u`, [-2147483648, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:410 +assert_return(() => invoke($0, `gt_u`, [2147483647, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:412 +assert_return(() => invoke($0, `ge_s`, [0, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:413 +assert_return(() => invoke($0, `ge_s`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:414 +assert_return(() => invoke($0, `ge_s`, [-1, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:415 +assert_return(() => invoke($0, `ge_s`, [-2147483648, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:416 +assert_return(() => invoke($0, `ge_s`, [2147483647, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:417 +assert_return(() => invoke($0, `ge_s`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:418 +assert_return(() => invoke($0, `ge_s`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:419 +assert_return(() => invoke($0, `ge_s`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:420 +assert_return(() => invoke($0, `ge_s`, [-2147483648, 0]), [value("i32", 0)]); + +// ./test/core/i32.wast:421 +assert_return(() => invoke($0, `ge_s`, [0, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:422 +assert_return(() => invoke($0, `ge_s`, [-2147483648, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:423 +assert_return(() => invoke($0, `ge_s`, [-1, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:424 +assert_return(() => invoke($0, `ge_s`, [-2147483648, 2147483647]), [value("i32", 0)]); + +// ./test/core/i32.wast:425 +assert_return(() => invoke($0, `ge_s`, [2147483647, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:427 +assert_return(() => invoke($0, `ge_u`, [0, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:428 +assert_return(() => invoke($0, `ge_u`, [1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:429 +assert_return(() => invoke($0, `ge_u`, [-1, 1]), [value("i32", 1)]); + +// ./test/core/i32.wast:430 +assert_return(() => invoke($0, `ge_u`, [-2147483648, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:431 +assert_return(() => invoke($0, `ge_u`, [2147483647, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:432 +assert_return(() => invoke($0, `ge_u`, [-1, -1]), [value("i32", 1)]); + +// ./test/core/i32.wast:433 +assert_return(() => invoke($0, `ge_u`, [1, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:434 +assert_return(() => invoke($0, `ge_u`, [0, 1]), [value("i32", 0)]); + +// ./test/core/i32.wast:435 +assert_return(() => invoke($0, `ge_u`, [-2147483648, 0]), [value("i32", 1)]); + +// ./test/core/i32.wast:436 +assert_return(() => invoke($0, `ge_u`, [0, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:437 +assert_return(() => invoke($0, `ge_u`, [-2147483648, -1]), [value("i32", 0)]); + +// ./test/core/i32.wast:438 +assert_return(() => invoke($0, `ge_u`, [-1, -2147483648]), [value("i32", 1)]); + +// ./test/core/i32.wast:439 +assert_return(() => invoke($0, `ge_u`, [-2147483648, 2147483647]), [value("i32", 1)]); + +// ./test/core/i32.wast:440 +assert_return(() => invoke($0, `ge_u`, [2147483647, -2147483648]), [value("i32", 0)]); + +// ./test/core/i32.wast:443 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty + (i32.eqz) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:451 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-block + (i32.const 0) + (block (i32.eqz) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:460 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-loop + (i32.const 0) + (loop (i32.eqz) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:469 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-if + (i32.const 0) (i32.const 0) + (if (then (i32.eqz) (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:478 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.eqz))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:487 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-br + (i32.const 0) + (block (br 0 (i32.eqz)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:496 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-br_if + (i32.const 0) + (block (br_if 0 (i32.eqz) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:505 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-br_table + (i32.const 0) + (block (br_table 0 (i32.eqz)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:514 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-return + (return (i32.eqz)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:522 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-select + (select (i32.eqz) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:530 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-call + (call 1 (i32.eqz)) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:539 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-unary-operand-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.eqz) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:555 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-local.set + (local i32) + (local.set 0 (i32.eqz)) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:564 +assert_invalid( + () => instantiate(`(module + (func $$type-unary-operand-empty-in-local.tee + (local i32) + (local.tee 0 (i32.eqz)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:573 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-unary-operand-empty-in-global.set + (global.set $$x (i32.eqz)) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:582 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-unary-operand-empty-in-memory.grow + (memory.grow (i32.eqz)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:591 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-unary-operand-empty-in-load + (i32.load (i32.eqz)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:600 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-unary-operand-empty-in-store + (i32.store (i32.eqz) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:610 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty + (i32.add) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:618 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty + (i32.const 0) (i32.add) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:626 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-block + (i32.const 0) (i32.const 0) + (block (i32.add) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:635 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-block + (i32.const 0) + (block (i32.const 0) (i32.add) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:644 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-loop + (i32.const 0) (i32.const 0) + (loop (i32.add) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:653 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-loop + (i32.const 0) + (loop (i32.const 0) (i32.add) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:662 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-if + (i32.const 0) (i32.const 0) (i32.const 0) + (if (i32.add) (then (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:671 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-if + (i32.const 0) (i32.const 0) + (if (i32.const 0) (then (i32.add)) (else (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:680 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-else + (i32.const 0) (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.add) (i32.const 0))) + (drop) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:690 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.add))) + (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:700 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-br + (i32.const 0) (i32.const 0) + (block (br 0 (i32.add)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:709 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-br + (i32.const 0) + (block (br 0 (i32.const 0) (i32.add)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:718 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-br_if + (i32.const 0) (i32.const 0) + (block (br_if 0 (i32.add) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:727 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-br_if + (i32.const 0) + (block (br_if 0 (i32.const 0) (i32.add) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:736 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-br_table + (i32.const 0) (i32.const 0) + (block (br_table 0 (i32.add)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:745 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-br_table + (i32.const 0) + (block (br_table 0 (i32.const 0) (i32.add)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:754 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-return + (return (i32.add)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:762 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-return + (return (i32.const 0) (i32.add)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:770 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-select + (select (i32.add) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:778 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-select + (select (i32.const 0) (i32.add) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:786 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-call + (call 1 (i32.add)) (drop) + ) + (func (param i32 i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:795 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-call + (call 1 (i32.const 0) (i32.add)) (drop) + ) + (func (param i32 i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:804 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-binary-1st-operand-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.add) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:820 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-binary-2nd-operand-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.const 0) (i32.add) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:836 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-local.set + (local i32) + (local.set 0 (i32.add)) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:845 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-local.set + (local i32) + (local.set 0 (i32.const 0) (i32.add)) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:854 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-1st-operand-empty-in-local.tee + (local i32) + (local.tee 0 (i32.add)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:863 +assert_invalid( + () => instantiate(`(module + (func $$type-binary-2nd-operand-empty-in-local.tee + (local i32) + (local.tee 0 (i32.const 0) (i32.add)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:872 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-binary-1st-operand-empty-in-global.set + (global.set $$x (i32.add)) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:881 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-binary-2nd-operand-empty-in-global.set + (global.set $$x (i32.const 0) (i32.add)) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:890 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-binary-1st-operand-empty-in-memory.grow + (memory.grow (i32.add)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:899 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-binary-2nd-operand-empty-in-memory.grow + (memory.grow (i32.const 0) (i32.add)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:908 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-binary-1st-operand-empty-in-load + (i32.load (i32.add)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:917 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-binary-2nd-operand-empty-in-load + (i32.load (i32.const 0) (i32.add)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:926 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-binary-1st-operand-empty-in-store + (i32.store (i32.add) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:935 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-binary-2nd-operand-empty-in-store + (i32.store (i32.const 1) (i32.add) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/i32.wast:948 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.add (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:949 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.and (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:950 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.div_s (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:951 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.div_u (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:952 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.mul (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:953 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.or (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:954 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.rem_s (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:955 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.rem_u (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:956 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.rotl (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:957 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.rotr (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:958 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.shl (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:959 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.shr_s (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:960 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.shr_u (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:961 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.sub (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:962 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.xor (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:963 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.eqz (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:964 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.clz (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:965 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.ctz (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:966 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.popcnt (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:967 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.eq (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:968 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.ge_s (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:969 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.ge_u (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:970 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.gt_s (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:971 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.gt_u (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:972 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.le_s (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:973 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.le_u (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:974 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.lt_s (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:975 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.lt_u (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:976 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32.ne (i64.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i32.wast:978 +assert_malformed( + () => instantiate(`(func (result i32) (i32.const nan:arithmetic)) `), + `unexpected token`, +); + +// ./test/core/i32.wast:982 +assert_malformed( + () => instantiate(`(func (result i32) (i32.const nan:canonical)) `), + `unexpected token`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/i64.wast.js b/js/src/jit-test/tests/wasm/spec/spec/i64.wast.js new file mode 100644 index 0000000000..1fb9bc1cc8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/i64.wast.js @@ -0,0 +1,1600 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/i64.wast + +// ./test/core/i64.wast:3 +let $0 = instantiate(`(module + (func (export "add") (param $$x i64) (param $$y i64) (result i64) (i64.add (local.get $$x) (local.get $$y))) + (func (export "sub") (param $$x i64) (param $$y i64) (result i64) (i64.sub (local.get $$x) (local.get $$y))) + (func (export "mul") (param $$x i64) (param $$y i64) (result i64) (i64.mul (local.get $$x) (local.get $$y))) + (func (export "div_s") (param $$x i64) (param $$y i64) (result i64) (i64.div_s (local.get $$x) (local.get $$y))) + (func (export "div_u") (param $$x i64) (param $$y i64) (result i64) (i64.div_u (local.get $$x) (local.get $$y))) + (func (export "rem_s") (param $$x i64) (param $$y i64) (result i64) (i64.rem_s (local.get $$x) (local.get $$y))) + (func (export "rem_u") (param $$x i64) (param $$y i64) (result i64) (i64.rem_u (local.get $$x) (local.get $$y))) + (func (export "and") (param $$x i64) (param $$y i64) (result i64) (i64.and (local.get $$x) (local.get $$y))) + (func (export "or") (param $$x i64) (param $$y i64) (result i64) (i64.or (local.get $$x) (local.get $$y))) + (func (export "xor") (param $$x i64) (param $$y i64) (result i64) (i64.xor (local.get $$x) (local.get $$y))) + (func (export "shl") (param $$x i64) (param $$y i64) (result i64) (i64.shl (local.get $$x) (local.get $$y))) + (func (export "shr_s") (param $$x i64) (param $$y i64) (result i64) (i64.shr_s (local.get $$x) (local.get $$y))) + (func (export "shr_u") (param $$x i64) (param $$y i64) (result i64) (i64.shr_u (local.get $$x) (local.get $$y))) + (func (export "rotl") (param $$x i64) (param $$y i64) (result i64) (i64.rotl (local.get $$x) (local.get $$y))) + (func (export "rotr") (param $$x i64) (param $$y i64) (result i64) (i64.rotr (local.get $$x) (local.get $$y))) + (func (export "clz") (param $$x i64) (result i64) (i64.clz (local.get $$x))) + (func (export "ctz") (param $$x i64) (result i64) (i64.ctz (local.get $$x))) + (func (export "popcnt") (param $$x i64) (result i64) (i64.popcnt (local.get $$x))) + (func (export "extend8_s") (param $$x i64) (result i64) (i64.extend8_s (local.get $$x))) + (func (export "extend16_s") (param $$x i64) (result i64) (i64.extend16_s (local.get $$x))) + (func (export "extend32_s") (param $$x i64) (result i64) (i64.extend32_s (local.get $$x))) + (func (export "eqz") (param $$x i64) (result i32) (i64.eqz (local.get $$x))) + (func (export "eq") (param $$x i64) (param $$y i64) (result i32) (i64.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x i64) (param $$y i64) (result i32) (i64.ne (local.get $$x) (local.get $$y))) + (func (export "lt_s") (param $$x i64) (param $$y i64) (result i32) (i64.lt_s (local.get $$x) (local.get $$y))) + (func (export "lt_u") (param $$x i64) (param $$y i64) (result i32) (i64.lt_u (local.get $$x) (local.get $$y))) + (func (export "le_s") (param $$x i64) (param $$y i64) (result i32) (i64.le_s (local.get $$x) (local.get $$y))) + (func (export "le_u") (param $$x i64) (param $$y i64) (result i32) (i64.le_u (local.get $$x) (local.get $$y))) + (func (export "gt_s") (param $$x i64) (param $$y i64) (result i32) (i64.gt_s (local.get $$x) (local.get $$y))) + (func (export "gt_u") (param $$x i64) (param $$y i64) (result i32) (i64.gt_u (local.get $$x) (local.get $$y))) + (func (export "ge_s") (param $$x i64) (param $$y i64) (result i32) (i64.ge_s (local.get $$x) (local.get $$y))) + (func (export "ge_u") (param $$x i64) (param $$y i64) (result i32) (i64.ge_u (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/i64.wast:38 +assert_return(() => invoke($0, `add`, [1n, 1n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:39 +assert_return(() => invoke($0, `add`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:40 +assert_return(() => invoke($0, `add`, [-1n, -1n]), [value("i64", -2n)]); + +// ./test/core/i64.wast:41 +assert_return(() => invoke($0, `add`, [-1n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:42 +assert_return( + () => invoke($0, `add`, [9223372036854775807n, 1n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:43 +assert_return( + () => invoke($0, `add`, [-9223372036854775808n, -1n]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/i64.wast:44 +assert_return( + () => invoke($0, `add`, [-9223372036854775808n, -9223372036854775808n]), + [value("i64", 0n)], +); + +// ./test/core/i64.wast:45 +assert_return(() => invoke($0, `add`, [1073741823n, 1n]), [value("i64", 1073741824n)]); + +// ./test/core/i64.wast:47 +assert_return(() => invoke($0, `sub`, [1n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:48 +assert_return(() => invoke($0, `sub`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:49 +assert_return(() => invoke($0, `sub`, [-1n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:50 +assert_return( + () => invoke($0, `sub`, [9223372036854775807n, -1n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:51 +assert_return( + () => invoke($0, `sub`, [-9223372036854775808n, 1n]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/i64.wast:52 +assert_return( + () => invoke($0, `sub`, [-9223372036854775808n, -9223372036854775808n]), + [value("i64", 0n)], +); + +// ./test/core/i64.wast:53 +assert_return(() => invoke($0, `sub`, [1073741823n, -1n]), [value("i64", 1073741824n)]); + +// ./test/core/i64.wast:55 +assert_return(() => invoke($0, `mul`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:56 +assert_return(() => invoke($0, `mul`, [1n, 0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:57 +assert_return(() => invoke($0, `mul`, [-1n, -1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:58 +assert_return(() => invoke($0, `mul`, [1152921504606846976n, 4096n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:59 +assert_return(() => invoke($0, `mul`, [-9223372036854775808n, 0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:60 +assert_return( + () => invoke($0, `mul`, [-9223372036854775808n, -1n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:61 +assert_return( + () => invoke($0, `mul`, [9223372036854775807n, -1n]), + [value("i64", -9223372036854775807n)], +); + +// ./test/core/i64.wast:62 +assert_return( + () => invoke($0, `mul`, [81985529216486895n, -81985529216486896n]), + [value("i64", 2465395958572223728n)], +); + +// ./test/core/i64.wast:63 +assert_return(() => invoke($0, `mul`, [9223372036854775807n, 9223372036854775807n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:65 +assert_trap(() => invoke($0, `div_s`, [1n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:66 +assert_trap(() => invoke($0, `div_s`, [0n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:67 +assert_trap(() => invoke($0, `div_s`, [-9223372036854775808n, -1n]), `integer overflow`); + +// ./test/core/i64.wast:68 +assert_trap(() => invoke($0, `div_s`, [-9223372036854775808n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:69 +assert_return(() => invoke($0, `div_s`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:70 +assert_return(() => invoke($0, `div_s`, [0n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:71 +assert_return(() => invoke($0, `div_s`, [0n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:72 +assert_return(() => invoke($0, `div_s`, [-1n, -1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:73 +assert_return( + () => invoke($0, `div_s`, [-9223372036854775808n, 2n]), + [value("i64", -4611686018427387904n)], +); + +// ./test/core/i64.wast:74 +assert_return( + () => invoke($0, `div_s`, [-9223372036854775807n, 1000n]), + [value("i64", -9223372036854775n)], +); + +// ./test/core/i64.wast:75 +assert_return(() => invoke($0, `div_s`, [5n, 2n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:76 +assert_return(() => invoke($0, `div_s`, [-5n, 2n]), [value("i64", -2n)]); + +// ./test/core/i64.wast:77 +assert_return(() => invoke($0, `div_s`, [5n, -2n]), [value("i64", -2n)]); + +// ./test/core/i64.wast:78 +assert_return(() => invoke($0, `div_s`, [-5n, -2n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:79 +assert_return(() => invoke($0, `div_s`, [7n, 3n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:80 +assert_return(() => invoke($0, `div_s`, [-7n, 3n]), [value("i64", -2n)]); + +// ./test/core/i64.wast:81 +assert_return(() => invoke($0, `div_s`, [7n, -3n]), [value("i64", -2n)]); + +// ./test/core/i64.wast:82 +assert_return(() => invoke($0, `div_s`, [-7n, -3n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:83 +assert_return(() => invoke($0, `div_s`, [11n, 5n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:84 +assert_return(() => invoke($0, `div_s`, [17n, 7n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:86 +assert_trap(() => invoke($0, `div_u`, [1n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:87 +assert_trap(() => invoke($0, `div_u`, [0n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:88 +assert_return(() => invoke($0, `div_u`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:89 +assert_return(() => invoke($0, `div_u`, [0n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:90 +assert_return(() => invoke($0, `div_u`, [-1n, -1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:91 +assert_return(() => invoke($0, `div_u`, [-9223372036854775808n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:92 +assert_return( + () => invoke($0, `div_u`, [-9223372036854775808n, 2n]), + [value("i64", 4611686018427387904n)], +); + +// ./test/core/i64.wast:93 +assert_return( + () => invoke($0, `div_u`, [-8074936608141340688n, 4294967297n]), + [value("i64", 2414874607n)], +); + +// ./test/core/i64.wast:94 +assert_return( + () => invoke($0, `div_u`, [-9223372036854775807n, 1000n]), + [value("i64", 9223372036854775n)], +); + +// ./test/core/i64.wast:95 +assert_return(() => invoke($0, `div_u`, [5n, 2n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:96 +assert_return(() => invoke($0, `div_u`, [-5n, 2n]), [value("i64", 9223372036854775805n)]); + +// ./test/core/i64.wast:97 +assert_return(() => invoke($0, `div_u`, [5n, -2n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:98 +assert_return(() => invoke($0, `div_u`, [-5n, -2n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:99 +assert_return(() => invoke($0, `div_u`, [7n, 3n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:100 +assert_return(() => invoke($0, `div_u`, [11n, 5n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:101 +assert_return(() => invoke($0, `div_u`, [17n, 7n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:103 +assert_trap(() => invoke($0, `rem_s`, [1n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:104 +assert_trap(() => invoke($0, `rem_s`, [0n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:105 +assert_return(() => invoke($0, `rem_s`, [9223372036854775807n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:106 +assert_return(() => invoke($0, `rem_s`, [1n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:107 +assert_return(() => invoke($0, `rem_s`, [0n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:108 +assert_return(() => invoke($0, `rem_s`, [0n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:109 +assert_return(() => invoke($0, `rem_s`, [-1n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:110 +assert_return(() => invoke($0, `rem_s`, [-9223372036854775808n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:111 +assert_return(() => invoke($0, `rem_s`, [-9223372036854775808n, 2n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:112 +assert_return(() => invoke($0, `rem_s`, [-9223372036854775807n, 1000n]), [value("i64", -807n)]); + +// ./test/core/i64.wast:113 +assert_return(() => invoke($0, `rem_s`, [5n, 2n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:114 +assert_return(() => invoke($0, `rem_s`, [-5n, 2n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:115 +assert_return(() => invoke($0, `rem_s`, [5n, -2n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:116 +assert_return(() => invoke($0, `rem_s`, [-5n, -2n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:117 +assert_return(() => invoke($0, `rem_s`, [7n, 3n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:118 +assert_return(() => invoke($0, `rem_s`, [-7n, 3n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:119 +assert_return(() => invoke($0, `rem_s`, [7n, -3n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:120 +assert_return(() => invoke($0, `rem_s`, [-7n, -3n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:121 +assert_return(() => invoke($0, `rem_s`, [11n, 5n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:122 +assert_return(() => invoke($0, `rem_s`, [17n, 7n]), [value("i64", 3n)]); + +// ./test/core/i64.wast:124 +assert_trap(() => invoke($0, `rem_u`, [1n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:125 +assert_trap(() => invoke($0, `rem_u`, [0n, 0n]), `integer divide by zero`); + +// ./test/core/i64.wast:126 +assert_return(() => invoke($0, `rem_u`, [1n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:127 +assert_return(() => invoke($0, `rem_u`, [0n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:128 +assert_return(() => invoke($0, `rem_u`, [-1n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:129 +assert_return( + () => invoke($0, `rem_u`, [-9223372036854775808n, -1n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:130 +assert_return(() => invoke($0, `rem_u`, [-9223372036854775808n, 2n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:131 +assert_return( + () => invoke($0, `rem_u`, [-8074936608141340688n, 4294967297n]), + [value("i64", 2147483649n)], +); + +// ./test/core/i64.wast:132 +assert_return(() => invoke($0, `rem_u`, [-9223372036854775807n, 1000n]), [value("i64", 809n)]); + +// ./test/core/i64.wast:133 +assert_return(() => invoke($0, `rem_u`, [5n, 2n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:134 +assert_return(() => invoke($0, `rem_u`, [-5n, 2n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:135 +assert_return(() => invoke($0, `rem_u`, [5n, -2n]), [value("i64", 5n)]); + +// ./test/core/i64.wast:136 +assert_return(() => invoke($0, `rem_u`, [-5n, -2n]), [value("i64", -5n)]); + +// ./test/core/i64.wast:137 +assert_return(() => invoke($0, `rem_u`, [7n, 3n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:138 +assert_return(() => invoke($0, `rem_u`, [11n, 5n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:139 +assert_return(() => invoke($0, `rem_u`, [17n, 7n]), [value("i64", 3n)]); + +// ./test/core/i64.wast:141 +assert_return(() => invoke($0, `and`, [1n, 0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:142 +assert_return(() => invoke($0, `and`, [0n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:143 +assert_return(() => invoke($0, `and`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:144 +assert_return(() => invoke($0, `and`, [0n, 0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:145 +assert_return( + () => invoke($0, `and`, [9223372036854775807n, -9223372036854775808n]), + [value("i64", 0n)], +); + +// ./test/core/i64.wast:146 +assert_return( + () => invoke($0, `and`, [9223372036854775807n, -1n]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/i64.wast:147 +assert_return(() => invoke($0, `and`, [4042326015n, 4294963440n]), [value("i64", 4042322160n)]); + +// ./test/core/i64.wast:148 +assert_return(() => invoke($0, `and`, [-1n, -1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:150 +assert_return(() => invoke($0, `or`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:151 +assert_return(() => invoke($0, `or`, [0n, 1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:152 +assert_return(() => invoke($0, `or`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:153 +assert_return(() => invoke($0, `or`, [0n, 0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:154 +assert_return( + () => invoke($0, `or`, [9223372036854775807n, -9223372036854775808n]), + [value("i64", -1n)], +); + +// ./test/core/i64.wast:155 +assert_return( + () => invoke($0, `or`, [-9223372036854775808n, 0n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:156 +assert_return(() => invoke($0, `or`, [4042326015n, 4294963440n]), [value("i64", 4294967295n)]); + +// ./test/core/i64.wast:157 +assert_return(() => invoke($0, `or`, [-1n, -1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:159 +assert_return(() => invoke($0, `xor`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:160 +assert_return(() => invoke($0, `xor`, [0n, 1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:161 +assert_return(() => invoke($0, `xor`, [1n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:162 +assert_return(() => invoke($0, `xor`, [0n, 0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:163 +assert_return( + () => invoke($0, `xor`, [9223372036854775807n, -9223372036854775808n]), + [value("i64", -1n)], +); + +// ./test/core/i64.wast:164 +assert_return( + () => invoke($0, `xor`, [-9223372036854775808n, 0n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:165 +assert_return( + () => invoke($0, `xor`, [-1n, -9223372036854775808n]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/i64.wast:166 +assert_return( + () => invoke($0, `xor`, [-1n, 9223372036854775807n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:167 +assert_return(() => invoke($0, `xor`, [4042326015n, 4294963440n]), [value("i64", 252645135n)]); + +// ./test/core/i64.wast:168 +assert_return(() => invoke($0, `xor`, [-1n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:170 +assert_return(() => invoke($0, `shl`, [1n, 1n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:171 +assert_return(() => invoke($0, `shl`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:172 +assert_return(() => invoke($0, `shl`, [9223372036854775807n, 1n]), [value("i64", -2n)]); + +// ./test/core/i64.wast:173 +assert_return(() => invoke($0, `shl`, [-1n, 1n]), [value("i64", -2n)]); + +// ./test/core/i64.wast:174 +assert_return(() => invoke($0, `shl`, [-9223372036854775808n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:175 +assert_return( + () => invoke($0, `shl`, [4611686018427387904n, 1n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:176 +assert_return(() => invoke($0, `shl`, [1n, 63n]), [value("i64", -9223372036854775808n)]); + +// ./test/core/i64.wast:177 +assert_return(() => invoke($0, `shl`, [1n, 64n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:178 +assert_return(() => invoke($0, `shl`, [1n, 65n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:179 +assert_return(() => invoke($0, `shl`, [1n, -1n]), [value("i64", -9223372036854775808n)]); + +// ./test/core/i64.wast:180 +assert_return( + () => invoke($0, `shl`, [1n, 9223372036854775807n]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/i64.wast:182 +assert_return(() => invoke($0, `shr_s`, [1n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:183 +assert_return(() => invoke($0, `shr_s`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:184 +assert_return(() => invoke($0, `shr_s`, [-1n, 1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:185 +assert_return( + () => invoke($0, `shr_s`, [9223372036854775807n, 1n]), + [value("i64", 4611686018427387903n)], +); + +// ./test/core/i64.wast:186 +assert_return( + () => invoke($0, `shr_s`, [-9223372036854775808n, 1n]), + [value("i64", -4611686018427387904n)], +); + +// ./test/core/i64.wast:187 +assert_return( + () => invoke($0, `shr_s`, [4611686018427387904n, 1n]), + [value("i64", 2305843009213693952n)], +); + +// ./test/core/i64.wast:188 +assert_return(() => invoke($0, `shr_s`, [1n, 64n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:189 +assert_return(() => invoke($0, `shr_s`, [1n, 65n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:190 +assert_return(() => invoke($0, `shr_s`, [1n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:191 +assert_return(() => invoke($0, `shr_s`, [1n, 9223372036854775807n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:192 +assert_return(() => invoke($0, `shr_s`, [1n, -9223372036854775808n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:193 +assert_return(() => invoke($0, `shr_s`, [-9223372036854775808n, 63n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:194 +assert_return(() => invoke($0, `shr_s`, [-1n, 64n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:195 +assert_return(() => invoke($0, `shr_s`, [-1n, 65n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:196 +assert_return(() => invoke($0, `shr_s`, [-1n, -1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:197 +assert_return(() => invoke($0, `shr_s`, [-1n, 9223372036854775807n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:198 +assert_return(() => invoke($0, `shr_s`, [-1n, -9223372036854775808n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:200 +assert_return(() => invoke($0, `shr_u`, [1n, 1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:201 +assert_return(() => invoke($0, `shr_u`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:202 +assert_return(() => invoke($0, `shr_u`, [-1n, 1n]), [value("i64", 9223372036854775807n)]); + +// ./test/core/i64.wast:203 +assert_return( + () => invoke($0, `shr_u`, [9223372036854775807n, 1n]), + [value("i64", 4611686018427387903n)], +); + +// ./test/core/i64.wast:204 +assert_return( + () => invoke($0, `shr_u`, [-9223372036854775808n, 1n]), + [value("i64", 4611686018427387904n)], +); + +// ./test/core/i64.wast:205 +assert_return( + () => invoke($0, `shr_u`, [4611686018427387904n, 1n]), + [value("i64", 2305843009213693952n)], +); + +// ./test/core/i64.wast:206 +assert_return(() => invoke($0, `shr_u`, [1n, 64n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:207 +assert_return(() => invoke($0, `shr_u`, [1n, 65n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:208 +assert_return(() => invoke($0, `shr_u`, [1n, -1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:209 +assert_return(() => invoke($0, `shr_u`, [1n, 9223372036854775807n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:210 +assert_return(() => invoke($0, `shr_u`, [1n, -9223372036854775808n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:211 +assert_return(() => invoke($0, `shr_u`, [-9223372036854775808n, 63n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:212 +assert_return(() => invoke($0, `shr_u`, [-1n, 64n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:213 +assert_return(() => invoke($0, `shr_u`, [-1n, 65n]), [value("i64", 9223372036854775807n)]); + +// ./test/core/i64.wast:214 +assert_return(() => invoke($0, `shr_u`, [-1n, -1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:215 +assert_return(() => invoke($0, `shr_u`, [-1n, 9223372036854775807n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:216 +assert_return(() => invoke($0, `shr_u`, [-1n, -9223372036854775808n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:218 +assert_return(() => invoke($0, `rotl`, [1n, 1n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:219 +assert_return(() => invoke($0, `rotl`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:220 +assert_return(() => invoke($0, `rotl`, [-1n, 1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:221 +assert_return(() => invoke($0, `rotl`, [1n, 64n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:222 +assert_return( + () => invoke($0, `rotl`, [-6067025490386449714n, 1n]), + [value("i64", 6312693092936652189n)], +); + +// ./test/core/i64.wast:223 +assert_return( + () => invoke($0, `rotl`, [-144115184384868352n, 4n]), + [value("i64", -2305842950157893617n)], +); + +// ./test/core/i64.wast:224 +assert_return( + () => invoke($0, `rotl`, [-6067173104435169271n, 53n]), + [value("i64", 87109505680009935n)], +); + +// ./test/core/i64.wast:225 +assert_return( + () => invoke($0, `rotl`, [-6066028401059725156n, 63n]), + [value("i64", 6190357836324913230n)], +); + +// ./test/core/i64.wast:226 +assert_return( + () => invoke($0, `rotl`, [-6067173104435169271n, 245n]), + [value("i64", 87109505680009935n)], +); + +// ./test/core/i64.wast:227 +assert_return( + () => invoke($0, `rotl`, [-6067067139002042359n, -19n]), + [value("i64", -3530481836149793302n)], +); + +// ./test/core/i64.wast:228 +assert_return( + () => invoke($0, `rotl`, [-6066028401059725156n, -9223372036854775745n]), + [value("i64", 6190357836324913230n)], +); + +// ./test/core/i64.wast:229 +assert_return(() => invoke($0, `rotl`, [1n, 63n]), [value("i64", -9223372036854775808n)]); + +// ./test/core/i64.wast:230 +assert_return(() => invoke($0, `rotl`, [-9223372036854775808n, 1n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:232 +assert_return(() => invoke($0, `rotr`, [1n, 1n]), [value("i64", -9223372036854775808n)]); + +// ./test/core/i64.wast:233 +assert_return(() => invoke($0, `rotr`, [1n, 0n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:234 +assert_return(() => invoke($0, `rotr`, [-1n, 1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:235 +assert_return(() => invoke($0, `rotr`, [1n, 64n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:236 +assert_return( + () => invoke($0, `rotr`, [-6067025490386449714n, 1n]), + [value("i64", 6189859291661550951n)], +); + +// ./test/core/i64.wast:237 +assert_return( + () => invoke($0, `rotr`, [-144115184384868352n, 4n]), + [value("i64", 1143914305582792704n)], +); + +// ./test/core/i64.wast:238 +assert_return( + () => invoke($0, `rotr`, [-6067173104435169271n, 53n]), + [value("i64", 7534987797011123550n)], +); + +// ./test/core/i64.wast:239 +assert_return( + () => invoke($0, `rotr`, [-6066028401059725156n, 63n]), + [value("i64", 6314687271590101305n)], +); + +// ./test/core/i64.wast:240 +assert_return( + () => invoke($0, `rotr`, [-6067173104435169271n, 245n]), + [value("i64", 7534987797011123550n)], +); + +// ./test/core/i64.wast:241 +assert_return( + () => invoke($0, `rotr`, [-6067067139002042359n, -19n]), + [value("i64", -7735078922541506965n)], +); + +// ./test/core/i64.wast:242 +assert_return( + () => invoke($0, `rotr`, [-6066028401059725156n, -9223372036854775745n]), + [value("i64", 6314687271590101305n)], +); + +// ./test/core/i64.wast:243 +assert_return(() => invoke($0, `rotr`, [1n, 63n]), [value("i64", 2n)]); + +// ./test/core/i64.wast:244 +assert_return(() => invoke($0, `rotr`, [-9223372036854775808n, 63n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:246 +assert_return(() => invoke($0, `clz`, [-1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:247 +assert_return(() => invoke($0, `clz`, [0n]), [value("i64", 64n)]); + +// ./test/core/i64.wast:248 +assert_return(() => invoke($0, `clz`, [32768n]), [value("i64", 48n)]); + +// ./test/core/i64.wast:249 +assert_return(() => invoke($0, `clz`, [255n]), [value("i64", 56n)]); + +// ./test/core/i64.wast:250 +assert_return(() => invoke($0, `clz`, [-9223372036854775808n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:251 +assert_return(() => invoke($0, `clz`, [1n]), [value("i64", 63n)]); + +// ./test/core/i64.wast:252 +assert_return(() => invoke($0, `clz`, [2n]), [value("i64", 62n)]); + +// ./test/core/i64.wast:253 +assert_return(() => invoke($0, `clz`, [9223372036854775807n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:255 +assert_return(() => invoke($0, `ctz`, [-1n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:256 +assert_return(() => invoke($0, `ctz`, [0n]), [value("i64", 64n)]); + +// ./test/core/i64.wast:257 +assert_return(() => invoke($0, `ctz`, [32768n]), [value("i64", 15n)]); + +// ./test/core/i64.wast:258 +assert_return(() => invoke($0, `ctz`, [65536n]), [value("i64", 16n)]); + +// ./test/core/i64.wast:259 +assert_return(() => invoke($0, `ctz`, [-9223372036854775808n]), [value("i64", 63n)]); + +// ./test/core/i64.wast:260 +assert_return(() => invoke($0, `ctz`, [9223372036854775807n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:262 +assert_return(() => invoke($0, `popcnt`, [-1n]), [value("i64", 64n)]); + +// ./test/core/i64.wast:263 +assert_return(() => invoke($0, `popcnt`, [0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:264 +assert_return(() => invoke($0, `popcnt`, [32768n]), [value("i64", 1n)]); + +// ./test/core/i64.wast:265 +assert_return(() => invoke($0, `popcnt`, [-9223231297218904064n]), [value("i64", 4n)]); + +// ./test/core/i64.wast:266 +assert_return(() => invoke($0, `popcnt`, [9223372036854775807n]), [value("i64", 63n)]); + +// ./test/core/i64.wast:267 +assert_return(() => invoke($0, `popcnt`, [-6148914692668172971n]), [value("i64", 32n)]); + +// ./test/core/i64.wast:268 +assert_return(() => invoke($0, `popcnt`, [-7378697629197489494n]), [value("i64", 32n)]); + +// ./test/core/i64.wast:269 +assert_return(() => invoke($0, `popcnt`, [-2401053088876216593n]), [value("i64", 48n)]); + +// ./test/core/i64.wast:271 +assert_return(() => invoke($0, `extend8_s`, [0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:272 +assert_return(() => invoke($0, `extend8_s`, [127n]), [value("i64", 127n)]); + +// ./test/core/i64.wast:273 +assert_return(() => invoke($0, `extend8_s`, [128n]), [value("i64", -128n)]); + +// ./test/core/i64.wast:274 +assert_return(() => invoke($0, `extend8_s`, [255n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:275 +assert_return(() => invoke($0, `extend8_s`, [81985529216486656n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:276 +assert_return(() => invoke($0, `extend8_s`, [-81985529216486784n]), [value("i64", -128n)]); + +// ./test/core/i64.wast:277 +assert_return(() => invoke($0, `extend8_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:279 +assert_return(() => invoke($0, `extend16_s`, [0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:280 +assert_return(() => invoke($0, `extend16_s`, [32767n]), [value("i64", 32767n)]); + +// ./test/core/i64.wast:281 +assert_return(() => invoke($0, `extend16_s`, [32768n]), [value("i64", -32768n)]); + +// ./test/core/i64.wast:282 +assert_return(() => invoke($0, `extend16_s`, [65535n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:283 +assert_return(() => invoke($0, `extend16_s`, [1311768467463733248n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:284 +assert_return(() => invoke($0, `extend16_s`, [-81985529216466944n]), [value("i64", -32768n)]); + +// ./test/core/i64.wast:285 +assert_return(() => invoke($0, `extend16_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:287 +assert_return(() => invoke($0, `extend32_s`, [0n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:288 +assert_return(() => invoke($0, `extend32_s`, [32767n]), [value("i64", 32767n)]); + +// ./test/core/i64.wast:289 +assert_return(() => invoke($0, `extend32_s`, [32768n]), [value("i64", 32768n)]); + +// ./test/core/i64.wast:290 +assert_return(() => invoke($0, `extend32_s`, [65535n]), [value("i64", 65535n)]); + +// ./test/core/i64.wast:291 +assert_return(() => invoke($0, `extend32_s`, [2147483647n]), [value("i64", 2147483647n)]); + +// ./test/core/i64.wast:292 +assert_return(() => invoke($0, `extend32_s`, [2147483648n]), [value("i64", -2147483648n)]); + +// ./test/core/i64.wast:293 +assert_return(() => invoke($0, `extend32_s`, [4294967295n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:294 +assert_return(() => invoke($0, `extend32_s`, [81985526906748928n]), [value("i64", 0n)]); + +// ./test/core/i64.wast:295 +assert_return(() => invoke($0, `extend32_s`, [-81985529054232576n]), [value("i64", -2147483648n)]); + +// ./test/core/i64.wast:296 +assert_return(() => invoke($0, `extend32_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/i64.wast:298 +assert_return(() => invoke($0, `eqz`, [0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:299 +assert_return(() => invoke($0, `eqz`, [1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:300 +assert_return(() => invoke($0, `eqz`, [-9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:301 +assert_return(() => invoke($0, `eqz`, [9223372036854775807n]), [value("i32", 0)]); + +// ./test/core/i64.wast:302 +assert_return(() => invoke($0, `eqz`, [-1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:304 +assert_return(() => invoke($0, `eq`, [0n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:305 +assert_return(() => invoke($0, `eq`, [1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:306 +assert_return(() => invoke($0, `eq`, [-1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:307 +assert_return(() => invoke($0, `eq`, [-9223372036854775808n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:308 +assert_return(() => invoke($0, `eq`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 1)]); + +// ./test/core/i64.wast:309 +assert_return(() => invoke($0, `eq`, [-1n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:310 +assert_return(() => invoke($0, `eq`, [1n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:311 +assert_return(() => invoke($0, `eq`, [0n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:312 +assert_return(() => invoke($0, `eq`, [-9223372036854775808n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:313 +assert_return(() => invoke($0, `eq`, [0n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:314 +assert_return(() => invoke($0, `eq`, [-9223372036854775808n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:315 +assert_return(() => invoke($0, `eq`, [-1n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:316 +assert_return(() => invoke($0, `eq`, [-9223372036854775808n, 9223372036854775807n]), [value("i32", 0)]); + +// ./test/core/i64.wast:317 +assert_return(() => invoke($0, `eq`, [9223372036854775807n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:319 +assert_return(() => invoke($0, `ne`, [0n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:320 +assert_return(() => invoke($0, `ne`, [1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:321 +assert_return(() => invoke($0, `ne`, [-1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:322 +assert_return(() => invoke($0, `ne`, [-9223372036854775808n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:323 +assert_return(() => invoke($0, `ne`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 0)]); + +// ./test/core/i64.wast:324 +assert_return(() => invoke($0, `ne`, [-1n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:325 +assert_return(() => invoke($0, `ne`, [1n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:326 +assert_return(() => invoke($0, `ne`, [0n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:327 +assert_return(() => invoke($0, `ne`, [-9223372036854775808n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:328 +assert_return(() => invoke($0, `ne`, [0n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:329 +assert_return(() => invoke($0, `ne`, [-9223372036854775808n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:330 +assert_return(() => invoke($0, `ne`, [-1n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:331 +assert_return(() => invoke($0, `ne`, [-9223372036854775808n, 9223372036854775807n]), [value("i32", 1)]); + +// ./test/core/i64.wast:332 +assert_return(() => invoke($0, `ne`, [9223372036854775807n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:334 +assert_return(() => invoke($0, `lt_s`, [0n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:335 +assert_return(() => invoke($0, `lt_s`, [1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:336 +assert_return(() => invoke($0, `lt_s`, [-1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:337 +assert_return( + () => invoke($0, `lt_s`, [-9223372036854775808n, -9223372036854775808n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:338 +assert_return(() => invoke($0, `lt_s`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 0)]); + +// ./test/core/i64.wast:339 +assert_return(() => invoke($0, `lt_s`, [-1n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:340 +assert_return(() => invoke($0, `lt_s`, [1n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:341 +assert_return(() => invoke($0, `lt_s`, [0n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:342 +assert_return(() => invoke($0, `lt_s`, [-9223372036854775808n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:343 +assert_return(() => invoke($0, `lt_s`, [0n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:344 +assert_return(() => invoke($0, `lt_s`, [-9223372036854775808n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:345 +assert_return(() => invoke($0, `lt_s`, [-1n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:346 +assert_return( + () => invoke($0, `lt_s`, [-9223372036854775808n, 9223372036854775807n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:347 +assert_return( + () => invoke($0, `lt_s`, [9223372036854775807n, -9223372036854775808n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:349 +assert_return(() => invoke($0, `lt_u`, [0n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:350 +assert_return(() => invoke($0, `lt_u`, [1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:351 +assert_return(() => invoke($0, `lt_u`, [-1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:352 +assert_return( + () => invoke($0, `lt_u`, [-9223372036854775808n, -9223372036854775808n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:353 +assert_return(() => invoke($0, `lt_u`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 0)]); + +// ./test/core/i64.wast:354 +assert_return(() => invoke($0, `lt_u`, [-1n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:355 +assert_return(() => invoke($0, `lt_u`, [1n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:356 +assert_return(() => invoke($0, `lt_u`, [0n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:357 +assert_return(() => invoke($0, `lt_u`, [-9223372036854775808n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:358 +assert_return(() => invoke($0, `lt_u`, [0n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:359 +assert_return(() => invoke($0, `lt_u`, [-9223372036854775808n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:360 +assert_return(() => invoke($0, `lt_u`, [-1n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:361 +assert_return( + () => invoke($0, `lt_u`, [-9223372036854775808n, 9223372036854775807n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:362 +assert_return( + () => invoke($0, `lt_u`, [9223372036854775807n, -9223372036854775808n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:364 +assert_return(() => invoke($0, `le_s`, [0n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:365 +assert_return(() => invoke($0, `le_s`, [1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:366 +assert_return(() => invoke($0, `le_s`, [-1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:367 +assert_return( + () => invoke($0, `le_s`, [-9223372036854775808n, -9223372036854775808n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:368 +assert_return(() => invoke($0, `le_s`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 1)]); + +// ./test/core/i64.wast:369 +assert_return(() => invoke($0, `le_s`, [-1n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:370 +assert_return(() => invoke($0, `le_s`, [1n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:371 +assert_return(() => invoke($0, `le_s`, [0n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:372 +assert_return(() => invoke($0, `le_s`, [-9223372036854775808n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:373 +assert_return(() => invoke($0, `le_s`, [0n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:374 +assert_return(() => invoke($0, `le_s`, [-9223372036854775808n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:375 +assert_return(() => invoke($0, `le_s`, [-1n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:376 +assert_return( + () => invoke($0, `le_s`, [-9223372036854775808n, 9223372036854775807n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:377 +assert_return( + () => invoke($0, `le_s`, [9223372036854775807n, -9223372036854775808n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:379 +assert_return(() => invoke($0, `le_u`, [0n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:380 +assert_return(() => invoke($0, `le_u`, [1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:381 +assert_return(() => invoke($0, `le_u`, [-1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:382 +assert_return( + () => invoke($0, `le_u`, [-9223372036854775808n, -9223372036854775808n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:383 +assert_return(() => invoke($0, `le_u`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 1)]); + +// ./test/core/i64.wast:384 +assert_return(() => invoke($0, `le_u`, [-1n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:385 +assert_return(() => invoke($0, `le_u`, [1n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:386 +assert_return(() => invoke($0, `le_u`, [0n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:387 +assert_return(() => invoke($0, `le_u`, [-9223372036854775808n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:388 +assert_return(() => invoke($0, `le_u`, [0n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:389 +assert_return(() => invoke($0, `le_u`, [-9223372036854775808n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:390 +assert_return(() => invoke($0, `le_u`, [-1n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:391 +assert_return( + () => invoke($0, `le_u`, [-9223372036854775808n, 9223372036854775807n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:392 +assert_return( + () => invoke($0, `le_u`, [9223372036854775807n, -9223372036854775808n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:394 +assert_return(() => invoke($0, `gt_s`, [0n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:395 +assert_return(() => invoke($0, `gt_s`, [1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:396 +assert_return(() => invoke($0, `gt_s`, [-1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:397 +assert_return( + () => invoke($0, `gt_s`, [-9223372036854775808n, -9223372036854775808n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:398 +assert_return(() => invoke($0, `gt_s`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 0)]); + +// ./test/core/i64.wast:399 +assert_return(() => invoke($0, `gt_s`, [-1n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:400 +assert_return(() => invoke($0, `gt_s`, [1n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:401 +assert_return(() => invoke($0, `gt_s`, [0n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:402 +assert_return(() => invoke($0, `gt_s`, [-9223372036854775808n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:403 +assert_return(() => invoke($0, `gt_s`, [0n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:404 +assert_return(() => invoke($0, `gt_s`, [-9223372036854775808n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:405 +assert_return(() => invoke($0, `gt_s`, [-1n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:406 +assert_return( + () => invoke($0, `gt_s`, [-9223372036854775808n, 9223372036854775807n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:407 +assert_return( + () => invoke($0, `gt_s`, [9223372036854775807n, -9223372036854775808n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:409 +assert_return(() => invoke($0, `gt_u`, [0n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:410 +assert_return(() => invoke($0, `gt_u`, [1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:411 +assert_return(() => invoke($0, `gt_u`, [-1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:412 +assert_return( + () => invoke($0, `gt_u`, [-9223372036854775808n, -9223372036854775808n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:413 +assert_return(() => invoke($0, `gt_u`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 0)]); + +// ./test/core/i64.wast:414 +assert_return(() => invoke($0, `gt_u`, [-1n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:415 +assert_return(() => invoke($0, `gt_u`, [1n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:416 +assert_return(() => invoke($0, `gt_u`, [0n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:417 +assert_return(() => invoke($0, `gt_u`, [-9223372036854775808n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:418 +assert_return(() => invoke($0, `gt_u`, [0n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:419 +assert_return(() => invoke($0, `gt_u`, [-9223372036854775808n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:420 +assert_return(() => invoke($0, `gt_u`, [-1n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:421 +assert_return( + () => invoke($0, `gt_u`, [-9223372036854775808n, 9223372036854775807n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:422 +assert_return( + () => invoke($0, `gt_u`, [9223372036854775807n, -9223372036854775808n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:424 +assert_return(() => invoke($0, `ge_s`, [0n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:425 +assert_return(() => invoke($0, `ge_s`, [1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:426 +assert_return(() => invoke($0, `ge_s`, [-1n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:427 +assert_return( + () => invoke($0, `ge_s`, [-9223372036854775808n, -9223372036854775808n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:428 +assert_return(() => invoke($0, `ge_s`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 1)]); + +// ./test/core/i64.wast:429 +assert_return(() => invoke($0, `ge_s`, [-1n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:430 +assert_return(() => invoke($0, `ge_s`, [1n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:431 +assert_return(() => invoke($0, `ge_s`, [0n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:432 +assert_return(() => invoke($0, `ge_s`, [-9223372036854775808n, 0n]), [value("i32", 0)]); + +// ./test/core/i64.wast:433 +assert_return(() => invoke($0, `ge_s`, [0n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:434 +assert_return(() => invoke($0, `ge_s`, [-9223372036854775808n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:435 +assert_return(() => invoke($0, `ge_s`, [-1n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:436 +assert_return( + () => invoke($0, `ge_s`, [-9223372036854775808n, 9223372036854775807n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:437 +assert_return( + () => invoke($0, `ge_s`, [9223372036854775807n, -9223372036854775808n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:439 +assert_return(() => invoke($0, `ge_u`, [0n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:440 +assert_return(() => invoke($0, `ge_u`, [1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:441 +assert_return(() => invoke($0, `ge_u`, [-1n, 1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:442 +assert_return( + () => invoke($0, `ge_u`, [-9223372036854775808n, -9223372036854775808n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:443 +assert_return(() => invoke($0, `ge_u`, [9223372036854775807n, 9223372036854775807n]), [value("i32", 1)]); + +// ./test/core/i64.wast:444 +assert_return(() => invoke($0, `ge_u`, [-1n, -1n]), [value("i32", 1)]); + +// ./test/core/i64.wast:445 +assert_return(() => invoke($0, `ge_u`, [1n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:446 +assert_return(() => invoke($0, `ge_u`, [0n, 1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:447 +assert_return(() => invoke($0, `ge_u`, [-9223372036854775808n, 0n]), [value("i32", 1)]); + +// ./test/core/i64.wast:448 +assert_return(() => invoke($0, `ge_u`, [0n, -9223372036854775808n]), [value("i32", 0)]); + +// ./test/core/i64.wast:449 +assert_return(() => invoke($0, `ge_u`, [-9223372036854775808n, -1n]), [value("i32", 0)]); + +// ./test/core/i64.wast:450 +assert_return(() => invoke($0, `ge_u`, [-1n, -9223372036854775808n]), [value("i32", 1)]); + +// ./test/core/i64.wast:451 +assert_return( + () => invoke($0, `ge_u`, [-9223372036854775808n, 9223372036854775807n]), + [value("i32", 1)], +); + +// ./test/core/i64.wast:452 +assert_return( + () => invoke($0, `ge_u`, [9223372036854775807n, -9223372036854775808n]), + [value("i32", 0)], +); + +// ./test/core/i64.wast:457 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.add (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:458 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.and (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:459 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.div_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:460 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.div_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:461 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.mul (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:462 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.or (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:463 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.rem_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:464 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.rem_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:465 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.rotl (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:466 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.rotr (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:467 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.shl (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:468 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.shr_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:469 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.shr_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:470 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.sub (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:471 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.xor (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:472 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.eqz (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:473 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.clz (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:474 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.ctz (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:475 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.popcnt (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:476 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.eq (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:477 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.ge_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:478 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.ge_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:479 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.gt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:480 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.gt_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:481 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.le_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:482 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.le_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:483 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.lt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:484 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.lt_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:485 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64.ne (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/i64.wast:487 +assert_malformed( + () => instantiate(`(func (result i64) (i64.const nan:arithmetic)) `), + `unexpected token`, +); + +// ./test/core/i64.wast:491 +assert_malformed( + () => instantiate(`(func (result i64) (i64.const nan:canonical)) `), + `unexpected token`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/if.wast.js b/js/src/jit-test/tests/wasm/spec/spec/if.wast.js new file mode 100644 index 0000000000..ada0bd224a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/if.wast.js @@ -0,0 +1,1911 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/if.wast + +// ./test/core/if.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definition + (memory 1) + + (func $$dummy) + + (func (export "empty") (param i32) + (if (local.get 0) (then)) + (if (local.get 0) (then) (else)) + (if $$l (local.get 0) (then)) + (if $$l (local.get 0) (then) (else)) + ) + + (func (export "singular") (param i32) (result i32) + (if (local.get 0) (then (nop))) + (if (local.get 0) (then (nop)) (else (nop))) + (if (result i32) (local.get 0) (then (i32.const 7)) (else (i32.const 8))) + ) + + (func (export "multi") (param i32) (result i32 i32) + (if (local.get 0) (then (call $$dummy) (call $$dummy) (call $$dummy))) + (if (local.get 0) (then) (else (call $$dummy) (call $$dummy) (call $$dummy))) + (if (result i32) (local.get 0) + (then (call $$dummy) (call $$dummy) (i32.const 8) (call $$dummy)) + (else (call $$dummy) (call $$dummy) (i32.const 9) (call $$dummy)) + ) + (if (result i32 i64 i32) (local.get 0) + (then + (call $$dummy) (call $$dummy) (i32.const 1) (call $$dummy) + (call $$dummy) (call $$dummy) (i64.const 2) (call $$dummy) + (call $$dummy) (call $$dummy) (i32.const 3) (call $$dummy) + ) + (else + (call $$dummy) (call $$dummy) (i32.const -1) (call $$dummy) + (call $$dummy) (call $$dummy) (i64.const -2) (call $$dummy) + (call $$dummy) (call $$dummy) (i32.const -3) (call $$dummy) + ) + ) + (drop) (drop) + ) + + (func (export "nested") (param i32 i32) (result i32) + (if (result i32) (local.get 0) + (then + (if (local.get 1) (then (call $$dummy) (block) (nop))) + (if (local.get 1) (then) (else (call $$dummy) (block) (nop))) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 9)) + (else (call $$dummy) (i32.const 10)) + ) + ) + (else + (if (local.get 1) (then (call $$dummy) (block) (nop))) + (if (local.get 1) (then) (else (call $$dummy) (block) (nop))) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 10)) + (else (call $$dummy) (i32.const 11)) + ) + ) + ) + ) + + (func (export "as-select-first") (param i32) (result i32) + (select + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-select-mid") (param i32) (result i32) + (select + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 3) + ) + ) + (func (export "as-select-last") (param i32) (result i32) + (select + (i32.const 2) (i32.const 3) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + + (func (export "as-loop-first") (param i32) (result i32) + (loop (result i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (call $$dummy) (call $$dummy) + ) + ) + (func (export "as-loop-mid") (param i32) (result i32) + (loop (result i32) + (call $$dummy) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (call $$dummy) + ) + ) + (func (export "as-loop-last") (param i32) (result i32) + (loop (result i32) + (call $$dummy) (call $$dummy) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + + (func (export "as-if-condition") (param i32) (result i32) + (if (result i32) + (if (result i32) (local.get 0) + (then (i32.const 1)) (else (i32.const 0)) + ) + (then (call $$dummy) (i32.const 2)) + (else (call $$dummy) (i32.const 3)) + ) + ) + + (func (export "as-br_if-first") (param i32) (result i32) + (block (result i32) + (br_if 0 + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + ) + (return (i32.const 3)) + ) + ) + (func (export "as-br_if-last") (param i32) (result i32) + (block (result i32) + (br_if 0 + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + (return (i32.const 3)) + ) + ) + + (func (export "as-br_table-first") (param i32) (result i32) + (block (result i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + (br_table 0 0) + ) + ) + (func (export "as-br_table-last") (param i32) (result i32) + (block (result i32) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (br_table 0 0) + ) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (param i32) (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (i32.const 0) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + ) + + (func (export "as-store-first") (param i32) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.const 2) + (i32.store) + ) + (func (export "as-store-last") (param i32) + (i32.const 2) + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 1)) + (else (call $$dummy) (i32.const 0)) + ) + (i32.store) + ) + + (func (export "as-memory.grow-value") (param i32) (result i32) + (memory.grow + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "as-call-value") (param i32) (result i32) + (call $$f + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (func (export "as-return-value") (param i32) (result i32) + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0))) + (return) + ) + (func (export "as-drop-operand") (param i32) + (drop + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (func (export "as-br-value") (param i32) (result i32) + (block (result i32) + (br 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + ) + (func (export "as-local.set-value") (param i32) (result i32) + (local i32) + (local.set 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (local.get 0) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (local.tee 0 + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (global $$a (mut i32) (i32.const 10)) + (func (export "as-global.set-value") (param i32) (result i32) + (global.set $$a + (if (result i32) (local.get 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) (global.get $$a) + ) + (func (export "as-load-operand") (param i32) (result i32) + (i32.load + (if (result i32) (local.get 0) + (then (i32.const 11)) + (else (i32.const 10)) + ) + ) + ) + + (func (export "as-unary-operand") (param i32) (result i32) + (i32.ctz + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 13)) + (else (call $$dummy) (i32.const -13)) + ) + ) + ) + (func (export "as-binary-operand") (param i32 i32) (result i32) + (i32.mul + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 3)) + (else (call $$dummy) (i32.const -3)) + ) + (if (result i32) (local.get 1) + (then (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const -5)) + ) + ) + ) + (func (export "as-test-operand") (param i32) (result i32) + (i32.eqz + (if (result i32) (local.get 0) + (then (call $$dummy) (i32.const 13)) + (else (call $$dummy) (i32.const 0)) + ) + ) + ) + (func (export "as-compare-operand") (param i32 i32) (result i32) + (f32.gt + (if (result f32) (local.get 0) + (then (call $$dummy) (f32.const 3)) + (else (call $$dummy) (f32.const -3)) + ) + (if (result f32) (local.get 1) + (then (call $$dummy) (f32.const 4)) + (else (call $$dummy) (f32.const -4)) + ) + ) + ) + (func (export "as-binary-operands") (param i32) (result i32) + (i32.mul + (if (result i32 i32) (local.get 0) + (then (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const 3) (call $$dummy) (i32.const -4)) + ) + ) + ) + (func (export "as-compare-operands") (param i32) (result i32) + (f32.gt + (if (result f32 f32) (local.get 0) + (then (call $$dummy) (f32.const 3) (call $$dummy) (f32.const 3)) + (else (call $$dummy) (f32.const -2) (call $$dummy) (f32.const -3)) + ) + ) + ) + (func (export "as-mixed-operands") (param i32) (result i32) + (if (result i32 i32) (local.get 0) + (then (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4)) + (else (call $$dummy) (i32.const -3) (call $$dummy) (i32.const -4)) + ) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "break-bare") (result i32) + (if (i32.const 1) (then (br 0) (unreachable))) + (if (i32.const 1) (then (br 0) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br 0) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_table 0 (i32.const 0)) (unreachable))) + (i32.const 19) + ) + + (func (export "break-value") (param i32) (result i32) + (if (result i32) (local.get 0) + (then (br 0 (i32.const 18)) (i32.const 19)) + (else (br 0 (i32.const 21)) (i32.const 20)) + ) + ) + (func (export "break-multi-value") (param i32) (result i32 i32 i64) + (if (result i32 i32 i64) (local.get 0) + (then + (br 0 (i32.const 18) (i32.const -18) (i64.const 18)) + (i32.const 19) (i32.const -19) (i64.const 19) + ) + (else + (br 0 (i32.const -18) (i32.const 18) (i64.const -18)) + (i32.const -19) (i32.const 19) (i64.const -19) + ) + ) + ) + + (func (export "param") (param i32) (result i32) + (i32.const 1) + (if (param i32) (result i32) (local.get 0) + (then (i32.const 2) (i32.add)) + (else (i32.const -2) (i32.add)) + ) + ) + (func (export "params") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32) (local.get 0) + (then (i32.add)) + (else (i32.sub)) + ) + ) + (func (export "params-id") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32 i32) (local.get 0) (then)) + (i32.add) + ) + (func (export "param-break") (param i32) (result i32) + (i32.const 1) + (if (param i32) (result i32) (local.get 0) + (then (i32.const 2) (i32.add) (br 0)) + (else (i32.const -2) (i32.add) (br 0)) + ) + ) + (func (export "params-break") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32) (local.get 0) + (then (i32.add) (br 0)) + (else (i32.sub) (br 0)) + ) + ) + (func (export "params-id-break") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32 i32) (local.get 0) (then (br 0))) + (i32.add) + ) + + (func (export "effects") (param i32) (result i32) + (local i32) + (if + (block (result i32) (local.set 1 (i32.const 1)) (local.get 0)) + (then + (local.set 1 (i32.mul (local.get 1) (i32.const 3))) + (local.set 1 (i32.sub (local.get 1) (i32.const 5))) + (local.set 1 (i32.mul (local.get 1) (i32.const 7))) + (br 0) + (local.set 1 (i32.mul (local.get 1) (i32.const 100))) + ) + (else + (local.set 1 (i32.mul (local.get 1) (i32.const 5))) + (local.set 1 (i32.sub (local.get 1) (i32.const 7))) + (local.set 1 (i32.mul (local.get 1) (i32.const 3))) + (br 0) + (local.set 1 (i32.mul (local.get 1) (i32.const 1000))) + ) + ) + (local.get 1) + ) + + ;; Examples + + (func $$add64_u_with_carry (export "add64_u_with_carry") + (param $$i i64) (param $$j i64) (param $$c i32) (result i64 i32) + (local $$k i64) + (local.set $$k + (i64.add + (i64.add (local.get $$i) (local.get $$j)) + (i64.extend_i32_u (local.get $$c)) + ) + ) + (return (local.get $$k) (i64.lt_u (local.get $$k) (local.get $$i))) + ) + + (func $$add64_u_saturated (export "add64_u_saturated") + (param i64 i64) (result i64) + (call $$add64_u_with_carry (local.get 0) (local.get 1) (i32.const 0)) + (if (param i64) (result i64) + (then (drop) (i64.const -1)) + ) + ) + + ;; Block signature syntax + + (type $$block-sig-1 (func)) + (type $$block-sig-2 (func (result i32))) + (type $$block-sig-3 (func (param $$x i32))) + (type $$block-sig-4 (func (param i32 f64 i32) (result i32 f64 i32))) + + (func (export "type-use") + (if (type $$block-sig-1) (i32.const 1) (then)) + (if (type $$block-sig-2) (i32.const 1) + (then (i32.const 0)) (else (i32.const 2)) + ) + (if (type $$block-sig-3) (i32.const 1) (then (drop)) (else (drop))) + (i32.const 0) (f64.const 0) (i32.const 0) + (if (type $$block-sig-4) (i32.const 1) (then)) + (drop) (drop) (drop) + (if (type $$block-sig-2) (result i32) (i32.const 1) + (then (i32.const 0)) (else (i32.const 2)) + ) + (if (type $$block-sig-3) (param i32) (i32.const 1) + (then (drop)) (else (drop)) + ) + (i32.const 0) (f64.const 0) (i32.const 0) + (if (type $$block-sig-4) + (param i32) (param f64 i32) (result i32 f64) (result i32) + (i32.const 1) (then) + ) + (drop) (drop) (drop) + ) +)`); + +// ./test/core/if.wast:529 +assert_return(() => invoke($0, `empty`, [0]), []); + +// ./test/core/if.wast:530 +assert_return(() => invoke($0, `empty`, [1]), []); + +// ./test/core/if.wast:531 +assert_return(() => invoke($0, `empty`, [100]), []); + +// ./test/core/if.wast:532 +assert_return(() => invoke($0, `empty`, [-2]), []); + +// ./test/core/if.wast:534 +assert_return(() => invoke($0, `singular`, [0]), [value("i32", 8)]); + +// ./test/core/if.wast:535 +assert_return(() => invoke($0, `singular`, [1]), [value("i32", 7)]); + +// ./test/core/if.wast:536 +assert_return(() => invoke($0, `singular`, [10]), [value("i32", 7)]); + +// ./test/core/if.wast:537 +assert_return(() => invoke($0, `singular`, [-10]), [value("i32", 7)]); + +// ./test/core/if.wast:539 +assert_return(() => invoke($0, `multi`, [0]), [value("i32", 9), value("i32", -1)]); + +// ./test/core/if.wast:540 +assert_return(() => invoke($0, `multi`, [1]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:541 +assert_return(() => invoke($0, `multi`, [13]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:542 +assert_return(() => invoke($0, `multi`, [-5]), [value("i32", 8), value("i32", 1)]); + +// ./test/core/if.wast:544 +assert_return(() => invoke($0, `nested`, [0, 0]), [value("i32", 11)]); + +// ./test/core/if.wast:545 +assert_return(() => invoke($0, `nested`, [1, 0]), [value("i32", 10)]); + +// ./test/core/if.wast:546 +assert_return(() => invoke($0, `nested`, [0, 1]), [value("i32", 10)]); + +// ./test/core/if.wast:547 +assert_return(() => invoke($0, `nested`, [3, 2]), [value("i32", 9)]); + +// ./test/core/if.wast:548 +assert_return(() => invoke($0, `nested`, [0, -100]), [value("i32", 10)]); + +// ./test/core/if.wast:549 +assert_return(() => invoke($0, `nested`, [10, 10]), [value("i32", 9)]); + +// ./test/core/if.wast:550 +assert_return(() => invoke($0, `nested`, [0, -1]), [value("i32", 10)]); + +// ./test/core/if.wast:551 +assert_return(() => invoke($0, `nested`, [-111, -2]), [value("i32", 9)]); + +// ./test/core/if.wast:553 +assert_return(() => invoke($0, `as-select-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:554 +assert_return(() => invoke($0, `as-select-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:555 +assert_return(() => invoke($0, `as-select-mid`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:556 +assert_return(() => invoke($0, `as-select-mid`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:557 +assert_return(() => invoke($0, `as-select-last`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:558 +assert_return(() => invoke($0, `as-select-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:560 +assert_return(() => invoke($0, `as-loop-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:561 +assert_return(() => invoke($0, `as-loop-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:562 +assert_return(() => invoke($0, `as-loop-mid`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:563 +assert_return(() => invoke($0, `as-loop-mid`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:564 +assert_return(() => invoke($0, `as-loop-last`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:565 +assert_return(() => invoke($0, `as-loop-last`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:567 +assert_return(() => invoke($0, `as-if-condition`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:568 +assert_return(() => invoke($0, `as-if-condition`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:570 +assert_return(() => invoke($0, `as-br_if-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:571 +assert_return(() => invoke($0, `as-br_if-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:572 +assert_return(() => invoke($0, `as-br_if-last`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:573 +assert_return(() => invoke($0, `as-br_if-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:575 +assert_return(() => invoke($0, `as-br_table-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:576 +assert_return(() => invoke($0, `as-br_table-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:577 +assert_return(() => invoke($0, `as-br_table-last`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:578 +assert_return(() => invoke($0, `as-br_table-last`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:580 +assert_return(() => invoke($0, `as-call_indirect-first`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:581 +assert_return(() => invoke($0, `as-call_indirect-first`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:582 +assert_return(() => invoke($0, `as-call_indirect-mid`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:583 +assert_return(() => invoke($0, `as-call_indirect-mid`, [1]), [value("i32", 2)]); + +// ./test/core/if.wast:584 +assert_return(() => invoke($0, `as-call_indirect-last`, [0]), [value("i32", 2)]); + +// ./test/core/if.wast:585 +assert_trap(() => invoke($0, `as-call_indirect-last`, [1]), `undefined element`); + +// ./test/core/if.wast:587 +assert_return(() => invoke($0, `as-store-first`, [0]), []); + +// ./test/core/if.wast:588 +assert_return(() => invoke($0, `as-store-first`, [1]), []); + +// ./test/core/if.wast:589 +assert_return(() => invoke($0, `as-store-last`, [0]), []); + +// ./test/core/if.wast:590 +assert_return(() => invoke($0, `as-store-last`, [1]), []); + +// ./test/core/if.wast:592 +assert_return(() => invoke($0, `as-memory.grow-value`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:593 +assert_return(() => invoke($0, `as-memory.grow-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:595 +assert_return(() => invoke($0, `as-call-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:596 +assert_return(() => invoke($0, `as-call-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:598 +assert_return(() => invoke($0, `as-return-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:599 +assert_return(() => invoke($0, `as-return-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:601 +assert_return(() => invoke($0, `as-drop-operand`, [0]), []); + +// ./test/core/if.wast:602 +assert_return(() => invoke($0, `as-drop-operand`, [1]), []); + +// ./test/core/if.wast:604 +assert_return(() => invoke($0, `as-br-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:605 +assert_return(() => invoke($0, `as-br-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:607 +assert_return(() => invoke($0, `as-local.set-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:608 +assert_return(() => invoke($0, `as-local.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:610 +assert_return(() => invoke($0, `as-local.tee-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:611 +assert_return(() => invoke($0, `as-local.tee-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:613 +assert_return(() => invoke($0, `as-global.set-value`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:614 +assert_return(() => invoke($0, `as-global.set-value`, [1]), [value("i32", 1)]); + +// ./test/core/if.wast:616 +assert_return(() => invoke($0, `as-load-operand`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:617 +assert_return(() => invoke($0, `as-load-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:619 +assert_return(() => invoke($0, `as-unary-operand`, [0]), [value("i32", 0)]); + +// ./test/core/if.wast:620 +assert_return(() => invoke($0, `as-unary-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:621 +assert_return(() => invoke($0, `as-unary-operand`, [-1]), [value("i32", 0)]); + +// ./test/core/if.wast:623 +assert_return(() => invoke($0, `as-binary-operand`, [0, 0]), [value("i32", 15)]); + +// ./test/core/if.wast:624 +assert_return(() => invoke($0, `as-binary-operand`, [0, 1]), [value("i32", -12)]); + +// ./test/core/if.wast:625 +assert_return(() => invoke($0, `as-binary-operand`, [1, 0]), [value("i32", -15)]); + +// ./test/core/if.wast:626 +assert_return(() => invoke($0, `as-binary-operand`, [1, 1]), [value("i32", 12)]); + +// ./test/core/if.wast:628 +assert_return(() => invoke($0, `as-test-operand`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:629 +assert_return(() => invoke($0, `as-test-operand`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:631 +assert_return(() => invoke($0, `as-compare-operand`, [0, 0]), [value("i32", 1)]); + +// ./test/core/if.wast:632 +assert_return(() => invoke($0, `as-compare-operand`, [0, 1]), [value("i32", 0)]); + +// ./test/core/if.wast:633 +assert_return(() => invoke($0, `as-compare-operand`, [1, 0]), [value("i32", 1)]); + +// ./test/core/if.wast:634 +assert_return(() => invoke($0, `as-compare-operand`, [1, 1]), [value("i32", 0)]); + +// ./test/core/if.wast:636 +assert_return(() => invoke($0, `as-binary-operands`, [0]), [value("i32", -12)]); + +// ./test/core/if.wast:637 +assert_return(() => invoke($0, `as-binary-operands`, [1]), [value("i32", 12)]); + +// ./test/core/if.wast:639 +assert_return(() => invoke($0, `as-compare-operands`, [0]), [value("i32", 1)]); + +// ./test/core/if.wast:640 +assert_return(() => invoke($0, `as-compare-operands`, [1]), [value("i32", 0)]); + +// ./test/core/if.wast:642 +assert_return(() => invoke($0, `as-mixed-operands`, [0]), [value("i32", -3)]); + +// ./test/core/if.wast:643 +assert_return(() => invoke($0, `as-mixed-operands`, [1]), [value("i32", 27)]); + +// ./test/core/if.wast:645 +assert_return(() => invoke($0, `break-bare`, []), [value("i32", 19)]); + +// ./test/core/if.wast:646 +assert_return(() => invoke($0, `break-value`, [1]), [value("i32", 18)]); + +// ./test/core/if.wast:647 +assert_return(() => invoke($0, `break-value`, [0]), [value("i32", 21)]); + +// ./test/core/if.wast:648 +assert_return( + () => invoke($0, `break-multi-value`, [0]), + [value("i32", -18), value("i32", 18), value("i64", -18n)], +); + +// ./test/core/if.wast:651 +assert_return( + () => invoke($0, `break-multi-value`, [1]), + [value("i32", 18), value("i32", -18), value("i64", 18n)], +); + +// ./test/core/if.wast:655 +assert_return(() => invoke($0, `param`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:656 +assert_return(() => invoke($0, `param`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:657 +assert_return(() => invoke($0, `params`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:658 +assert_return(() => invoke($0, `params`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:659 +assert_return(() => invoke($0, `params-id`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:660 +assert_return(() => invoke($0, `params-id`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:661 +assert_return(() => invoke($0, `param-break`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:662 +assert_return(() => invoke($0, `param-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:663 +assert_return(() => invoke($0, `params-break`, [0]), [value("i32", -1)]); + +// ./test/core/if.wast:664 +assert_return(() => invoke($0, `params-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:665 +assert_return(() => invoke($0, `params-id-break`, [0]), [value("i32", 3)]); + +// ./test/core/if.wast:666 +assert_return(() => invoke($0, `params-id-break`, [1]), [value("i32", 3)]); + +// ./test/core/if.wast:668 +assert_return(() => invoke($0, `effects`, [1]), [value("i32", -14)]); + +// ./test/core/if.wast:669 +assert_return(() => invoke($0, `effects`, [0]), [value("i32", -6)]); + +// ./test/core/if.wast:671 +assert_return(() => invoke($0, `add64_u_with_carry`, [0n, 0n, 0]), [value("i64", 0n), value("i32", 0)]); + +// ./test/core/if.wast:675 +assert_return( + () => invoke($0, `add64_u_with_carry`, [100n, 124n, 0]), + [value("i64", 224n), value("i32", 0)], +); + +// ./test/core/if.wast:679 +assert_return( + () => invoke($0, `add64_u_with_carry`, [-1n, 0n, 0]), + [value("i64", -1n), value("i32", 0)], +); + +// ./test/core/if.wast:683 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 1n, 0]), [value("i64", 0n), value("i32", 1)]); + +// ./test/core/if.wast:687 +assert_return( + () => invoke($0, `add64_u_with_carry`, [-1n, -1n, 0]), + [value("i64", -2n), value("i32", 1)], +); + +// ./test/core/if.wast:691 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 0n, 1]), [value("i64", 0n), value("i32", 1)]); + +// ./test/core/if.wast:695 +assert_return(() => invoke($0, `add64_u_with_carry`, [-1n, 1n, 1]), [value("i64", 1n), value("i32", 1)]); + +// ./test/core/if.wast:699 +assert_return( + () => invoke($0, `add64_u_with_carry`, [ + -9223372036854775808n, + -9223372036854775808n, + 0, + ]), + [value("i64", 0n), value("i32", 1)], +); + +// ./test/core/if.wast:704 +assert_return(() => invoke($0, `add64_u_saturated`, [0n, 0n]), [value("i64", 0n)]); + +// ./test/core/if.wast:707 +assert_return(() => invoke($0, `add64_u_saturated`, [1230n, 23n]), [value("i64", 1253n)]); + +// ./test/core/if.wast:710 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, 0n]), [value("i64", -1n)]); + +// ./test/core/if.wast:713 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, 1n]), [value("i64", -1n)]); + +// ./test/core/if.wast:716 +assert_return(() => invoke($0, `add64_u_saturated`, [-1n, -1n]), [value("i64", -1n)]); + +// ./test/core/if.wast:719 +assert_return( + () => invoke($0, `add64_u_saturated`, [-9223372036854775808n, -9223372036854775808n]), + [value("i64", -1n)], +); + +// ./test/core/if.wast:723 +assert_return(() => invoke($0, `type-use`, []), []); + +// ./test/core/if.wast:725 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (type $$sig) (result i32) (param i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:734 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (param i32) (type $$sig) (result i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:743 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (param i32) (result i32) (type $$sig) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:752 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (result i32) (type $$sig) (param i32) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:761 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (if (result i32) (param i32) (type $$sig) (i32.const 1) (then)) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:770 +assert_malformed( + () => instantiate(`(func (i32.const 0) (if (result i32) (param i32) (i32.const 1) (then))) `), + `unexpected token`, +); + +// ./test/core/if.wast:777 +assert_malformed( + () => instantiate(`(func (i32.const 0) (i32.const 1) (if (param $$x i32) (then (drop)) (else (drop))) ) `), + `unexpected token`, +); + +// ./test/core/if.wast:785 +assert_malformed( + () => instantiate(`(type $$sig (func)) (func (i32.const 1) (if (type $$sig) (result i32) (then (i32.const 0)) (else (i32.const 2))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:795 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 1) (if (type $$sig) (result i32) (then (i32.const 0)) (else (i32.const 2))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:805 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (i32.const 1) (if (type $$sig) (param i32) (then (drop)) (else (drop))) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:815 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (func (i32.const 0) (i32.const 1) (if (type $$sig) (param i32) (result i32) (then)) (unreachable) ) `), + `inline function type`, +); + +// ./test/core/if.wast:825 +assert_invalid( + () => instantiate(`(module + (type $$sig (func)) + (func (i32.const 1) (if (type $$sig) (i32.const 0) (then))) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:833 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:837 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:841 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:845 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64) (if (i32.const 0) (then))))`), + `type mismatch`, +); + +// ./test/core/if.wast:850 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:854 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:858 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:862 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64) (if (i32.const 0) (then) (else))))`), + `type mismatch`, +); + +// ./test/core/if.wast:867 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-void + (if (i32.const 1) (then (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:873 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-void-else + (if (i32.const 1) (then (i32.const 1)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:879 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-void + (if (i32.const 1) (then) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:885 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-void + (if (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:892 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-void + (if (i32.const 1) (then (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:898 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-void-else + (if (i32.const 1) (then (i32.const 1) (i32.const 2)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:904 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-nums-vs-void + (if (i32.const 1) (then) (else (i32.const 1) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:910 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-nums-vs-void + (if (i32.const 1) (then (i32.const 1) (i32.const 2)) (else (i32.const 2) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:917 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:923 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:929 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:936 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then) (else (i32.const 0) (i32.const 2))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:942 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 0) (i32.const 1)) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:948 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then) (else)) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:955 +assert_invalid( + () => instantiate(`(module (func $$type-no-else-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:961 +assert_invalid( + () => instantiate(`(module (func $$type-no-else-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:968 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:974 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:980 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:987 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (nop)) (else (i32.const 0) (i32.const 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:993 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 0) (i32.const 0)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:999 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (nop)) (else (nop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1006 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1012 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1018 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1025 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1031 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1037 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1044 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1051 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1058 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1066 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1072 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1078 +assert_invalid( + () => instantiate(`(module (func $$type-both-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1085 +assert_invalid( + () => instantiate(`(module (func $$type-both-different-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (f64.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1091 +assert_invalid( + () => instantiate(`(module (func $$type-both-different-value-nums-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1) (i32.const 1)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1098 +assert_invalid( + () => instantiate(`(module (func $$type-then-value-unreached-select (result i32) + (if (result i64) + (i32.const 0) + (then (select (unreachable) (unreachable) (unreachable))) + (else (i64.const 0)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1108 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (i64.const 0)) + (else (select (unreachable) (unreachable) (unreachable))) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1118 +assert_invalid( + () => instantiate(`(module (func $$type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (select (unreachable) (unreachable) (unreachable))) + (else (select (unreachable) (unreachable) (unreachable))) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1129 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (br 0)) (else (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1135 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1141 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-last-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (br 0)) (else (i32.const 1) (i32.const 1))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1147 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-last-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (br 0))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1154 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1163 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1172 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1181 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1191 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1200 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (nop)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1209 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1218 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0 (nop)) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1228 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1237 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1246 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1255 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1264 +assert_invalid( + () => instantiate(`(module (func $$type-then-break-partial-vs-nums (result i32 i32) + (i32.const 1) + (if (result i32 i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1274 +assert_invalid( + () => instantiate(`(module (func $$type-else-break-partial-vs-nums (result i32 i32) + (i32.const 1) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1285 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty + (if (then)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1293 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-block + (i32.const 0) + (block (if (then))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1302 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-loop + (i32.const 0) + (loop (if (then))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1311 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (if (then)))) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1320 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (if (then)) (i32.const 0))) + (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1330 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br + (i32.const 0) + (block (br 0 (if(then))) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1339 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br_if + (i32.const 0) + (block (br_if 0 (if(then)) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1348 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-br_table + (i32.const 0) + (block (br_table 0 (if(then))) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1357 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-return + (return (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1365 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-select + (select (if(then)) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1373 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-call + (call 1 (if(then))) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1382 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-condition-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (if(then)) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1398 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-local.set + (local i32) + (local.set 0 (if(then))) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1407 +assert_invalid( + () => instantiate(`(module + (func $$type-condition-empty-in-local.tee + (local i32) + (local.tee 0 (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1416 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-condition-empty-in-global.set + (global.set $$x (if(then))) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1425 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-condition-empty-in-memory.grow + (memory.grow (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1434 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-condition-empty-in-load + (i32.load (if(then))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1443 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-condition-empty-in-store + (i32.store (if(then)) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/if.wast:1453 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-num + (if (param i32) (i32.const 1) (then (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1459 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (if (param i32 f64) (i32.const 1) (then (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1465 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (f32.const 0) (if (param i32) (i32.const 1) (then (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1471 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (f32.const 0) (if (param f32 i32) (i32.const 1) (then (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1477 +assert_invalid( + () => instantiate(`(module (func $$type-param-nested-void-vs-num + (block (if (param i32) (i32.const 1) (then (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1483 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (block (if (param i32 f64) (i32.const 1) (then (drop) (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1489 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (block (f32.const 0) (if (param i32) (i32.const 1) (then (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1495 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (block (f32.const 0) (if (param f32 i32) (i32.const 1) (then (drop) (drop)))) + ))`), + `type mismatch`, +); + +// ./test/core/if.wast:1502 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) if (param $$x i32) end) `), + `unexpected token`, +); + +// ./test/core/if.wast:1506 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (if (param $$x i32) (then))) `), + `unexpected token`, +); + +// ./test/core/if.wast:1511 +assert_malformed(() => instantiate(`(func i32.const 0 if end $$l) `), `mismatching label`); + +// ./test/core/if.wast:1515 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1519 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l end) `), + `mismatching label`, +); + +// ./test/core/if.wast:1523 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$l end) `), + `mismatching label`, +); + +// ./test/core/if.wast:1527 +assert_malformed( + () => instantiate(`(func i32.const 0 if else end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1531 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1535 +assert_malformed( + () => instantiate(`(func i32.const 0 if else $$l1 end $$l2) `), + `mismatching label`, +); + +// ./test/core/if.wast:1539 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1543 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$a end $$l) `), + `mismatching label`, +); + +// ./test/core/if.wast:1547 +assert_malformed( + () => instantiate(`(func i32.const 0 if $$a else $$l end $$l) `), + `mismatching label`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/inline-module.wast.js b/js/src/jit-test/tests/wasm/spec/spec/inline-module.wast.js new file mode 100644 index 0000000000..30e6acaeee --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/inline-module.wast.js @@ -0,0 +1,20 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/inline-module.wast + +// ./test/core/inline-module.wast:1:0 +let $0 = instantiate(`(func) (memory 0) (func (export "f")) +`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/int_exprs.wast.js b/js/src/jit-test/tests/wasm/spec/spec/int_exprs.wast.js new file mode 100644 index 0000000000..811712a794 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/int_exprs.wast.js @@ -0,0 +1,534 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/int_exprs.wast + +// ./test/core/int_exprs.wast:6 +let $0 = instantiate(`(module + (func (export "i32.no_fold_cmp_s_offset") (param $$x i32) (param $$y i32) (result i32) + (i32.lt_s (i32.add (local.get $$x) (i32.const 1)) (i32.add (local.get $$y) (i32.const 1)))) + (func (export "i32.no_fold_cmp_u_offset") (param $$x i32) (param $$y i32) (result i32) + (i32.lt_u (i32.add (local.get $$x) (i32.const 1)) (i32.add (local.get $$y) (i32.const 1)))) + + (func (export "i64.no_fold_cmp_s_offset") (param $$x i64) (param $$y i64) (result i32) + (i64.lt_s (i64.add (local.get $$x) (i64.const 1)) (i64.add (local.get $$y) (i64.const 1)))) + (func (export "i64.no_fold_cmp_u_offset") (param $$x i64) (param $$y i64) (result i32) + (i64.lt_u (i64.add (local.get $$x) (i64.const 1)) (i64.add (local.get $$y) (i64.const 1)))) +)`); + +// ./test/core/int_exprs.wast:18 +assert_return(() => invoke($0, `i32.no_fold_cmp_s_offset`, [2147483647, 0]), [value("i32", 1)]); + +// ./test/core/int_exprs.wast:19 +assert_return(() => invoke($0, `i32.no_fold_cmp_u_offset`, [-1, 0]), [value("i32", 1)]); + +// ./test/core/int_exprs.wast:20 +assert_return( + () => invoke($0, `i64.no_fold_cmp_s_offset`, [9223372036854775807n, 0n]), + [value("i32", 1)], +); + +// ./test/core/int_exprs.wast:21 +assert_return(() => invoke($0, `i64.no_fold_cmp_u_offset`, [-1n, 0n]), [value("i32", 1)]); + +// ./test/core/int_exprs.wast:25 +let $1 = instantiate(`(module + (func (export "i64.no_fold_wrap_extend_s") (param $$x i64) (result i64) + (i64.extend_i32_s (i32.wrap_i64 (local.get $$x)))) +)`); + +// ./test/core/int_exprs.wast:30 +assert_return( + () => invoke($1, `i64.no_fold_wrap_extend_s`, [4538991236898928n]), + [value("i64", 1079009392n)], +); + +// ./test/core/int_exprs.wast:31 +assert_return( + () => invoke($1, `i64.no_fold_wrap_extend_s`, [45230338458316960n]), + [value("i64", -790564704n)], +); + +// ./test/core/int_exprs.wast:35 +let $2 = instantiate(`(module + (func (export "i64.no_fold_wrap_extend_u") (param $$x i64) (result i64) + (i64.extend_i32_u (i32.wrap_i64 (local.get $$x)))) +)`); + +// ./test/core/int_exprs.wast:40 +assert_return( + () => invoke($2, `i64.no_fold_wrap_extend_u`, [4538991236898928n]), + [value("i64", 1079009392n)], +); + +// ./test/core/int_exprs.wast:44 +let $3 = instantiate(`(module + (func (export "i32.no_fold_shl_shr_s") (param $$x i32) (result i32) + (i32.shr_s (i32.shl (local.get $$x) (i32.const 1)) (i32.const 1))) + (func (export "i32.no_fold_shl_shr_u") (param $$x i32) (result i32) + (i32.shr_u (i32.shl (local.get $$x) (i32.const 1)) (i32.const 1))) + + (func (export "i64.no_fold_shl_shr_s") (param $$x i64) (result i64) + (i64.shr_s (i64.shl (local.get $$x) (i64.const 1)) (i64.const 1))) + (func (export "i64.no_fold_shl_shr_u") (param $$x i64) (result i64) + (i64.shr_u (i64.shl (local.get $$x) (i64.const 1)) (i64.const 1))) +)`); + +// ./test/core/int_exprs.wast:56 +assert_return(() => invoke($3, `i32.no_fold_shl_shr_s`, [-2147483648]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:57 +assert_return(() => invoke($3, `i32.no_fold_shl_shr_u`, [-2147483648]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:58 +assert_return(() => invoke($3, `i64.no_fold_shl_shr_s`, [-9223372036854775808n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:59 +assert_return(() => invoke($3, `i64.no_fold_shl_shr_u`, [-9223372036854775808n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:63 +let $4 = instantiate(`(module + (func (export "i32.no_fold_shr_s_shl") (param $$x i32) (result i32) + (i32.shl (i32.shr_s (local.get $$x) (i32.const 1)) (i32.const 1))) + (func (export "i32.no_fold_shr_u_shl") (param $$x i32) (result i32) + (i32.shl (i32.shr_u (local.get $$x) (i32.const 1)) (i32.const 1))) + + (func (export "i64.no_fold_shr_s_shl") (param $$x i64) (result i64) + (i64.shl (i64.shr_s (local.get $$x) (i64.const 1)) (i64.const 1))) + (func (export "i64.no_fold_shr_u_shl") (param $$x i64) (result i64) + (i64.shl (i64.shr_u (local.get $$x) (i64.const 1)) (i64.const 1))) +)`); + +// ./test/core/int_exprs.wast:75 +assert_return(() => invoke($4, `i32.no_fold_shr_s_shl`, [1]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:76 +assert_return(() => invoke($4, `i32.no_fold_shr_u_shl`, [1]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:77 +assert_return(() => invoke($4, `i64.no_fold_shr_s_shl`, [1n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:78 +assert_return(() => invoke($4, `i64.no_fold_shr_u_shl`, [1n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:82 +let $5 = instantiate(`(module + (func (export "i32.no_fold_div_s_mul") (param $$x i32) (result i32) + (i32.mul (i32.div_s (local.get $$x) (i32.const 6)) (i32.const 6))) + (func (export "i32.no_fold_div_u_mul") (param $$x i32) (result i32) + (i32.mul (i32.div_u (local.get $$x) (i32.const 6)) (i32.const 6))) + + (func (export "i64.no_fold_div_s_mul") (param $$x i64) (result i64) + (i64.mul (i64.div_s (local.get $$x) (i64.const 6)) (i64.const 6))) + (func (export "i64.no_fold_div_u_mul") (param $$x i64) (result i64) + (i64.mul (i64.div_u (local.get $$x) (i64.const 6)) (i64.const 6))) +)`); + +// ./test/core/int_exprs.wast:94 +assert_return(() => invoke($5, `i32.no_fold_div_s_mul`, [1]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:95 +assert_return(() => invoke($5, `i32.no_fold_div_u_mul`, [1]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:96 +assert_return(() => invoke($5, `i64.no_fold_div_s_mul`, [1n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:97 +assert_return(() => invoke($5, `i64.no_fold_div_u_mul`, [1n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:101 +let $6 = instantiate(`(module + (func (export "i32.no_fold_div_s_self") (param $$x i32) (result i32) + (i32.div_s (local.get $$x) (local.get $$x))) + (func (export "i32.no_fold_div_u_self") (param $$x i32) (result i32) + (i32.div_u (local.get $$x) (local.get $$x))) + + (func (export "i64.no_fold_div_s_self") (param $$x i64) (result i64) + (i64.div_s (local.get $$x) (local.get $$x))) + (func (export "i64.no_fold_div_u_self") (param $$x i64) (result i64) + (i64.div_u (local.get $$x) (local.get $$x))) +)`); + +// ./test/core/int_exprs.wast:113 +assert_trap(() => invoke($6, `i32.no_fold_div_s_self`, [0]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:114 +assert_trap(() => invoke($6, `i32.no_fold_div_u_self`, [0]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:115 +assert_trap(() => invoke($6, `i64.no_fold_div_s_self`, [0n]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:116 +assert_trap(() => invoke($6, `i64.no_fold_div_u_self`, [0n]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:120 +let $7 = instantiate(`(module + (func (export "i32.no_fold_rem_s_self") (param $$x i32) (result i32) + (i32.rem_s (local.get $$x) (local.get $$x))) + (func (export "i32.no_fold_rem_u_self") (param $$x i32) (result i32) + (i32.rem_u (local.get $$x) (local.get $$x))) + + (func (export "i64.no_fold_rem_s_self") (param $$x i64) (result i64) + (i64.rem_s (local.get $$x) (local.get $$x))) + (func (export "i64.no_fold_rem_u_self") (param $$x i64) (result i64) + (i64.rem_u (local.get $$x) (local.get $$x))) +)`); + +// ./test/core/int_exprs.wast:132 +assert_trap(() => invoke($7, `i32.no_fold_rem_s_self`, [0]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:133 +assert_trap(() => invoke($7, `i32.no_fold_rem_u_self`, [0]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:134 +assert_trap(() => invoke($7, `i64.no_fold_rem_s_self`, [0n]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:135 +assert_trap(() => invoke($7, `i64.no_fold_rem_u_self`, [0n]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:139 +let $8 = instantiate(`(module + (func (export "i32.no_fold_mul_div_s") (param $$x i32) (result i32) + (i32.div_s (i32.mul (local.get $$x) (i32.const 6)) (i32.const 6))) + (func (export "i32.no_fold_mul_div_u") (param $$x i32) (result i32) + (i32.div_u (i32.mul (local.get $$x) (i32.const 6)) (i32.const 6))) + + (func (export "i64.no_fold_mul_div_s") (param $$x i64) (result i64) + (i64.div_s (i64.mul (local.get $$x) (i64.const 6)) (i64.const 6))) + (func (export "i64.no_fold_mul_div_u") (param $$x i64) (result i64) + (i64.div_u (i64.mul (local.get $$x) (i64.const 6)) (i64.const 6))) +)`); + +// ./test/core/int_exprs.wast:151 +assert_return(() => invoke($8, `i32.no_fold_mul_div_s`, [-2147483648]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:152 +assert_return(() => invoke($8, `i32.no_fold_mul_div_u`, [-2147483648]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:153 +assert_return(() => invoke($8, `i64.no_fold_mul_div_s`, [-9223372036854775808n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:154 +assert_return(() => invoke($8, `i64.no_fold_mul_div_u`, [-9223372036854775808n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:158 +let $9 = instantiate(`(module + (func (export "i32.no_fold_div_s_2") (param $$x i32) (result i32) + (i32.div_s (local.get $$x) (i32.const 2))) + + (func (export "i64.no_fold_div_s_2") (param $$x i64) (result i64) + (i64.div_s (local.get $$x) (i64.const 2))) +)`); + +// ./test/core/int_exprs.wast:166 +assert_return(() => invoke($9, `i32.no_fold_div_s_2`, [-11]), [value("i32", -5)]); + +// ./test/core/int_exprs.wast:167 +assert_return(() => invoke($9, `i64.no_fold_div_s_2`, [-11n]), [value("i64", -5n)]); + +// ./test/core/int_exprs.wast:171 +let $10 = instantiate(`(module + (func (export "i32.no_fold_rem_s_2") (param $$x i32) (result i32) + (i32.rem_s (local.get $$x) (i32.const 2))) + + (func (export "i64.no_fold_rem_s_2") (param $$x i64) (result i64) + (i64.rem_s (local.get $$x) (i64.const 2))) +)`); + +// ./test/core/int_exprs.wast:179 +assert_return(() => invoke($10, `i32.no_fold_rem_s_2`, [-11]), [value("i32", -1)]); + +// ./test/core/int_exprs.wast:180 +assert_return(() => invoke($10, `i64.no_fold_rem_s_2`, [-11n]), [value("i64", -1n)]); + +// ./test/core/int_exprs.wast:184 +let $11 = instantiate(`(module + (func (export "i32.div_s_0") (param $$x i32) (result i32) + (i32.div_s (local.get $$x) (i32.const 0))) + (func (export "i32.div_u_0") (param $$x i32) (result i32) + (i32.div_u (local.get $$x) (i32.const 0))) + + (func (export "i64.div_s_0") (param $$x i64) (result i64) + (i64.div_s (local.get $$x) (i64.const 0))) + (func (export "i64.div_u_0") (param $$x i64) (result i64) + (i64.div_u (local.get $$x) (i64.const 0))) +)`); + +// ./test/core/int_exprs.wast:196 +assert_trap(() => invoke($11, `i32.div_s_0`, [71]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:197 +assert_trap(() => invoke($11, `i32.div_u_0`, [71]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:198 +assert_trap(() => invoke($11, `i64.div_s_0`, [71n]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:199 +assert_trap(() => invoke($11, `i64.div_u_0`, [71n]), `integer divide by zero`); + +// ./test/core/int_exprs.wast:203 +let $12 = instantiate(`(module + (func (export "i32.div_s_3") (param $$x i32) (result i32) + (i32.div_s (local.get $$x) (i32.const 3))) + (func (export "i32.div_u_3") (param $$x i32) (result i32) + (i32.div_u (local.get $$x) (i32.const 3))) + + (func (export "i64.div_s_3") (param $$x i64) (result i64) + (i64.div_s (local.get $$x) (i64.const 3))) + (func (export "i64.div_u_3") (param $$x i64) (result i64) + (i64.div_u (local.get $$x) (i64.const 3))) +)`); + +// ./test/core/int_exprs.wast:215 +assert_return(() => invoke($12, `i32.div_s_3`, [71]), [value("i32", 23)]); + +// ./test/core/int_exprs.wast:216 +assert_return(() => invoke($12, `i32.div_s_3`, [1610612736]), [value("i32", 536870912)]); + +// ./test/core/int_exprs.wast:217 +assert_return(() => invoke($12, `i32.div_u_3`, [71]), [value("i32", 23)]); + +// ./test/core/int_exprs.wast:218 +assert_return(() => invoke($12, `i32.div_u_3`, [-1073741824]), [value("i32", 1073741824)]); + +// ./test/core/int_exprs.wast:219 +assert_return(() => invoke($12, `i64.div_s_3`, [71n]), [value("i64", 23n)]); + +// ./test/core/int_exprs.wast:220 +assert_return( + () => invoke($12, `i64.div_s_3`, [3458764513820540928n]), + [value("i64", 1152921504606846976n)], +); + +// ./test/core/int_exprs.wast:221 +assert_return(() => invoke($12, `i64.div_u_3`, [71n]), [value("i64", 23n)]); + +// ./test/core/int_exprs.wast:222 +assert_return( + () => invoke($12, `i64.div_u_3`, [-4611686018427387904n]), + [value("i64", 4611686018427387904n)], +); + +// ./test/core/int_exprs.wast:226 +let $13 = instantiate(`(module + (func (export "i32.div_s_5") (param $$x i32) (result i32) + (i32.div_s (local.get $$x) (i32.const 5))) + (func (export "i32.div_u_5") (param $$x i32) (result i32) + (i32.div_u (local.get $$x) (i32.const 5))) + + (func (export "i64.div_s_5") (param $$x i64) (result i64) + (i64.div_s (local.get $$x) (i64.const 5))) + (func (export "i64.div_u_5") (param $$x i64) (result i64) + (i64.div_u (local.get $$x) (i64.const 5))) +)`); + +// ./test/core/int_exprs.wast:238 +assert_return(() => invoke($13, `i32.div_s_5`, [71]), [value("i32", 14)]); + +// ./test/core/int_exprs.wast:239 +assert_return(() => invoke($13, `i32.div_s_5`, [1342177280]), [value("i32", 268435456)]); + +// ./test/core/int_exprs.wast:240 +assert_return(() => invoke($13, `i32.div_u_5`, [71]), [value("i32", 14)]); + +// ./test/core/int_exprs.wast:241 +assert_return(() => invoke($13, `i32.div_u_5`, [-1610612736]), [value("i32", 536870912)]); + +// ./test/core/int_exprs.wast:242 +assert_return(() => invoke($13, `i64.div_s_5`, [71n]), [value("i64", 14n)]); + +// ./test/core/int_exprs.wast:243 +assert_return( + () => invoke($13, `i64.div_s_5`, [5764607523034234880n]), + [value("i64", 1152921504606846976n)], +); + +// ./test/core/int_exprs.wast:244 +assert_return(() => invoke($13, `i64.div_u_5`, [71n]), [value("i64", 14n)]); + +// ./test/core/int_exprs.wast:245 +assert_return( + () => invoke($13, `i64.div_u_5`, [-6917529027641081856n]), + [value("i64", 2305843009213693952n)], +); + +// ./test/core/int_exprs.wast:249 +let $14 = instantiate(`(module + (func (export "i32.div_s_7") (param $$x i32) (result i32) + (i32.div_s (local.get $$x) (i32.const 7))) + (func (export "i32.div_u_7") (param $$x i32) (result i32) + (i32.div_u (local.get $$x) (i32.const 7))) + + (func (export "i64.div_s_7") (param $$x i64) (result i64) + (i64.div_s (local.get $$x) (i64.const 7))) + (func (export "i64.div_u_7") (param $$x i64) (result i64) + (i64.div_u (local.get $$x) (i64.const 7))) +)`); + +// ./test/core/int_exprs.wast:261 +assert_return(() => invoke($14, `i32.div_s_7`, [71]), [value("i32", 10)]); + +// ./test/core/int_exprs.wast:262 +assert_return(() => invoke($14, `i32.div_s_7`, [1879048192]), [value("i32", 268435456)]); + +// ./test/core/int_exprs.wast:263 +assert_return(() => invoke($14, `i32.div_u_7`, [71]), [value("i32", 10)]); + +// ./test/core/int_exprs.wast:264 +assert_return(() => invoke($14, `i32.div_u_7`, [-536870912]), [value("i32", 536870912)]); + +// ./test/core/int_exprs.wast:265 +assert_return(() => invoke($14, `i64.div_s_7`, [71n]), [value("i64", 10n)]); + +// ./test/core/int_exprs.wast:266 +assert_return( + () => invoke($14, `i64.div_s_7`, [8070450532247928832n]), + [value("i64", 1152921504606846976n)], +); + +// ./test/core/int_exprs.wast:267 +assert_return(() => invoke($14, `i64.div_u_7`, [71n]), [value("i64", 10n)]); + +// ./test/core/int_exprs.wast:268 +assert_return( + () => invoke($14, `i64.div_u_7`, [-2305843009213693952n]), + [value("i64", 2305843009213693952n)], +); + +// ./test/core/int_exprs.wast:272 +let $15 = instantiate(`(module + (func (export "i32.rem_s_3") (param $$x i32) (result i32) + (i32.rem_s (local.get $$x) (i32.const 3))) + (func (export "i32.rem_u_3") (param $$x i32) (result i32) + (i32.rem_u (local.get $$x) (i32.const 3))) + + (func (export "i64.rem_s_3") (param $$x i64) (result i64) + (i64.rem_s (local.get $$x) (i64.const 3))) + (func (export "i64.rem_u_3") (param $$x i64) (result i64) + (i64.rem_u (local.get $$x) (i64.const 3))) +)`); + +// ./test/core/int_exprs.wast:284 +assert_return(() => invoke($15, `i32.rem_s_3`, [71]), [value("i32", 2)]); + +// ./test/core/int_exprs.wast:285 +assert_return(() => invoke($15, `i32.rem_s_3`, [1610612736]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:286 +assert_return(() => invoke($15, `i32.rem_u_3`, [71]), [value("i32", 2)]); + +// ./test/core/int_exprs.wast:287 +assert_return(() => invoke($15, `i32.rem_u_3`, [-1073741824]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:288 +assert_return(() => invoke($15, `i64.rem_s_3`, [71n]), [value("i64", 2n)]); + +// ./test/core/int_exprs.wast:289 +assert_return(() => invoke($15, `i64.rem_s_3`, [3458764513820540928n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:290 +assert_return(() => invoke($15, `i64.rem_u_3`, [71n]), [value("i64", 2n)]); + +// ./test/core/int_exprs.wast:291 +assert_return(() => invoke($15, `i64.rem_u_3`, [-4611686018427387904n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:295 +let $16 = instantiate(`(module + (func (export "i32.rem_s_5") (param $$x i32) (result i32) + (i32.rem_s (local.get $$x) (i32.const 5))) + (func (export "i32.rem_u_5") (param $$x i32) (result i32) + (i32.rem_u (local.get $$x) (i32.const 5))) + + (func (export "i64.rem_s_5") (param $$x i64) (result i64) + (i64.rem_s (local.get $$x) (i64.const 5))) + (func (export "i64.rem_u_5") (param $$x i64) (result i64) + (i64.rem_u (local.get $$x) (i64.const 5))) +)`); + +// ./test/core/int_exprs.wast:307 +assert_return(() => invoke($16, `i32.rem_s_5`, [71]), [value("i32", 1)]); + +// ./test/core/int_exprs.wast:308 +assert_return(() => invoke($16, `i32.rem_s_5`, [1342177280]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:309 +assert_return(() => invoke($16, `i32.rem_u_5`, [71]), [value("i32", 1)]); + +// ./test/core/int_exprs.wast:310 +assert_return(() => invoke($16, `i32.rem_u_5`, [-1610612736]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:311 +assert_return(() => invoke($16, `i64.rem_s_5`, [71n]), [value("i64", 1n)]); + +// ./test/core/int_exprs.wast:312 +assert_return(() => invoke($16, `i64.rem_s_5`, [5764607523034234880n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:313 +assert_return(() => invoke($16, `i64.rem_u_5`, [71n]), [value("i64", 1n)]); + +// ./test/core/int_exprs.wast:314 +assert_return(() => invoke($16, `i64.rem_u_5`, [-6917529027641081856n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:318 +let $17 = instantiate(`(module + (func (export "i32.rem_s_7") (param $$x i32) (result i32) + (i32.rem_s (local.get $$x) (i32.const 7))) + (func (export "i32.rem_u_7") (param $$x i32) (result i32) + (i32.rem_u (local.get $$x) (i32.const 7))) + + (func (export "i64.rem_s_7") (param $$x i64) (result i64) + (i64.rem_s (local.get $$x) (i64.const 7))) + (func (export "i64.rem_u_7") (param $$x i64) (result i64) + (i64.rem_u (local.get $$x) (i64.const 7))) +)`); + +// ./test/core/int_exprs.wast:330 +assert_return(() => invoke($17, `i32.rem_s_7`, [71]), [value("i32", 1)]); + +// ./test/core/int_exprs.wast:331 +assert_return(() => invoke($17, `i32.rem_s_7`, [1879048192]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:332 +assert_return(() => invoke($17, `i32.rem_u_7`, [71]), [value("i32", 1)]); + +// ./test/core/int_exprs.wast:333 +assert_return(() => invoke($17, `i32.rem_u_7`, [-536870912]), [value("i32", 0)]); + +// ./test/core/int_exprs.wast:334 +assert_return(() => invoke($17, `i64.rem_s_7`, [71n]), [value("i64", 1n)]); + +// ./test/core/int_exprs.wast:335 +assert_return(() => invoke($17, `i64.rem_s_7`, [8070450532247928832n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:336 +assert_return(() => invoke($17, `i64.rem_u_7`, [71n]), [value("i64", 1n)]); + +// ./test/core/int_exprs.wast:337 +assert_return(() => invoke($17, `i64.rem_u_7`, [-2305843009213693952n]), [value("i64", 0n)]); + +// ./test/core/int_exprs.wast:341 +let $18 = instantiate(`(module + (func (export "i32.no_fold_div_neg1") (param $$x i32) (result i32) + (i32.div_s (local.get $$x) (i32.const -1))) + + (func (export "i64.no_fold_div_neg1") (param $$x i64) (result i64) + (i64.div_s (local.get $$x) (i64.const -1))) +)`); + +// ./test/core/int_exprs.wast:349 +assert_trap(() => invoke($18, `i32.no_fold_div_neg1`, [-2147483648]), `integer overflow`); + +// ./test/core/int_exprs.wast:350 +assert_trap(() => invoke($18, `i64.no_fold_div_neg1`, [-9223372036854775808n]), `integer overflow`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/int_literals.wast.js b/js/src/jit-test/tests/wasm/spec/spec/int_literals.wast.js new file mode 100644 index 0000000000..348aeda4ea --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/int_literals.wast.js @@ -0,0 +1,233 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/int_literals.wast + +// ./test/core/int_literals.wast:1 +let $0 = instantiate(`(module + (func (export "i32.test") (result i32) (return (i32.const 0x0bAdD00D))) + (func (export "i32.umax") (result i32) (return (i32.const 0xffffffff))) + (func (export "i32.smax") (result i32) (return (i32.const 0x7fffffff))) + (func (export "i32.neg_smax") (result i32) (return (i32.const -0x7fffffff))) + (func (export "i32.smin") (result i32) (return (i32.const -0x80000000))) + (func (export "i32.alt_smin") (result i32) (return (i32.const 0x80000000))) + (func (export "i32.inc_smin") (result i32) (return (i32.add (i32.const -0x80000000) (i32.const 1)))) + (func (export "i32.neg_zero") (result i32) (return (i32.const -0x0))) + (func (export "i32.not_octal") (result i32) (return (i32.const 010))) + (func (export "i32.unsigned_decimal") (result i32) (return (i32.const 4294967295))) + (func (export "i32.plus_sign") (result i32) (return (i32.const +42))) + + (func (export "i64.test") (result i64) (return (i64.const 0x0CABBA6E0ba66a6e))) + (func (export "i64.umax") (result i64) (return (i64.const 0xffffffffffffffff))) + (func (export "i64.smax") (result i64) (return (i64.const 0x7fffffffffffffff))) + (func (export "i64.neg_smax") (result i64) (return (i64.const -0x7fffffffffffffff))) + (func (export "i64.smin") (result i64) (return (i64.const -0x8000000000000000))) + (func (export "i64.alt_smin") (result i64) (return (i64.const 0x8000000000000000))) + (func (export "i64.inc_smin") (result i64) (return (i64.add (i64.const -0x8000000000000000) (i64.const 1)))) + (func (export "i64.neg_zero") (result i64) (return (i64.const -0x0))) + (func (export "i64.not_octal") (result i64) (return (i64.const 010))) + (func (export "i64.unsigned_decimal") (result i64) (return (i64.const 18446744073709551615))) + (func (export "i64.plus_sign") (result i64) (return (i64.const +42))) + + (func (export "i32-dec-sep1") (result i32) (i32.const 1_000_000)) + (func (export "i32-dec-sep2") (result i32) (i32.const 1_0_0_0)) + (func (export "i32-hex-sep1") (result i32) (i32.const 0xa_0f_00_99)) + (func (export "i32-hex-sep2") (result i32) (i32.const 0x1_a_A_0_f)) + + (func (export "i64-dec-sep1") (result i64) (i64.const 1_000_000)) + (func (export "i64-dec-sep2") (result i64) (i64.const 1_0_0_0)) + (func (export "i64-hex-sep1") (result i64) (i64.const 0xa_f00f_0000_9999)) + (func (export "i64-hex-sep2") (result i64) (i64.const 0x1_a_A_0_f)) +)`); + +// ./test/core/int_literals.wast:37 +assert_return(() => invoke($0, `i32.test`, []), [value("i32", 195940365)]); + +// ./test/core/int_literals.wast:38 +assert_return(() => invoke($0, `i32.umax`, []), [value("i32", -1)]); + +// ./test/core/int_literals.wast:39 +assert_return(() => invoke($0, `i32.smax`, []), [value("i32", 2147483647)]); + +// ./test/core/int_literals.wast:40 +assert_return(() => invoke($0, `i32.neg_smax`, []), [value("i32", -2147483647)]); + +// ./test/core/int_literals.wast:41 +assert_return(() => invoke($0, `i32.smin`, []), [value("i32", -2147483648)]); + +// ./test/core/int_literals.wast:42 +assert_return(() => invoke($0, `i32.alt_smin`, []), [value("i32", -2147483648)]); + +// ./test/core/int_literals.wast:43 +assert_return(() => invoke($0, `i32.inc_smin`, []), [value("i32", -2147483647)]); + +// ./test/core/int_literals.wast:44 +assert_return(() => invoke($0, `i32.neg_zero`, []), [value("i32", 0)]); + +// ./test/core/int_literals.wast:45 +assert_return(() => invoke($0, `i32.not_octal`, []), [value("i32", 10)]); + +// ./test/core/int_literals.wast:46 +assert_return(() => invoke($0, `i32.unsigned_decimal`, []), [value("i32", -1)]); + +// ./test/core/int_literals.wast:47 +assert_return(() => invoke($0, `i32.plus_sign`, []), [value("i32", 42)]); + +// ./test/core/int_literals.wast:49 +assert_return(() => invoke($0, `i64.test`, []), [value("i64", 913028331277281902n)]); + +// ./test/core/int_literals.wast:50 +assert_return(() => invoke($0, `i64.umax`, []), [value("i64", -1n)]); + +// ./test/core/int_literals.wast:51 +assert_return(() => invoke($0, `i64.smax`, []), [value("i64", 9223372036854775807n)]); + +// ./test/core/int_literals.wast:52 +assert_return(() => invoke($0, `i64.neg_smax`, []), [value("i64", -9223372036854775807n)]); + +// ./test/core/int_literals.wast:53 +assert_return(() => invoke($0, `i64.smin`, []), [value("i64", -9223372036854775808n)]); + +// ./test/core/int_literals.wast:54 +assert_return(() => invoke($0, `i64.alt_smin`, []), [value("i64", -9223372036854775808n)]); + +// ./test/core/int_literals.wast:55 +assert_return(() => invoke($0, `i64.inc_smin`, []), [value("i64", -9223372036854775807n)]); + +// ./test/core/int_literals.wast:56 +assert_return(() => invoke($0, `i64.neg_zero`, []), [value("i64", 0n)]); + +// ./test/core/int_literals.wast:57 +assert_return(() => invoke($0, `i64.not_octal`, []), [value("i64", 10n)]); + +// ./test/core/int_literals.wast:58 +assert_return(() => invoke($0, `i64.unsigned_decimal`, []), [value("i64", -1n)]); + +// ./test/core/int_literals.wast:59 +assert_return(() => invoke($0, `i64.plus_sign`, []), [value("i64", 42n)]); + +// ./test/core/int_literals.wast:61 +assert_return(() => invoke($0, `i32-dec-sep1`, []), [value("i32", 1000000)]); + +// ./test/core/int_literals.wast:62 +assert_return(() => invoke($0, `i32-dec-sep2`, []), [value("i32", 1000)]); + +// ./test/core/int_literals.wast:63 +assert_return(() => invoke($0, `i32-hex-sep1`, []), [value("i32", 168755353)]); + +// ./test/core/int_literals.wast:64 +assert_return(() => invoke($0, `i32-hex-sep2`, []), [value("i32", 109071)]); + +// ./test/core/int_literals.wast:66 +assert_return(() => invoke($0, `i64-dec-sep1`, []), [value("i64", 1000000n)]); + +// ./test/core/int_literals.wast:67 +assert_return(() => invoke($0, `i64-dec-sep2`, []), [value("i64", 1000n)]); + +// ./test/core/int_literals.wast:68 +assert_return(() => invoke($0, `i64-hex-sep1`, []), [value("i64", 3078696982321561n)]); + +// ./test/core/int_literals.wast:69 +assert_return(() => invoke($0, `i64-hex-sep2`, []), [value("i64", 109071n)]); + +// ./test/core/int_literals.wast:71 +assert_malformed(() => instantiate(`(global i32 (i32.const _100)) `), `unknown operator`); + +// ./test/core/int_literals.wast:75 +assert_malformed(() => instantiate(`(global i32 (i32.const +_100)) `), `unknown operator`); + +// ./test/core/int_literals.wast:79 +assert_malformed(() => instantiate(`(global i32 (i32.const -_100)) `), `unknown operator`); + +// ./test/core/int_literals.wast:83 +assert_malformed(() => instantiate(`(global i32 (i32.const 99_)) `), `unknown operator`); + +// ./test/core/int_literals.wast:87 +assert_malformed( + () => instantiate(`(global i32 (i32.const 1__000)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:91 +assert_malformed( + () => instantiate(`(global i32 (i32.const _0x100)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:95 +assert_malformed( + () => instantiate(`(global i32 (i32.const 0_x100)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:99 +assert_malformed( + () => instantiate(`(global i32 (i32.const 0x_100)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:103 +assert_malformed(() => instantiate(`(global i32 (i32.const 0x00_)) `), `unknown operator`); + +// ./test/core/int_literals.wast:107 +assert_malformed( + () => instantiate(`(global i32 (i32.const 0xff__ffff)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:112 +assert_malformed(() => instantiate(`(global i64 (i64.const _100)) `), `unknown operator`); + +// ./test/core/int_literals.wast:116 +assert_malformed(() => instantiate(`(global i64 (i64.const +_100)) `), `unknown operator`); + +// ./test/core/int_literals.wast:120 +assert_malformed(() => instantiate(`(global i64 (i64.const -_100)) `), `unknown operator`); + +// ./test/core/int_literals.wast:124 +assert_malformed(() => instantiate(`(global i64 (i64.const 99_)) `), `unknown operator`); + +// ./test/core/int_literals.wast:128 +assert_malformed( + () => instantiate(`(global i64 (i64.const 1__000)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:132 +assert_malformed( + () => instantiate(`(global i64 (i64.const _0x100)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:136 +assert_malformed( + () => instantiate(`(global i64 (i64.const 0_x100)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:140 +assert_malformed( + () => instantiate(`(global i64 (i64.const 0x_100)) `), + `unknown operator`, +); + +// ./test/core/int_literals.wast:144 +assert_malformed(() => instantiate(`(global i64 (i64.const 0x00_)) `), `unknown operator`); + +// ./test/core/int_literals.wast:148 +assert_malformed( + () => instantiate(`(global i64 (i64.const 0xff__ffff)) `), + `unknown operator`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/labels.wast.js b/js/src/jit-test/tests/wasm/spec/spec/labels.wast.js new file mode 100644 index 0000000000..b76f13f90a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/labels.wast.js @@ -0,0 +1,400 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/labels.wast + +// ./test/core/labels.wast:1 +let $0 = instantiate(`(module + (func (export "block") (result i32) + (block $$exit (result i32) + (br $$exit (i32.const 1)) + (i32.const 0) + ) + ) + + (func (export "loop1") (result i32) + (local $$i i32) + (local.set $$i (i32.const 0)) + (block $$exit (result i32) + (loop $$cont (result i32) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if (i32.eq (local.get $$i) (i32.const 5)) + (then (br $$exit (local.get $$i))) + ) + (br $$cont) + ) + ) + ) + + (func (export "loop2") (result i32) + (local $$i i32) + (local.set $$i (i32.const 0)) + (block $$exit (result i32) + (loop $$cont (result i32) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if (i32.eq (local.get $$i) (i32.const 5)) + (then (br $$cont)) + ) + (if (i32.eq (local.get $$i) (i32.const 8)) + (then (br $$exit (local.get $$i))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (br $$cont) + ) + ) + ) + + (func (export "loop3") (result i32) + (local $$i i32) + (local.set $$i (i32.const 0)) + (block $$exit (result i32) + (loop $$cont (result i32) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if (i32.eq (local.get $$i) (i32.const 5)) + (then (br $$exit (local.get $$i))) + ) + (local.get $$i) + ) + ) + ) + + (func (export "loop4") (param $$max i32) (result i32) + (local $$i i32) + (local.set $$i (i32.const 1)) + (block $$exit (result i32) + (loop $$cont (result i32) + (local.set $$i (i32.add (local.get $$i) (local.get $$i))) + (if (i32.gt_u (local.get $$i) (local.get $$max)) + (then (br $$exit (local.get $$i))) + ) + (br $$cont) + ) + ) + ) + + (func (export "loop5") (result i32) + (i32.add + (loop $$l (result i32) (i32.const 1)) + (i32.const 1) + ) + ) + + (func (export "loop6") (result i32) + (loop (result i32) + (br_if 0 (i32.const 0)) + (i32.const 3) + ) + ) + + (func (export "if") (result i32) + (local $$i i32) + (local.set $$i (i32.const 0)) + (block + (if $$l + (i32.const 1) + (then (br $$l) (local.set $$i (i32.const 666))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if $$l + (i32.const 1) + (then (br $$l) (local.set $$i (i32.const 666))) + (else (local.set $$i (i32.const 888))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if $$l + (i32.const 1) + (then (br $$l) (local.set $$i (i32.const 666))) + (else (local.set $$i (i32.const 888))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if $$l + (i32.const 0) + (then (local.set $$i (i32.const 888))) + (else (br $$l) (local.set $$i (i32.const 666))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if $$l + (i32.const 0) + (then (local.set $$i (i32.const 888))) + (else (br $$l) (local.set $$i (i32.const 666))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + ) + (local.get $$i) + ) + + (func (export "if2") (result i32) + (local $$i i32) + (local.set $$i (i32.const 0)) + (block + (if + (i32.const 1) + (then (br 0) (local.set $$i (i32.const 666))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if + (i32.const 1) + (then (br 0) (local.set $$i (i32.const 666))) + (else (local.set $$i (i32.const 888))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if + (i32.const 1) + (then (br 0) (local.set $$i (i32.const 666))) + (else (local.set $$i (i32.const 888))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if + (i32.const 0) + (then (local.set $$i (i32.const 888))) + (else (br 0) (local.set $$i (i32.const 666))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + (if + (i32.const 0) + (then (local.set $$i (i32.const 888))) + (else (br 0) (local.set $$i (i32.const 666))) + ) + (local.set $$i (i32.add (local.get $$i) (i32.const 1))) + ) + (local.get $$i) + ) + + (func (export "switch") (param i32) (result i32) + (block $$ret (result i32) + (i32.mul (i32.const 10) + (block $$exit (result i32) + (block $$0 + (block $$default + (block $$3 + (block $$2 + (block $$1 + (br_table $$0 $$1 $$2 $$3 $$default (local.get 0)) + ) ;; 1 + ) ;; 2 + (br $$exit (i32.const 2)) + ) ;; 3 + (br $$ret (i32.const 3)) + ) ;; default + ) ;; 0 + (i32.const 5) + ) + ) + ) + ) + + (func (export "return") (param i32) (result i32) + (block $$default + (block $$1 + (block $$0 + (br_table $$0 $$1 (local.get 0)) + (br $$default) + ) ;; 0 + (return (i32.const 0)) + ) ;; 1 + ) ;; default + (i32.const 2) + ) + + (func (export "br_if0") (result i32) + (local $$i i32) + (local.set $$i (i32.const 0)) + (block $$outer (result i32) + (block $$inner + (br_if $$inner (i32.const 0)) + (local.set $$i (i32.or (local.get $$i) (i32.const 0x1))) + (br_if $$inner (i32.const 1)) + (local.set $$i (i32.or (local.get $$i) (i32.const 0x2))) + ) + (drop (br_if $$outer + (block (result i32) + (local.set $$i (i32.or (local.get $$i) (i32.const 0x4))) + (local.get $$i) + ) + (i32.const 0) + )) + (local.set $$i (i32.or (local.get $$i) (i32.const 0x8))) + (drop (br_if $$outer + (block (result i32) + (local.set $$i (i32.or (local.get $$i) (i32.const 0x10))) + (local.get $$i) + ) + (i32.const 1) + )) + (local.set $$i (i32.or (local.get $$i) (i32.const 0x20))) (local.get $$i) + ) + ) + + (func (export "br_if1") (result i32) + (block $$l0 (result i32) + (drop + (br_if $$l0 + (block $$l1 (result i32) (br $$l1 (i32.const 1))) + (i32.const 1) + ) + ) + (i32.const 0) + ) + ) + + (func (export "br_if2") (result i32) + (block $$l0 (result i32) + (if (i32.const 1) + (then + (drop + (br_if $$l0 + (block $$l1 (result i32) (br $$l1 (i32.const 1))) + (i32.const 1) + ) + ) + ) + ) + (i32.const 0) + ) + ) + + (func (export "br_if3") (result i32) + (local $$i1 i32) + (drop + (i32.add + (block $$l0 (result i32) + (drop (br_if $$l0 + (block (result i32) (local.set $$i1 (i32.const 1)) (local.get $$i1)) + (block (result i32) (local.set $$i1 (i32.const 2)) (local.get $$i1)) + )) + (i32.const 0) + ) + (i32.const 0) + ) + ) + (local.get $$i1) + ) + + (func (export "br") (result i32) + (block $$l0 (result i32) + (if (i32.const 1) + (then (br $$l0 (block $$l1 (result i32) (br $$l1 (i32.const 1))))) + (else (block (drop (block $$l1 (result i32) (br $$l1 (i32.const 1)))))) + ) + (i32.const 1) + ) + ) + + (func (export "shadowing") (result i32) + (block $$l1 (result i32) (i32.xor (br $$l1 (i32.const 1)) (i32.const 2))) + ) + + (func (export "redefinition") (result i32) + (block $$l1 (result i32) + (i32.add + (block $$l1 (result i32) (i32.const 2)) + (block $$l1 (result i32) (br $$l1 (i32.const 3))) + ) + ) + ) +)`); + +// ./test/core/labels.wast:291 +assert_return(() => invoke($0, `block`, []), [value("i32", 1)]); + +// ./test/core/labels.wast:292 +assert_return(() => invoke($0, `loop1`, []), [value("i32", 5)]); + +// ./test/core/labels.wast:293 +assert_return(() => invoke($0, `loop2`, []), [value("i32", 8)]); + +// ./test/core/labels.wast:294 +assert_return(() => invoke($0, `loop3`, []), [value("i32", 1)]); + +// ./test/core/labels.wast:295 +assert_return(() => invoke($0, `loop4`, [8]), [value("i32", 16)]); + +// ./test/core/labels.wast:296 +assert_return(() => invoke($0, `loop5`, []), [value("i32", 2)]); + +// ./test/core/labels.wast:297 +assert_return(() => invoke($0, `loop6`, []), [value("i32", 3)]); + +// ./test/core/labels.wast:298 +assert_return(() => invoke($0, `if`, []), [value("i32", 5)]); + +// ./test/core/labels.wast:299 +assert_return(() => invoke($0, `if2`, []), [value("i32", 5)]); + +// ./test/core/labels.wast:300 +assert_return(() => invoke($0, `switch`, [0]), [value("i32", 50)]); + +// ./test/core/labels.wast:301 +assert_return(() => invoke($0, `switch`, [1]), [value("i32", 20)]); + +// ./test/core/labels.wast:302 +assert_return(() => invoke($0, `switch`, [2]), [value("i32", 20)]); + +// ./test/core/labels.wast:303 +assert_return(() => invoke($0, `switch`, [3]), [value("i32", 3)]); + +// ./test/core/labels.wast:304 +assert_return(() => invoke($0, `switch`, [4]), [value("i32", 50)]); + +// ./test/core/labels.wast:305 +assert_return(() => invoke($0, `switch`, [5]), [value("i32", 50)]); + +// ./test/core/labels.wast:306 +assert_return(() => invoke($0, `return`, [0]), [value("i32", 0)]); + +// ./test/core/labels.wast:307 +assert_return(() => invoke($0, `return`, [1]), [value("i32", 2)]); + +// ./test/core/labels.wast:308 +assert_return(() => invoke($0, `return`, [2]), [value("i32", 2)]); + +// ./test/core/labels.wast:309 +assert_return(() => invoke($0, `br_if0`, []), [value("i32", 29)]); + +// ./test/core/labels.wast:310 +assert_return(() => invoke($0, `br_if1`, []), [value("i32", 1)]); + +// ./test/core/labels.wast:311 +assert_return(() => invoke($0, `br_if2`, []), [value("i32", 1)]); + +// ./test/core/labels.wast:312 +assert_return(() => invoke($0, `br_if3`, []), [value("i32", 2)]); + +// ./test/core/labels.wast:313 +assert_return(() => invoke($0, `br`, []), [value("i32", 1)]); + +// ./test/core/labels.wast:314 +assert_return(() => invoke($0, `shadowing`, []), [value("i32", 1)]); + +// ./test/core/labels.wast:315 +assert_return(() => invoke($0, `redefinition`, []), [value("i32", 5)]); + +// ./test/core/labels.wast:317 +assert_invalid( + () => instantiate(`(module (func (block $$l (f32.neg (br_if $$l (i32.const 1))) (nop))))`), + `type mismatch`, +); + +// ./test/core/labels.wast:321 +assert_invalid( + () => instantiate(`(module (func (block $$l (br_if $$l (f32.const 0) (i32.const 1)))))`), + `type mismatch`, +); + +// ./test/core/labels.wast:325 +assert_invalid( + () => instantiate(`(module (func (block $$l (br_if $$l (f32.const 0) (i32.const 1)))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/left-to-right.wast.js b/js/src/jit-test/tests/wasm/spec/spec/left-to-right.wast.js new file mode 100644 index 0000000000..9e1f168906 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/left-to-right.wast.js @@ -0,0 +1,482 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/left-to-right.wast + +// ./test/core/left-to-right.wast:1 +let $0 = instantiate(`(module + (memory 1) + + (type $$i32_T (func (param i32 i32) (result i32))) + (type $$i64_T (func (param i64 i64) (result i32))) + (type $$f32_T (func (param f32 f32) (result i32))) + (type $$f64_T (func (param f64 f64) (result i32))) + (table funcref + (elem $$i32_t0 $$i32_t1 $$i64_t0 $$i64_t1 $$f32_t0 $$f32_t1 $$f64_t0 $$f64_t1) + ) + + (func $$i32_t0 (type $$i32_T) (i32.const -1)) + (func $$i32_t1 (type $$i32_T) (i32.const -2)) + (func $$i64_t0 (type $$i64_T) (i32.const -1)) + (func $$i64_t1 (type $$i64_T) (i32.const -2)) + (func $$f32_t0 (type $$f32_T) (i32.const -1)) + (func $$f32_t1 (type $$f32_T) (i32.const -2)) + (func $$f64_t0 (type $$f64_T) (i32.const -1)) + (func $$f64_t1 (type $$f64_T) (i32.const -2)) + + ;; The idea is: We reset the memory, then the instruction call $$*_left, + ;; $$*_right, $$*_another, $$*_callee (for indirect calls), and $$*_bool (when a + ;; boolean value is needed). These functions all call bump, which shifts the + ;; memory starting at address 8 up a byte, and then store a unique value at + ;; address 8. Then we read the 4-byte value at address 8. It should contain + ;; the correct sequence of unique values if the calls were evaluated in the + ;; correct order. + + (func $$reset (i32.store (i32.const 8) (i32.const 0))) + + (func $$bump + (i32.store8 (i32.const 11) (i32.load8_u (i32.const 10))) + (i32.store8 (i32.const 10) (i32.load8_u (i32.const 9))) + (i32.store8 (i32.const 9) (i32.load8_u (i32.const 8))) + (i32.store8 (i32.const 8) (i32.const -3))) + + (func $$get (result i32) (i32.load (i32.const 8))) + + (func $$i32_left (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 1)) (i32.const 0)) + (func $$i32_right (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 2)) (i32.const 1)) + (func $$i32_another (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 3)) (i32.const 1)) + (func $$i32_callee (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 4)) (i32.const 0)) + (func $$i32_bool (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 5)) (i32.const 0)) + (func $$i64_left (result i64) (call $$bump) (i32.store8 (i32.const 8) (i32.const 1)) (i64.const 0)) + (func $$i64_right (result i64) (call $$bump) (i32.store8 (i32.const 8) (i32.const 2)) (i64.const 1)) + (func $$i64_another (result i64) (call $$bump) (i32.store8 (i32.const 8) (i32.const 3)) (i64.const 1)) + (func $$i64_callee (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 4)) (i32.const 2)) + (func $$i64_bool (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 5)) (i32.const 0)) + (func $$f32_left (result f32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 1)) (f32.const 0)) + (func $$f32_right (result f32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 2)) (f32.const 1)) + (func $$f32_another (result f32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 3)) (f32.const 1)) + (func $$f32_callee (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 4)) (i32.const 4)) + (func $$f32_bool (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 5)) (i32.const 0)) + (func $$f64_left (result f64) (call $$bump) (i32.store8 (i32.const 8) (i32.const 1)) (f64.const 0)) + (func $$f64_right (result f64) (call $$bump) (i32.store8 (i32.const 8) (i32.const 2)) (f64.const 1)) + (func $$f64_another (result f64) (call $$bump) (i32.store8 (i32.const 8) (i32.const 3)) (f64.const 1)) + (func $$f64_callee (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 4)) (i32.const 6)) + (func $$f64_bool (result i32) (call $$bump) (i32.store8 (i32.const 8) (i32.const 5)) (i32.const 0)) + (func $$i32_dummy (param i32 i32)) + (func $$i64_dummy (param i64 i64)) + (func $$f32_dummy (param f32 f32)) + (func $$f64_dummy (param f64 f64)) + + (func (export "i32_add") (result i32) (call $$reset) (drop (i32.add (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_sub") (result i32) (call $$reset) (drop (i32.sub (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_mul") (result i32) (call $$reset) (drop (i32.mul (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_div_s") (result i32) (call $$reset) (drop (i32.div_s (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_div_u") (result i32) (call $$reset) (drop (i32.div_u (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_rem_s") (result i32) (call $$reset) (drop (i32.rem_s (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_rem_u") (result i32) (call $$reset) (drop (i32.rem_u (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_and") (result i32) (call $$reset) (drop (i32.and (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_or") (result i32) (call $$reset) (drop (i32.or (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_xor") (result i32) (call $$reset) (drop (i32.xor (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_shl") (result i32) (call $$reset) (drop (i32.shl (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_shr_u") (result i32) (call $$reset) (drop (i32.shr_u (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_shr_s") (result i32) (call $$reset) (drop (i32.shr_s (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_eq") (result i32) (call $$reset) (drop (i32.eq (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_ne") (result i32) (call $$reset) (drop (i32.ne (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_lt_s") (result i32) (call $$reset) (drop (i32.lt_s (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_le_s") (result i32) (call $$reset) (drop (i32.le_s (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_lt_u") (result i32) (call $$reset) (drop (i32.lt_u (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_le_u") (result i32) (call $$reset) (drop (i32.le_u (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_gt_s") (result i32) (call $$reset) (drop (i32.gt_s (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_ge_s") (result i32) (call $$reset) (drop (i32.ge_s (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_gt_u") (result i32) (call $$reset) (drop (i32.gt_u (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_ge_u") (result i32) (call $$reset) (drop (i32.ge_u (call $$i32_left) (call $$i32_right))) (call $$get)) + (func (export "i32_store") (result i32) (call $$reset) (i32.store (call $$i32_left) (call $$i32_right)) (call $$get)) + (func (export "i32_store8") (result i32) (call $$reset) (i32.store8 (call $$i32_left) (call $$i32_right)) (call $$get)) + (func (export "i32_store16") (result i32) (call $$reset) (i32.store16 (call $$i32_left) (call $$i32_right)) (call $$get)) + (func (export "i32_call") (result i32) (call $$reset) (call $$i32_dummy (call $$i32_left) (call $$i32_right)) (call $$get)) + (func (export "i32_call_indirect") (result i32) (call $$reset) (drop (call_indirect (type $$i32_T) (call $$i32_left) (call $$i32_right) (call $$i32_callee))) (call $$get)) + (func (export "i32_select") (result i32) (call $$reset) (drop (select (call $$i32_left) (call $$i32_right) (call $$i32_bool))) (call $$get)) + + (func (export "i64_add") (result i32) (call $$reset) (drop (i64.add (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_sub") (result i32) (call $$reset) (drop (i64.sub (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_mul") (result i32) (call $$reset) (drop (i64.mul (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_div_s") (result i32) (call $$reset) (drop (i64.div_s (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_div_u") (result i32) (call $$reset) (drop (i64.div_u (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_rem_s") (result i32) (call $$reset) (drop (i64.rem_s (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_rem_u") (result i32) (call $$reset) (drop (i64.rem_u (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_and") (result i32) (call $$reset) (drop (i64.and (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_or") (result i32) (call $$reset) (drop (i64.or (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_xor") (result i32) (call $$reset) (drop (i64.xor (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_shl") (result i32) (call $$reset) (drop (i64.shl (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_shr_u") (result i32) (call $$reset) (drop (i64.shr_u (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_shr_s") (result i32) (call $$reset) (drop (i64.shr_s (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_eq") (result i32) (call $$reset) (drop (i64.eq (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_ne") (result i32) (call $$reset) (drop (i64.ne (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_lt_s") (result i32) (call $$reset) (drop (i64.lt_s (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_le_s") (result i32) (call $$reset) (drop (i64.le_s (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_lt_u") (result i32) (call $$reset) (drop (i64.lt_u (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_le_u") (result i32) (call $$reset) (drop (i64.le_u (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_gt_s") (result i32) (call $$reset) (drop (i64.gt_s (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_ge_s") (result i32) (call $$reset) (drop (i64.ge_s (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_gt_u") (result i32) (call $$reset) (drop (i64.gt_u (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_ge_u") (result i32) (call $$reset) (drop (i64.ge_u (call $$i64_left) (call $$i64_right))) (call $$get)) + (func (export "i64_store") (result i32) (call $$reset) (i64.store (call $$i32_left) (call $$i64_right)) (call $$get)) + (func (export "i64_store8") (result i32) (call $$reset) (i64.store8 (call $$i32_left) (call $$i64_right)) (call $$get)) + (func (export "i64_store16") (result i32) (call $$reset) (i64.store16 (call $$i32_left) (call $$i64_right)) (call $$get)) + (func (export "i64_store32") (result i32) (call $$reset) (i64.store32 (call $$i32_left) (call $$i64_right)) (call $$get)) + (func (export "i64_call") (result i32) (call $$reset) (call $$i64_dummy (call $$i64_left) (call $$i64_right)) (call $$get)) + (func (export "i64_call_indirect") (result i32) (call $$reset) (drop (call_indirect (type $$i64_T) (call $$i64_left) (call $$i64_right) (call $$i64_callee))) (call $$get)) + (func (export "i64_select") (result i32) (call $$reset) (drop (select (call $$i64_left) (call $$i64_right) (call $$i64_bool))) (call $$get)) + + (func (export "f32_add") (result i32) (call $$reset) (drop (f32.add (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_sub") (result i32) (call $$reset) (drop (f32.sub (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_mul") (result i32) (call $$reset) (drop (f32.mul (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_div") (result i32) (call $$reset) (drop (f32.div (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_copysign") (result i32) (call $$reset) (drop (f32.copysign (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_eq") (result i32) (call $$reset) (drop (f32.eq (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_ne") (result i32) (call $$reset) (drop (f32.ne (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_lt") (result i32) (call $$reset) (drop (f32.lt (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_le") (result i32) (call $$reset) (drop (f32.le (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_gt") (result i32) (call $$reset) (drop (f32.gt (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_ge") (result i32) (call $$reset) (drop (f32.ge (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_min") (result i32) (call $$reset) (drop (f32.min (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_max") (result i32) (call $$reset) (drop (f32.max (call $$f32_left) (call $$f32_right))) (call $$get)) + (func (export "f32_store") (result i32) (call $$reset) (f32.store (call $$i32_left) (call $$f32_right)) (call $$get)) + (func (export "f32_call") (result i32) (call $$reset) (call $$f32_dummy (call $$f32_left) (call $$f32_right)) (call $$get)) + (func (export "f32_call_indirect") (result i32) (call $$reset) (drop (call_indirect (type $$f32_T) (call $$f32_left) (call $$f32_right) (call $$f32_callee))) (call $$get)) + (func (export "f32_select") (result i32) (call $$reset) (drop (select (call $$f32_left) (call $$f32_right) (call $$f32_bool))) (call $$get)) + + (func (export "f64_add") (result i32) (call $$reset) (drop (f64.add (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_sub") (result i32) (call $$reset) (drop (f64.sub (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_mul") (result i32) (call $$reset) (drop (f64.mul (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_div") (result i32) (call $$reset) (drop (f64.div (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_copysign") (result i32) (call $$reset) (drop (f64.copysign (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_eq") (result i32) (call $$reset) (drop (f64.eq (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_ne") (result i32) (call $$reset) (drop (f64.ne (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_lt") (result i32) (call $$reset) (drop (f64.lt (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_le") (result i32) (call $$reset) (drop (f64.le (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_gt") (result i32) (call $$reset) (drop (f64.gt (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_ge") (result i32) (call $$reset) (drop (f64.ge (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_min") (result i32) (call $$reset) (drop (f64.min (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_max") (result i32) (call $$reset) (drop (f64.max (call $$f64_left) (call $$f64_right))) (call $$get)) + (func (export "f64_store") (result i32) (call $$reset) (f64.store (call $$i32_left) (call $$f64_right)) (call $$get)) + (func (export "f64_call") (result i32) (call $$reset) (call $$f64_dummy (call $$f64_left) (call $$f64_right)) (call $$get)) + (func (export "f64_call_indirect") (result i32) (call $$reset) (drop (call_indirect (type $$f64_T) (call $$f64_left) (call $$f64_right) (call $$f64_callee))) (call $$get)) + (func (export "f64_select") (result i32) (call $$reset) (drop (select (call $$f64_left) (call $$f64_right) (call $$f64_bool))) (call $$get)) + + (func (export "br_if") (result i32) + (block (result i32) + (call $$reset) + (drop (br_if 0 (call $$i32_left) (i32.and (call $$i32_right) (i32.const 0)))) + (call $$get) + ) + ) + (func (export "br_table") (result i32) + (block $$a (result i32) + (call $$reset) + (drop + (block $$b (result i32) + (br_table $$a $$b (call $$i32_left) (call $$i32_right)) + ) + ) + (call $$get) + ) + ) +)`); + +// ./test/core/left-to-right.wast:181 +assert_return(() => invoke($0, `i32_add`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:181:59 +assert_return(() => invoke($0, `i64_add`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:182 +assert_return(() => invoke($0, `i32_sub`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:182:59 +assert_return(() => invoke($0, `i64_sub`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:183 +assert_return(() => invoke($0, `i32_mul`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:183:59 +assert_return(() => invoke($0, `i64_mul`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:184 +assert_return(() => invoke($0, `i32_div_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:184:59 +assert_return(() => invoke($0, `i64_div_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:185 +assert_return(() => invoke($0, `i32_div_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:185:59 +assert_return(() => invoke($0, `i64_div_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:186 +assert_return(() => invoke($0, `i32_rem_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:186:59 +assert_return(() => invoke($0, `i64_rem_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:187 +assert_return(() => invoke($0, `i32_rem_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:187:59 +assert_return(() => invoke($0, `i64_rem_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:188 +assert_return(() => invoke($0, `i32_and`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:188:59 +assert_return(() => invoke($0, `i64_and`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:189 +assert_return(() => invoke($0, `i32_or`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:189:59 +assert_return(() => invoke($0, `i64_or`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:190 +assert_return(() => invoke($0, `i32_xor`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:190:59 +assert_return(() => invoke($0, `i64_xor`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:191 +assert_return(() => invoke($0, `i32_shl`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:191:59 +assert_return(() => invoke($0, `i64_shl`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:192 +assert_return(() => invoke($0, `i32_shr_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:192:59 +assert_return(() => invoke($0, `i64_shr_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:193 +assert_return(() => invoke($0, `i32_shr_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:193:59 +assert_return(() => invoke($0, `i64_shr_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:194 +assert_return(() => invoke($0, `i32_eq`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:194:59 +assert_return(() => invoke($0, `i64_eq`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:195 +assert_return(() => invoke($0, `i32_ne`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:195:59 +assert_return(() => invoke($0, `i64_ne`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:196 +assert_return(() => invoke($0, `i32_lt_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:196:59 +assert_return(() => invoke($0, `i64_lt_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:197 +assert_return(() => invoke($0, `i32_le_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:197:59 +assert_return(() => invoke($0, `i64_le_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:198 +assert_return(() => invoke($0, `i32_lt_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:198:59 +assert_return(() => invoke($0, `i64_lt_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:199 +assert_return(() => invoke($0, `i32_le_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:199:59 +assert_return(() => invoke($0, `i64_le_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:200 +assert_return(() => invoke($0, `i32_gt_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:200:59 +assert_return(() => invoke($0, `i64_gt_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:201 +assert_return(() => invoke($0, `i32_ge_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:201:59 +assert_return(() => invoke($0, `i64_ge_s`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:202 +assert_return(() => invoke($0, `i32_gt_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:202:59 +assert_return(() => invoke($0, `i64_gt_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:203 +assert_return(() => invoke($0, `i32_ge_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:203:59 +assert_return(() => invoke($0, `i64_ge_u`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:204 +assert_return(() => invoke($0, `i32_store`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:204:59 +assert_return(() => invoke($0, `i64_store`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:205 +assert_return(() => invoke($0, `i32_store8`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:205:59 +assert_return(() => invoke($0, `i64_store8`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:206 +assert_return(() => invoke($0, `i32_store16`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:206:59 +assert_return(() => invoke($0, `i64_store16`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:207 +assert_return(() => invoke($0, `i64_store32`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:208 +assert_return(() => invoke($0, `i32_call`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:208:59 +assert_return(() => invoke($0, `i64_call`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:209 +assert_return(() => invoke($0, `i32_call_indirect`, []), [value("i32", 66052)]); + +// ./test/core/left-to-right.wast:210 +assert_return(() => invoke($0, `i64_call_indirect`, []), [value("i32", 66052)]); + +// ./test/core/left-to-right.wast:211 +assert_return(() => invoke($0, `i32_select`, []), [value("i32", 66053)]); + +// ./test/core/left-to-right.wast:211:61 +assert_return(() => invoke($0, `i64_select`, []), [value("i32", 66053)]); + +// ./test/core/left-to-right.wast:213 +assert_return(() => invoke($0, `f32_add`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:213:59 +assert_return(() => invoke($0, `f64_add`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:214 +assert_return(() => invoke($0, `f32_sub`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:214:59 +assert_return(() => invoke($0, `f64_sub`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:215 +assert_return(() => invoke($0, `f32_mul`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:215:59 +assert_return(() => invoke($0, `f64_mul`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:216 +assert_return(() => invoke($0, `f32_div`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:216:59 +assert_return(() => invoke($0, `f64_div`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:217 +assert_return(() => invoke($0, `f32_copysign`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:217:59 +assert_return(() => invoke($0, `f64_copysign`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:218 +assert_return(() => invoke($0, `f32_eq`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:218:59 +assert_return(() => invoke($0, `f64_eq`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:219 +assert_return(() => invoke($0, `f32_ne`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:219:59 +assert_return(() => invoke($0, `f64_ne`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:220 +assert_return(() => invoke($0, `f32_lt`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:220:59 +assert_return(() => invoke($0, `f64_lt`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:221 +assert_return(() => invoke($0, `f32_le`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:221:59 +assert_return(() => invoke($0, `f64_le`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:222 +assert_return(() => invoke($0, `f32_gt`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:222:59 +assert_return(() => invoke($0, `f64_gt`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:223 +assert_return(() => invoke($0, `f32_ge`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:223:59 +assert_return(() => invoke($0, `f64_ge`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:224 +assert_return(() => invoke($0, `f32_min`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:224:59 +assert_return(() => invoke($0, `f64_min`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:225 +assert_return(() => invoke($0, `f32_max`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:225:59 +assert_return(() => invoke($0, `f64_max`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:226 +assert_return(() => invoke($0, `f32_store`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:226:59 +assert_return(() => invoke($0, `f64_store`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:227 +assert_return(() => invoke($0, `f32_call`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:227:59 +assert_return(() => invoke($0, `f64_call`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:228 +assert_return(() => invoke($0, `f32_call_indirect`, []), [value("i32", 66052)]); + +// ./test/core/left-to-right.wast:229 +assert_return(() => invoke($0, `f64_call_indirect`, []), [value("i32", 66052)]); + +// ./test/core/left-to-right.wast:230 +assert_return(() => invoke($0, `f32_select`, []), [value("i32", 66053)]); + +// ./test/core/left-to-right.wast:230:61 +assert_return(() => invoke($0, `f64_select`, []), [value("i32", 66053)]); + +// ./test/core/left-to-right.wast:232 +assert_return(() => invoke($0, `br_if`, []), [value("i32", 258)]); + +// ./test/core/left-to-right.wast:233 +assert_return(() => invoke($0, `br_table`, []), [value("i32", 258)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/load.wast.js b/js/src/jit-test/tests/wasm/spec/spec/load.wast.js new file mode 100644 index 0000000000..55b00e573e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/load.wast.js @@ -0,0 +1,749 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/load.wast + +// ./test/core/load.wast:3 +let $0 = instantiate(`(module + (memory 1) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (i32.load (i32.const 0)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (i32.load (i32.const 0)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (i32.load (i32.const 0)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (i32.load (i32.const 0)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (i32.load (i32.const 0)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (i32.load (i32.const 0)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (i32.load (i32.const 0))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i32) + (return (i32.load (i32.const 0))) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (i32.load (i32.const 0)) + (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (i32.load (i32.const 0))) (else (i32.const 0)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 0)) (else (i32.load (i32.const 0))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (i32.load (i32.const 0)) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (i32.load (i32.const 0)) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (i32.load (i32.const 0))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (call $$f (i32.load (i32.const 0)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (result i32) + (call $$f (i32.const 1) (i32.load (i32.const 0)) (i32.const 3)) + ) + (func (export "as-call-last") (result i32) + (call $$f (i32.const 1) (i32.const 2) (i32.load (i32.const 0))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-first") (result i32) + (call_indirect (type $$sig) + (i32.load (i32.const 0)) (i32.const 2) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.load (i32.const 0)) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.load (i32.const 0)) (i32.const 0) + ) + ) + (func (export "as-call_indirect-index") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.const 3) (i32.load (i32.const 0)) + ) + ) + + (func (export "as-local.set-value") (local i32) + (local.set 0 (i32.load (i32.const 0))) + ) + (func (export "as-local.tee-value") (result i32) (local i32) + (local.tee 0 (i32.load (i32.const 0))) + ) + (global $$g (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (local i32) + (global.set $$g (i32.load (i32.const 0))) + ) + + (func (export "as-load-address") (result i32) + (i32.load (i32.load (i32.const 0))) + ) + (func (export "as-loadN-address") (result i32) + (i32.load8_s (i32.load (i32.const 0))) + ) + + (func (export "as-store-address") + (i32.store (i32.load (i32.const 0)) (i32.const 7)) + ) + (func (export "as-store-value") + (i32.store (i32.const 2) (i32.load (i32.const 0))) + ) + + (func (export "as-storeN-address") + (i32.store8 (i32.load8_s (i32.const 0)) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i32.store16 (i32.const 2) (i32.load (i32.const 0))) + ) + + (func (export "as-unary-operand") (result i32) + (i32.clz (i32.load (i32.const 100))) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (i32.load (i32.const 100)) (i32.const 10)) + ) + (func (export "as-binary-right") (result i32) + (i32.sub (i32.const 10) (i32.load (i32.const 100))) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (i32.load (i32.const 100))) + ) + + (func (export "as-compare-left") (result i32) + (i32.le_s (i32.load (i32.const 100)) (i32.const 10)) + ) + (func (export "as-compare-right") (result i32) + (i32.ne (i32.const 10) (i32.load (i32.const 100))) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (i32.load (i32.const 100))) + ) +)`); + +// ./test/core/load.wast:161 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:163 +assert_return(() => invoke($0, `as-br_if-cond`, []), []); + +// ./test/core/load.wast:164 +assert_return(() => invoke($0, `as-br_if-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:165 +assert_return(() => invoke($0, `as-br_if-value-cond`, []), [value("i32", 7)]); + +// ./test/core/load.wast:167 +assert_return(() => invoke($0, `as-br_table-index`, []), []); + +// ./test/core/load.wast:168 +assert_return(() => invoke($0, `as-br_table-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:169 +assert_return(() => invoke($0, `as-br_table-value-index`, []), [value("i32", 6)]); + +// ./test/core/load.wast:171 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:173 +assert_return(() => invoke($0, `as-if-cond`, []), [value("i32", 1)]); + +// ./test/core/load.wast:174 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 0)]); + +// ./test/core/load.wast:175 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 0)]); + +// ./test/core/load.wast:177 +assert_return(() => invoke($0, `as-select-first`, [0, 1]), [value("i32", 0)]); + +// ./test/core/load.wast:178 +assert_return(() => invoke($0, `as-select-second`, [0, 0]), [value("i32", 0)]); + +// ./test/core/load.wast:179 +assert_return(() => invoke($0, `as-select-cond`, []), [value("i32", 1)]); + +// ./test/core/load.wast:181 +assert_return(() => invoke($0, `as-call-first`, []), [value("i32", -1)]); + +// ./test/core/load.wast:182 +assert_return(() => invoke($0, `as-call-mid`, []), [value("i32", -1)]); + +// ./test/core/load.wast:183 +assert_return(() => invoke($0, `as-call-last`, []), [value("i32", -1)]); + +// ./test/core/load.wast:185 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", -1)]); + +// ./test/core/load.wast:186 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", -1)]); + +// ./test/core/load.wast:187 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", -1)]); + +// ./test/core/load.wast:188 +assert_return(() => invoke($0, `as-call_indirect-index`, []), [value("i32", -1)]); + +// ./test/core/load.wast:190 +assert_return(() => invoke($0, `as-local.set-value`, []), []); + +// ./test/core/load.wast:191 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("i32", 0)]); + +// ./test/core/load.wast:192 +assert_return(() => invoke($0, `as-global.set-value`, []), []); + +// ./test/core/load.wast:194 +assert_return(() => invoke($0, `as-load-address`, []), [value("i32", 0)]); + +// ./test/core/load.wast:195 +assert_return(() => invoke($0, `as-loadN-address`, []), [value("i32", 0)]); + +// ./test/core/load.wast:196 +assert_return(() => invoke($0, `as-store-address`, []), []); + +// ./test/core/load.wast:197 +assert_return(() => invoke($0, `as-store-value`, []), []); + +// ./test/core/load.wast:198 +assert_return(() => invoke($0, `as-storeN-address`, []), []); + +// ./test/core/load.wast:199 +assert_return(() => invoke($0, `as-storeN-value`, []), []); + +// ./test/core/load.wast:201 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 32)]); + +// ./test/core/load.wast:203 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 10)]); + +// ./test/core/load.wast:204 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i32", 10)]); + +// ./test/core/load.wast:206 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 1)]); + +// ./test/core/load.wast:208 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/load.wast:209 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/load.wast:211 +assert_return(() => invoke($0, `as-memory.grow-size`, []), [value("i32", 1)]); + +// ./test/core/load.wast:213 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:220 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load32_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:227 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load32_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:234 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:241 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load64_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:248 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i32) (i32.load64_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:256 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i64) (i64.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:263 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i64) (i64.load64_u (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:270 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result i64) (i64.load64_s (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:278 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result f32) (f32.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:285 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result f32) (f32.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:293 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result f64) (f64.load32 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:300 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (result f64) (f64.load64 (local.get 0))) `), + `unknown operator`, +); + +// ./test/core/load.wast:311 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load_i32 (i32.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:315 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load8_s_i32 (i32.load8_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:319 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load8_u_i32 (i32.load8_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:323 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load16_s_i32 (i32.load16_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:327 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load16_u_i32 (i32.load16_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:331 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load_i64 (i64.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:335 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load8_s_i64 (i64.load8_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:339 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load8_u_i64 (i64.load8_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:343 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load16_s_i64 (i64.load16_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:347 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load16_u_i64 (i64.load16_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:351 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load32_s_i64 (i64.load32_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:355 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load32_u_i64 (i64.load32_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:359 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load_f32 (f32.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:363 +assert_invalid( + () => instantiate(`(module (memory 1) (func $$load_f64 (f64.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:371 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:372 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load8_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:373 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load8_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:374 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load16_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:375 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i32) (i32.load16_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:376 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:377 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load8_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:378 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load8_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:379 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load16_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:380 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load16_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:381 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load32_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:382 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result i64) (i64.load32_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:383 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result f32) (f32.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:384 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result f64) (f64.load (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/load.wast:387 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty + (i32.load) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:396 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-block + (i32.const 0) + (block (i32.load) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:406 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-loop + (i32.const 0) + (loop (i32.load) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:416 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (i32.load) (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:426 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.load))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:436 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-br + (i32.const 0) + (block (br 0 (i32.load)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:446 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-br_if + (i32.const 0) + (block (br_if 0 (i32.load) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:456 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-br_table + (i32.const 0) + (block (br_table 0 (i32.load)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:466 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-return + (return (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:475 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-select + (select (i32.load) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:484 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-call + (call 1 (i32.load)) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:494 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-address-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.load) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:511 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-local.set + (local i32) + (local.set 0 (i32.load)) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:521 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-local.tee + (local i32) + (local.tee 0 (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:531 +assert_invalid( + () => instantiate(`(module + (memory 0) + (global $$x (mut i32) (i32.const 0)) + (func $$type-address-empty-in-global.set + (global.set $$x (i32.load)) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:541 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-memory.grow + (memory.grow (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:550 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-address-empty-in-load + (i32.load (i32.load)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/load.wast:559 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-store + (i32.store (i32.load) (i32.const 1)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/local_get.wast.js b/js/src/jit-test/tests/wasm/spec/spec/local_get.wast.js new file mode 100644 index 0000000000..c51b00bd31 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/local_get.wast.js @@ -0,0 +1,279 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/local_get.wast + +// ./test/core/local_get.wast:3 +let $0 = instantiate(`(module + ;; Typing + + (func (export "type-local-i32") (result i32) (local i32) (local.get 0)) + (func (export "type-local-i64") (result i64) (local i64) (local.get 0)) + (func (export "type-local-f32") (result f32) (local f32) (local.get 0)) + (func (export "type-local-f64") (result f64) (local f64) (local.get 0)) + + (func (export "type-param-i32") (param i32) (result i32) (local.get 0)) + (func (export "type-param-i64") (param i64) (result i64) (local.get 0)) + (func (export "type-param-f32") (param f32) (result f32) (local.get 0)) + (func (export "type-param-f64") (param f64) (result f64) (local.get 0)) + + (func (export "type-mixed") (param i64 f32 f64 i32 i32) + (local f32 i64 i64 f64) + (drop (i64.eqz (local.get 0))) + (drop (f32.neg (local.get 1))) + (drop (f64.neg (local.get 2))) + (drop (i32.eqz (local.get 3))) + (drop (i32.eqz (local.get 4))) + (drop (f32.neg (local.get 5))) + (drop (i64.eqz (local.get 6))) + (drop (i64.eqz (local.get 7))) + (drop (f64.neg (local.get 8))) + ) + + ;; Reading + + (func (export "read") (param i64 f32 f64 i32 i32) (result f64) + (local f32 i64 i64 f64) + (local.set 5 (f32.const 5.5)) + (local.set 6 (i64.const 6)) + (local.set 8 (f64.const 8)) + (f64.add + (f64.convert_i64_u (local.get 0)) + (f64.add + (f64.promote_f32 (local.get 1)) + (f64.add + (local.get 2) + (f64.add + (f64.convert_i32_u (local.get 3)) + (f64.add + (f64.convert_i32_s (local.get 4)) + (f64.add + (f64.promote_f32 (local.get 5)) + (f64.add + (f64.convert_i64_u (local.get 6)) + (f64.add + (f64.convert_i64_u (local.get 7)) + (local.get 8) + ) + ) + ) + ) + ) + ) + ) + ) + ) + + ;; As parameter of control constructs and instructions + + (func (export "as-block-value") (param i32) (result i32) + (block (result i32) (local.get 0)) + ) + (func (export "as-loop-value") (param i32) (result i32) + (loop (result i32) (local.get 0)) + ) + (func (export "as-br-value") (param i32) (result i32) + (block (result i32) (br 0 (local.get 0))) + ) + (func (export "as-br_if-value") (param i32) (result i32) + (block $$l0 (result i32) (br_if $$l0 (local.get 0) (i32.const 1))) + ) + + (func (export "as-br_if-value-cond") (param i32) (result i32) + (block (result i32) + (br_if 0 (local.get 0) (local.get 0)) + ) + ) + (func (export "as-br_table-value") (param i32) (result i32) + (block + (block + (block + (br_table 0 1 2 (local.get 0)) + (return (i32.const 0)) + ) + (return (i32.const 1)) + ) + (return (i32.const 2)) + ) + (i32.const 3) + ) + + (func (export "as-return-value") (param i32) (result i32) + (return (local.get 0)) + ) + + (func (export "as-if-then") (param i32) (result i32) + (if (result i32) (local.get 0) (then (local.get 0)) (else (i32.const 0))) + ) + (func (export "as-if-else") (param i32) (result i32) + (if (result i32) (local.get 0) (then (i32.const 1)) (else (local.get 0))) + ) +)`); + +// ./test/core/local_get.wast:109 +assert_return(() => invoke($0, `type-local-i32`, []), [value("i32", 0)]); + +// ./test/core/local_get.wast:110 +assert_return(() => invoke($0, `type-local-i64`, []), [value("i64", 0n)]); + +// ./test/core/local_get.wast:111 +assert_return(() => invoke($0, `type-local-f32`, []), [value("f32", 0)]); + +// ./test/core/local_get.wast:112 +assert_return(() => invoke($0, `type-local-f64`, []), [value("f64", 0)]); + +// ./test/core/local_get.wast:114 +assert_return(() => invoke($0, `type-param-i32`, [2]), [value("i32", 2)]); + +// ./test/core/local_get.wast:115 +assert_return(() => invoke($0, `type-param-i64`, [3n]), [value("i64", 3n)]); + +// ./test/core/local_get.wast:116 +assert_return(() => invoke($0, `type-param-f32`, [value("f32", 4.4)]), [value("f32", 4.4)]); + +// ./test/core/local_get.wast:117 +assert_return(() => invoke($0, `type-param-f64`, [value("f64", 5.5)]), [value("f64", 5.5)]); + +// ./test/core/local_get.wast:119 +assert_return(() => invoke($0, `as-block-value`, [6]), [value("i32", 6)]); + +// ./test/core/local_get.wast:120 +assert_return(() => invoke($0, `as-loop-value`, [7]), [value("i32", 7)]); + +// ./test/core/local_get.wast:122 +assert_return(() => invoke($0, `as-br-value`, [8]), [value("i32", 8)]); + +// ./test/core/local_get.wast:123 +assert_return(() => invoke($0, `as-br_if-value`, [9]), [value("i32", 9)]); + +// ./test/core/local_get.wast:124 +assert_return(() => invoke($0, `as-br_if-value-cond`, [10]), [value("i32", 10)]); + +// ./test/core/local_get.wast:125 +assert_return(() => invoke($0, `as-br_table-value`, [1]), [value("i32", 2)]); + +// ./test/core/local_get.wast:127 +assert_return(() => invoke($0, `as-return-value`, [0]), [value("i32", 0)]); + +// ./test/core/local_get.wast:129 +assert_return(() => invoke($0, `as-if-then`, [1]), [value("i32", 1)]); + +// ./test/core/local_get.wast:130 +assert_return(() => invoke($0, `as-if-else`, [0]), [value("i32", 0)]); + +// ./test/core/local_get.wast:132 +assert_return(() => invoke($0, `type-mixed`, [1n, value("f32", 2.2), value("f64", 3.3), 4, 5]), []); + +// ./test/core/local_get.wast:138 +assert_return( + () => invoke($0, `read`, [1n, value("f32", 2), value("f64", 3.3), 4, 5]), + [value("f64", 34.8)], +); + +// ./test/core/local_get.wast:148 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result i64) (local i32) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:152 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result i32) (local f32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:156 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result f64) (local f64 i64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:164 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param i32) (result i64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:168 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f32) (result i32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:172 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f64 i64) (result f64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:180 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-i32 (local i32) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:184 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-i64 (local i64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:188 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-f32 (local f32) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:192 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-f64 (local f64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_get.wast:200 +assert_invalid( + () => instantiate(`(module (func $$unbound-local (local i32 i64) (local.get 3) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:204 +assert_invalid( + () => instantiate(`(module (func $$large-local (local i32 i64) (local.get 14324343) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:209 +assert_invalid( + () => instantiate(`(module (func $$unbound-param (param i32 i64) (local.get 2) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:213 +assert_invalid( + () => instantiate(`(module (func $$large-param (param i32 i64) (local.get 714324343) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:218 +assert_invalid( + () => instantiate(`(module (func $$unbound-mixed (param i32) (local i32 i64) (local.get 3) drop))`), + `unknown local`, +); + +// ./test/core/local_get.wast:222 +assert_invalid( + () => instantiate(`(module (func $$large-mixed (param i64) (local i32 i64) (local.get 214324343) drop))`), + `unknown local`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/local_set.wast.js b/js/src/jit-test/tests/wasm/spec/spec/local_set.wast.js new file mode 100644 index 0000000000..f022fa00bf --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/local_set.wast.js @@ -0,0 +1,442 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/local_set.wast + +// ./test/core/local_set.wast:3 +let $0 = instantiate(`(module + ;; Typing + + (func (export "type-local-i32") (local i32) (local.set 0 (i32.const 0))) + (func (export "type-local-i64") (local i64) (local.set 0 (i64.const 0))) + (func (export "type-local-f32") (local f32) (local.set 0 (f32.const 0))) + (func (export "type-local-f64") (local f64) (local.set 0 (f64.const 0))) + + (func (export "type-param-i32") (param i32) (local.set 0 (i32.const 10))) + (func (export "type-param-i64") (param i64) (local.set 0 (i64.const 11))) + (func (export "type-param-f32") (param f32) (local.set 0 (f32.const 11.1))) + (func (export "type-param-f64") (param f64) (local.set 0 (f64.const 12.2))) + + (func (export "type-mixed") (param i64 f32 f64 i32 i32) (local f32 i64 i64 f64) + (local.set 0 (i64.const 0)) + (local.set 1 (f32.const 0)) + (local.set 2 (f64.const 0)) + (local.set 3 (i32.const 0)) + (local.set 4 (i32.const 0)) + (local.set 5 (f32.const 0)) + (local.set 6 (i64.const 0)) + (local.set 7 (i64.const 0)) + (local.set 8 (f64.const 0)) + ) + + ;; Writing + + (func (export "write") (param i64 f32 f64 i32 i32) (result i64) + (local f32 i64 i64 f64) + (local.set 1 (f32.const -0.3)) + (local.set 3 (i32.const 40)) + (local.set 4 (i32.const -7)) + (local.set 5 (f32.const 5.5)) + (local.set 6 (i64.const 6)) + (local.set 8 (f64.const 8)) + (i64.trunc_f64_s + (f64.add + (f64.convert_i64_u (local.get 0)) + (f64.add + (f64.promote_f32 (local.get 1)) + (f64.add + (local.get 2) + (f64.add + (f64.convert_i32_u (local.get 3)) + (f64.add + (f64.convert_i32_s (local.get 4)) + (f64.add + (f64.promote_f32 (local.get 5)) + (f64.add + (f64.convert_i64_u (local.get 6)) + (f64.add + (f64.convert_i64_u (local.get 7)) + (local.get 8) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ) + + ;; As parameter of control constructs and instructions + + (func (export "as-block-value") (param i32) + (block (local.set 0 (i32.const 1))) + ) + (func (export "as-loop-value") (param i32) + (loop (local.set 0 (i32.const 3))) + ) + + (func (export "as-br-value") (param i32) + (block (br 0 (local.set 0 (i32.const 9)))) + ) + (func (export "as-br_if-value") (param i32) + (block + (br_if 0 (local.set 0 (i32.const 8)) (i32.const 1)) + ) + ) + (func (export "as-br_if-value-cond") (param i32) + (block + (br_if 0 (i32.const 6) (local.set 0 (i32.const 9))) + ) + ) + (func (export "as-br_table-value") (param i32) + (block + (br_table 0 (local.set 0 (i32.const 10)) (i32.const 1)) + ) + ) + + (func (export "as-return-value") (param i32) + (return (local.set 0 (i32.const 7))) + ) + + (func (export "as-if-then") (param i32) + (if (local.get 0) (then (local.set 0 (i32.const 3)))) + ) + (func (export "as-if-else") (param i32) + (if (local.get 0) (then) (else (local.set 0 (i32.const 1)))) + ) +)`); + +// ./test/core/local_set.wast:107 +assert_return(() => invoke($0, `type-local-i32`, []), []); + +// ./test/core/local_set.wast:108 +assert_return(() => invoke($0, `type-local-i64`, []), []); + +// ./test/core/local_set.wast:109 +assert_return(() => invoke($0, `type-local-f32`, []), []); + +// ./test/core/local_set.wast:110 +assert_return(() => invoke($0, `type-local-f64`, []), []); + +// ./test/core/local_set.wast:112 +assert_return(() => invoke($0, `type-param-i32`, [2]), []); + +// ./test/core/local_set.wast:113 +assert_return(() => invoke($0, `type-param-i64`, [3n]), []); + +// ./test/core/local_set.wast:114 +assert_return(() => invoke($0, `type-param-f32`, [value("f32", 4.4)]), []); + +// ./test/core/local_set.wast:115 +assert_return(() => invoke($0, `type-param-f64`, [value("f64", 5.5)]), []); + +// ./test/core/local_set.wast:117 +assert_return(() => invoke($0, `as-block-value`, [0]), []); + +// ./test/core/local_set.wast:118 +assert_return(() => invoke($0, `as-loop-value`, [0]), []); + +// ./test/core/local_set.wast:120 +assert_return(() => invoke($0, `as-br-value`, [0]), []); + +// ./test/core/local_set.wast:121 +assert_return(() => invoke($0, `as-br_if-value`, [0]), []); + +// ./test/core/local_set.wast:122 +assert_return(() => invoke($0, `as-br_if-value-cond`, [0]), []); + +// ./test/core/local_set.wast:123 +assert_return(() => invoke($0, `as-br_table-value`, [0]), []); + +// ./test/core/local_set.wast:125 +assert_return(() => invoke($0, `as-return-value`, [0]), []); + +// ./test/core/local_set.wast:127 +assert_return(() => invoke($0, `as-if-then`, [1]), []); + +// ./test/core/local_set.wast:128 +assert_return(() => invoke($0, `as-if-else`, [0]), []); + +// ./test/core/local_set.wast:130 +assert_return(() => invoke($0, `type-mixed`, [1n, value("f32", 2.2), value("f64", 3.3), 4, 5]), []); + +// ./test/core/local_set.wast:136 +assert_return( + () => invoke($0, `write`, [1n, value("f32", 2), value("f64", 3.3), 4, 5]), + [value("i64", 56n)], +); + +// ./test/core/local_set.wast:147 +assert_invalid( + () => instantiate(`(module (func $$type-local-arg-void-vs-num (local i32) (local.set 0 (nop))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:151 +assert_invalid( + () => instantiate(`(module (func $$type-local-arg-num-vs-num (local i32) (local.set 0 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:155 +assert_invalid( + () => instantiate(`(module (func $$type-local-arg-num-vs-num (local f32) (local.set 0 (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:159 +assert_invalid( + () => instantiate(`(module (func $$type-local-arg-num-vs-num (local f64 i64) (local.set 1 (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:168 +assert_invalid( + () => instantiate(`(module (func $$type-param-arg-void-vs-num (param i32) (local.set 0 (nop))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:172 +assert_invalid( + () => instantiate(`(module (func $$type-param-arg-num-vs-num (param i32) (local.set 0 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:176 +assert_invalid( + () => instantiate(`(module (func $$type-param-arg-num-vs-num (param f32) (local.set 0 (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:180 +assert_invalid( + () => instantiate(`(module (func $$type-param-arg-num-vs-num (param f64 i64) (local.set 1 (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:185 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num (param i32) + (local.set 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:193 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-block (param i32) + (i32.const 0) + (block (local.set 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:202 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-loop (param i32) + (i32.const 0) + (loop (local.set 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:211 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-then (param i32) + (i32.const 0) + (if (i32.const 1) (then (local.set 0))) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:220 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-else (param i32) + (i32.const 0) + (if (result i32) (i32.const 0) (then (i32.const 0)) (else (local.set 0))) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:229 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-br (param i32) + (i32.const 0) + (block (br 0 (local.set 0))) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:238 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-br_if (param i32) + (i32.const 0) + (block (br_if 0 (local.set 0))) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:247 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-br_table (param i32) + (i32.const 0) + (block (br_table 0 (local.set 0))) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:256 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-return (param i32) + (return (local.set 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:264 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-select (param i32) + (select (local.set 0) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:272 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-call (param i32) + (call 1 (local.set 0)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:281 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-param-arg-empty-vs-num-in-call_indirect (param i32) + (block (result i32) + (call_indirect (type $$sig) + (local.set 0) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_set.wast:300 +assert_invalid( + () => instantiate(`(module (func $$type-mixed-arg-num-vs-num (param f32) (local i32) (local.set 1 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:304 +assert_invalid( + () => instantiate(`(module (func $$type-mixed-arg-num-vs-num (param i64 i32) (local f32) (local.set 1 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:308 +assert_invalid( + () => instantiate(`(module (func $$type-mixed-arg-num-vs-num (param i64) (local f64 i64) (local.set 1 (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:316 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-i32 (param i32) (result i32) (local.set 0 (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:320 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-i64 (param i64) (result i64) (local.set 0 (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:324 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-f32 (param f32) (result f32) (local.set 0 (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:328 +assert_invalid( + () => instantiate(`(module (func $$type-empty-vs-f64 (param f64) (result f64) (local.set 0 (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/local_set.wast:336 +assert_invalid( + () => instantiate(`(module (func $$unbound-local (local i32 i64) (local.set 3 (i32.const 0))))`), + `unknown local`, +); + +// ./test/core/local_set.wast:340 +assert_invalid( + () => instantiate(`(module (func $$large-local (local i32 i64) (local.set 14324343 (i32.const 0))))`), + `unknown local`, +); + +// ./test/core/local_set.wast:345 +assert_invalid( + () => instantiate(`(module (func $$unbound-param (param i32 i64) (local.set 2 (i32.const 0))))`), + `unknown local`, +); + +// ./test/core/local_set.wast:349 +assert_invalid( + () => instantiate(`(module (func $$large-param (param i32 i64) (local.set 714324343 (i32.const 0))))`), + `unknown local`, +); + +// ./test/core/local_set.wast:354 +assert_invalid( + () => instantiate(`(module (func $$unbound-mixed (param i32) (local i32 i64) (local.set 3 (i32.const 0))))`), + `unknown local`, +); + +// ./test/core/local_set.wast:358 +assert_invalid( + () => instantiate(`(module (func $$large-mixed (param i64) (local i32 i64) (local.set 214324343 (i32.const 0))))`), + `unknown local`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/local_tee.wast.js b/js/src/jit-test/tests/wasm/spec/spec/local_tee.wast.js new file mode 100644 index 0000000000..c02e2044e7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/local_tee.wast.js @@ -0,0 +1,806 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/local_tee.wast + +// ./test/core/local_tee.wast:3 +let $0 = instantiate(`(module + ;; Typing + + (func (export "type-local-i32") (result i32) (local i32) (local.tee 0 (i32.const 0))) + (func (export "type-local-i64") (result i64) (local i64) (local.tee 0 (i64.const 0))) + (func (export "type-local-f32") (result f32) (local f32) (local.tee 0 (f32.const 0))) + (func (export "type-local-f64") (result f64) (local f64) (local.tee 0 (f64.const 0))) + + (func (export "type-param-i32") (param i32) (result i32) (local.tee 0 (i32.const 10))) + (func (export "type-param-i64") (param i64) (result i64) (local.tee 0 (i64.const 11))) + (func (export "type-param-f32") (param f32) (result f32) (local.tee 0 (f32.const 11.1))) + (func (export "type-param-f64") (param f64) (result f64) (local.tee 0 (f64.const 12.2))) + + (func (export "type-mixed") (param i64 f32 f64 i32 i32) (local f32 i64 i64 f64) + (drop (i64.eqz (local.tee 0 (i64.const 0)))) + (drop (f32.neg (local.tee 1 (f32.const 0)))) + (drop (f64.neg (local.tee 2 (f64.const 0)))) + (drop (i32.eqz (local.tee 3 (i32.const 0)))) + (drop (i32.eqz (local.tee 4 (i32.const 0)))) + (drop (f32.neg (local.tee 5 (f32.const 0)))) + (drop (i64.eqz (local.tee 6 (i64.const 0)))) + (drop (i64.eqz (local.tee 7 (i64.const 0)))) + (drop (f64.neg (local.tee 8 (f64.const 0)))) + ) + + ;; Writing + + (func (export "write") (param i64 f32 f64 i32 i32) (result i64) (local f32 i64 i64 f64) + (drop (local.tee 1 (f32.const -0.3))) + (drop (local.tee 3 (i32.const 40))) + (drop (local.tee 4 (i32.const -7))) + (drop (local.tee 5 (f32.const 5.5))) + (drop (local.tee 6 (i64.const 6))) + (drop (local.tee 8 (f64.const 8))) + (i64.trunc_f64_s + (f64.add + (f64.convert_i64_u (local.get 0)) + (f64.add + (f64.promote_f32 (local.get 1)) + (f64.add + (local.get 2) + (f64.add + (f64.convert_i32_u (local.get 3)) + (f64.add + (f64.convert_i32_s (local.get 4)) + (f64.add + (f64.promote_f32 (local.get 5)) + (f64.add + (f64.convert_i64_u (local.get 6)) + (f64.add + (f64.convert_i64_u (local.get 7)) + (local.get 8) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ) + + ;; Result + + (func (export "result") (param i64 f32 f64 i32 i32) (result f64) + (local f32 i64 i64 f64) + (f64.add + (f64.convert_i64_u (local.tee 0 (i64.const 1))) + (f64.add + (f64.promote_f32 (local.tee 1 (f32.const 2))) + (f64.add + (local.tee 2 (f64.const 3.3)) + (f64.add + (f64.convert_i32_u (local.tee 3 (i32.const 4))) + (f64.add + (f64.convert_i32_s (local.tee 4 (i32.const 5))) + (f64.add + (f64.promote_f32 (local.tee 5 (f32.const 5.5))) + (f64.add + (f64.convert_i64_u (local.tee 6 (i64.const 6))) + (f64.add + (f64.convert_i64_u (local.tee 7 (i64.const 0))) + (local.tee 8 (f64.const 8)) + ) + ) + ) + ) + ) + ) + ) + ) + ) + + (func $$dummy) + + (func (export "as-block-first") (param i32) (result i32) + (block (result i32) (local.tee 0 (i32.const 1)) (call $$dummy)) + ) + (func (export "as-block-mid") (param i32) (result i32) + (block (result i32) (call $$dummy) (local.tee 0 (i32.const 1)) (call $$dummy)) + ) + (func (export "as-block-last") (param i32) (result i32) + (block (result i32) (call $$dummy) (call $$dummy) (local.tee 0 (i32.const 1))) + ) + + (func (export "as-loop-first") (param i32) (result i32) + (loop (result i32) (local.tee 0 (i32.const 3)) (call $$dummy)) + ) + (func (export "as-loop-mid") (param i32) (result i32) + (loop (result i32) (call $$dummy) (local.tee 0 (i32.const 4)) (call $$dummy)) + ) + (func (export "as-loop-last") (param i32) (result i32) + (loop (result i32) (call $$dummy) (call $$dummy) (local.tee 0 (i32.const 5))) + ) + + (func (export "as-br-value") (param i32) (result i32) + (block (result i32) (br 0 (local.tee 0 (i32.const 9)))) + ) + + (func (export "as-br_if-cond") (param i32) + (block (br_if 0 (local.tee 0 (i32.const 1)))) + ) + (func (export "as-br_if-value") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (local.tee 0 (i32.const 8)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (local.tee 0 (i32.const 9)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") (param i32) + (block (br_table 0 0 0 (local.tee 0 (i32.const 0)))) + ) + (func (export "as-br_table-value") (param i32) (result i32) + (block (result i32) + (br_table 0 0 0 (local.tee 0 (i32.const 10)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (param i32) (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (local.tee 0 (i32.const 11))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (param i32) (result i32) + (return (local.tee 0 (i32.const 7))) + ) + + (func (export "as-if-cond") (param i32) (result i32) + (if (result i32) (local.tee 0 (i32.const 2)) + (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (param i32) (result i32) + (if (result i32) (local.get 0) + (then (local.tee 0 (i32.const 3))) (else (local.get 0)) + ) + ) + (func (export "as-if-else") (param i32) (result i32) + (if (result i32) (local.get 0) + (then (local.get 0)) (else (local.tee 0 (i32.const 4))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (local.tee 0 (i32.const 5)) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (local.tee 0 (i32.const 6)) (local.get 1)) + ) + (func (export "as-select-cond") (param i32) (result i32) + (select (i32.const 0) (i32.const 1) (local.tee 0 (i32.const 7))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (param i32) (result i32) + (call $$f (local.tee 0 (i32.const 12)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (param i32) (result i32) + (call $$f (i32.const 1) (local.tee 0 (i32.const 13)) (i32.const 3)) + ) + (func (export "as-call-last") (param i32) (result i32) + (call $$f (i32.const 1) (i32.const 2) (local.tee 0 (i32.const 14))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-first") (param i32) (result i32) + (call_indirect (type $$sig) + (local.tee 0 (i32.const 1)) (i32.const 2) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-mid") (param i32) (result i32) + (call_indirect (type $$sig) + (i32.const 1) (local.tee 0 (i32.const 2)) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-last") (param i32) (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (local.tee 0 (i32.const 3)) (i32.const 0) + ) + ) + (func (export "as-call_indirect-index") (param i32) (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.const 3) (local.tee 0 (i32.const 0)) + ) + ) + + (func (export "as-local.set-value") (local i32) + (local.set 0 (local.tee 0 (i32.const 1))) + ) + (func (export "as-local.tee-value") (param i32) (result i32) + (local.tee 0 (local.tee 0 (i32.const 1))) + ) + (global $$g (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (local i32) + (global.set $$g (local.tee 0 (i32.const 1))) + ) + + (memory 1) + (func (export "as-load-address") (param i32) (result i32) + (i32.load (local.tee 0 (i32.const 1))) + ) + (func (export "as-loadN-address") (param i32) (result i32) + (i32.load8_s (local.tee 0 (i32.const 3))) + ) + + (func (export "as-store-address") (param i32) + (i32.store (local.tee 0 (i32.const 30)) (i32.const 7)) + ) + (func (export "as-store-value") (param i32) + (i32.store (i32.const 2) (local.tee 0 (i32.const 1))) + ) + + (func (export "as-storeN-address") (param i32) + (i32.store8 (local.tee 0 (i32.const 1)) (i32.const 7)) + ) + (func (export "as-storeN-value") (param i32) + (i32.store16 (i32.const 2) (local.tee 0 (i32.const 1))) + ) + + (func (export "as-unary-operand") (param f32) (result f32) + (f32.neg (local.tee 0 (f32.const nan:0x0f1e2))) + ) + + (func (export "as-binary-left") (param i32) (result i32) + (i32.add (local.tee 0 (i32.const 3)) (i32.const 10)) + ) + (func (export "as-binary-right") (param i32) (result i32) + (i32.sub (i32.const 10) (local.tee 0 (i32.const 4))) + ) + + (func (export "as-test-operand") (param i32) (result i32) + (i32.eqz (local.tee 0 (i32.const 0))) + ) + + (func (export "as-compare-left") (param i32) (result i32) + (i32.le_s (local.tee 0 (i32.const 43)) (i32.const 10)) + ) + (func (export "as-compare-right") (param i32) (result i32) + (i32.ne (i32.const 10) (local.tee 0 (i32.const 42))) + ) + + (func (export "as-convert-operand") (param i64) (result i32) + (i32.wrap_i64 (local.tee 0 (i64.const 41))) + ) + + (func (export "as-memory.grow-size") (param i32) (result i32) + (memory.grow (local.tee 0 (i32.const 40))) + ) + +)`); + +// ./test/core/local_tee.wast:280 +assert_return(() => invoke($0, `type-local-i32`, []), [value("i32", 0)]); + +// ./test/core/local_tee.wast:281 +assert_return(() => invoke($0, `type-local-i64`, []), [value("i64", 0n)]); + +// ./test/core/local_tee.wast:282 +assert_return(() => invoke($0, `type-local-f32`, []), [value("f32", 0)]); + +// ./test/core/local_tee.wast:283 +assert_return(() => invoke($0, `type-local-f64`, []), [value("f64", 0)]); + +// ./test/core/local_tee.wast:285 +assert_return(() => invoke($0, `type-param-i32`, [2]), [value("i32", 10)]); + +// ./test/core/local_tee.wast:286 +assert_return(() => invoke($0, `type-param-i64`, [3n]), [value("i64", 11n)]); + +// ./test/core/local_tee.wast:287 +assert_return(() => invoke($0, `type-param-f32`, [value("f32", 4.4)]), [value("f32", 11.1)]); + +// ./test/core/local_tee.wast:288 +assert_return(() => invoke($0, `type-param-f64`, [value("f64", 5.5)]), [value("f64", 12.2)]); + +// ./test/core/local_tee.wast:290 +assert_return(() => invoke($0, `as-block-first`, [0]), [value("i32", 1)]); + +// ./test/core/local_tee.wast:291 +assert_return(() => invoke($0, `as-block-mid`, [0]), [value("i32", 1)]); + +// ./test/core/local_tee.wast:292 +assert_return(() => invoke($0, `as-block-last`, [0]), [value("i32", 1)]); + +// ./test/core/local_tee.wast:294 +assert_return(() => invoke($0, `as-loop-first`, [0]), [value("i32", 3)]); + +// ./test/core/local_tee.wast:295 +assert_return(() => invoke($0, `as-loop-mid`, [0]), [value("i32", 4)]); + +// ./test/core/local_tee.wast:296 +assert_return(() => invoke($0, `as-loop-last`, [0]), [value("i32", 5)]); + +// ./test/core/local_tee.wast:298 +assert_return(() => invoke($0, `as-br-value`, [0]), [value("i32", 9)]); + +// ./test/core/local_tee.wast:300 +assert_return(() => invoke($0, `as-br_if-cond`, [0]), []); + +// ./test/core/local_tee.wast:301 +assert_return(() => invoke($0, `as-br_if-value`, [0]), [value("i32", 8)]); + +// ./test/core/local_tee.wast:302 +assert_return(() => invoke($0, `as-br_if-value-cond`, [0]), [value("i32", 6)]); + +// ./test/core/local_tee.wast:304 +assert_return(() => invoke($0, `as-br_table-index`, [0]), []); + +// ./test/core/local_tee.wast:305 +assert_return(() => invoke($0, `as-br_table-value`, [0]), [value("i32", 10)]); + +// ./test/core/local_tee.wast:306 +assert_return(() => invoke($0, `as-br_table-value-index`, [0]), [value("i32", 6)]); + +// ./test/core/local_tee.wast:308 +assert_return(() => invoke($0, `as-return-value`, [0]), [value("i32", 7)]); + +// ./test/core/local_tee.wast:310 +assert_return(() => invoke($0, `as-if-cond`, [0]), [value("i32", 0)]); + +// ./test/core/local_tee.wast:311 +assert_return(() => invoke($0, `as-if-then`, [1]), [value("i32", 3)]); + +// ./test/core/local_tee.wast:312 +assert_return(() => invoke($0, `as-if-else`, [0]), [value("i32", 4)]); + +// ./test/core/local_tee.wast:314 +assert_return(() => invoke($0, `as-select-first`, [0, 1]), [value("i32", 5)]); + +// ./test/core/local_tee.wast:315 +assert_return(() => invoke($0, `as-select-second`, [0, 0]), [value("i32", 6)]); + +// ./test/core/local_tee.wast:316 +assert_return(() => invoke($0, `as-select-cond`, [0]), [value("i32", 0)]); + +// ./test/core/local_tee.wast:318 +assert_return(() => invoke($0, `as-call-first`, [0]), [value("i32", -1)]); + +// ./test/core/local_tee.wast:319 +assert_return(() => invoke($0, `as-call-mid`, [0]), [value("i32", -1)]); + +// ./test/core/local_tee.wast:320 +assert_return(() => invoke($0, `as-call-last`, [0]), [value("i32", -1)]); + +// ./test/core/local_tee.wast:322 +assert_return(() => invoke($0, `as-call_indirect-first`, [0]), [value("i32", -1)]); + +// ./test/core/local_tee.wast:323 +assert_return(() => invoke($0, `as-call_indirect-mid`, [0]), [value("i32", -1)]); + +// ./test/core/local_tee.wast:324 +assert_return(() => invoke($0, `as-call_indirect-last`, [0]), [value("i32", -1)]); + +// ./test/core/local_tee.wast:325 +assert_return(() => invoke($0, `as-call_indirect-index`, [0]), [value("i32", -1)]); + +// ./test/core/local_tee.wast:327 +assert_return(() => invoke($0, `as-local.set-value`, []), []); + +// ./test/core/local_tee.wast:328 +assert_return(() => invoke($0, `as-local.tee-value`, [0]), [value("i32", 1)]); + +// ./test/core/local_tee.wast:329 +assert_return(() => invoke($0, `as-global.set-value`, []), []); + +// ./test/core/local_tee.wast:331 +assert_return(() => invoke($0, `as-load-address`, [0]), [value("i32", 0)]); + +// ./test/core/local_tee.wast:332 +assert_return(() => invoke($0, `as-loadN-address`, [0]), [value("i32", 0)]); + +// ./test/core/local_tee.wast:333 +assert_return(() => invoke($0, `as-store-address`, [0]), []); + +// ./test/core/local_tee.wast:334 +assert_return(() => invoke($0, `as-store-value`, [0]), []); + +// ./test/core/local_tee.wast:335 +assert_return(() => invoke($0, `as-storeN-address`, [0]), []); + +// ./test/core/local_tee.wast:336 +assert_return(() => invoke($0, `as-storeN-value`, [0]), []); + +// ./test/core/local_tee.wast:338 +assert_return( + () => invoke($0, `as-unary-operand`, [value("f32", 0)]), + [bytes("f32", [0xe2, 0xf1, 0x80, 0xff])], +); + +// ./test/core/local_tee.wast:339 +assert_return(() => invoke($0, `as-binary-left`, [0]), [value("i32", 13)]); + +// ./test/core/local_tee.wast:340 +assert_return(() => invoke($0, `as-binary-right`, [0]), [value("i32", 6)]); + +// ./test/core/local_tee.wast:341 +assert_return(() => invoke($0, `as-test-operand`, [0]), [value("i32", 1)]); + +// ./test/core/local_tee.wast:342 +assert_return(() => invoke($0, `as-compare-left`, [0]), [value("i32", 0)]); + +// ./test/core/local_tee.wast:343 +assert_return(() => invoke($0, `as-compare-right`, [0]), [value("i32", 1)]); + +// ./test/core/local_tee.wast:344 +assert_return(() => invoke($0, `as-convert-operand`, [0n]), [value("i32", 41)]); + +// ./test/core/local_tee.wast:345 +assert_return(() => invoke($0, `as-memory.grow-size`, [0]), [value("i32", 1)]); + +// ./test/core/local_tee.wast:347 +assert_return(() => invoke($0, `type-mixed`, [1n, value("f32", 2.2), value("f64", 3.3), 4, 5]), []); + +// ./test/core/local_tee.wast:353 +assert_return( + () => invoke($0, `write`, [1n, value("f32", 2), value("f64", 3.3), 4, 5]), + [value("i64", 56n)], +); + +// ./test/core/local_tee.wast:360 +assert_return( + () => invoke($0, `result`, [-1n, value("f32", -2), value("f64", -3.3), -4, -5]), + [value("f64", 34.8)], +); + +// ./test/core/local_tee.wast:370 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (result i64) (local i32) (local.tee 0 (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:374 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (local f32) (i32.eqz (local.tee 0 (f32.const 0)))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:378 +assert_invalid( + () => instantiate(`(module (func $$type-local-num-vs-num (local f64 i64) (f64.neg (local.tee 1 (i64.const 0)))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:383 +assert_invalid( + () => instantiate(`(module (func $$type-local-arg-void-vs-num (local i32) (local.tee 0 (nop))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:387 +assert_invalid( + () => instantiate(`(module (func $$type-local-arg-num-vs-num (local i32) (local.tee 0 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:391 +assert_invalid( + () => instantiate(`(module (func $$type-local-arg-num-vs-num (local f32) (local.tee 0 (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:395 +assert_invalid( + () => instantiate(`(module (func $$type-local-arg-num-vs-num (local f64 i64) (local.tee 1 (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:403 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param i32) (result i64) (local.get 0)))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:407 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f32) (i32.eqz (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:411 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num (param f64 i64) (f64.neg (local.get 1))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:416 +assert_invalid( + () => instantiate(`(module (func $$type-param-arg-void-vs-num (param i32) (local.tee 0 (nop))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:420 +assert_invalid( + () => instantiate(`(module (func $$type-param-arg-num-vs-num (param i32) (local.tee 0 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:424 +assert_invalid( + () => instantiate(`(module (func $$type-param-arg-num-vs-num (param f32) (local.tee 0 (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:428 +assert_invalid( + () => instantiate(`(module (func $$type-param-arg-num-vs-num (param f64 i64) (local.tee 1 (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:433 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num (param i32) + (local.tee 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:441 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-block (param i32) + (i32.const 0) + (block (local.tee 0) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:450 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-loop (param i32) + (i32.const 0) + (loop (local.tee 0) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:459 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-then (param i32) + (i32.const 0) (i32.const 0) + (if (then (local.tee 0) (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:468 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-else (param i32) + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (local.tee 0))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:477 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-br (param i32) + (i32.const 0) + (block (br 0 (local.tee 0)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:486 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-br_if (param i32) + (i32.const 0) + (block (br_if 0 (local.tee 0) (i32.const 1)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:495 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-br_table (param i32) + (i32.const 0) + (block (br_table 0 (local.tee 0)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:504 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-return (param i32) + (return (local.tee 0)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:512 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-select (param i32) + (select (local.tee 0) (i32.const 1) (i32.const 2)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:520 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-call (param i32) + (call 1 (local.tee 0)) (drop) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:529 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-param-arg-empty-vs-num-in-call_indirect (param i32) + (block (result i32) + (call_indirect (type $$sig) + (local.tee 0) (i32.const 0) + ) + (drop) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:545 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-local.set (param i32) + (local.set 0 (local.tee 0)) (local.get 0) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:553 +assert_invalid( + () => instantiate(`(module + (func $$type-param-arg-empty-vs-num-in-local.tee (param i32) + (local.tee 0 (local.tee 0)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:561 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-param-arg-empty-vs-num-in-global.set (param i32) + (global.set $$x (local.tee 0)) (global.get $$x) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:570 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-param-arg-empty-vs-num-in-memory.grow (param i32) + (memory.grow (local.tee 0)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:579 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-param-arg-empty-vs-num-in-load (param i32) + (i32.load (local.tee 0)) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:588 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-param-arg-empty-vs-num-in-store (param i32) + (i32.store (local.tee 0) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:598 +assert_invalid( + () => instantiate(`(module (func $$type-mixed-arg-num-vs-num (param f32) (local i32) (local.tee 1 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:602 +assert_invalid( + () => instantiate(`(module (func $$type-mixed-arg-num-vs-num (param i64 i32) (local f32) (local.tee 1 (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:606 +assert_invalid( + () => instantiate(`(module (func $$type-mixed-arg-num-vs-num (param i64) (local f64 i64) (local.tee 1 (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/local_tee.wast:614 +assert_invalid( + () => instantiate(`(module (func $$unbound-local (local i32 i64) (local.tee 3 (i32.const 0)) drop))`), + `unknown local`, +); + +// ./test/core/local_tee.wast:618 +assert_invalid( + () => instantiate(`(module (func $$large-local (local i32 i64) (local.tee 14324343 (i32.const 0)) drop))`), + `unknown local`, +); + +// ./test/core/local_tee.wast:623 +assert_invalid( + () => instantiate(`(module (func $$unbound-param (param i32 i64) (local.tee 2 (i32.const 0)) drop))`), + `unknown local`, +); + +// ./test/core/local_tee.wast:627 +assert_invalid( + () => instantiate(`(module (func $$large-param (param i32 i64) (local.tee 714324343 (i32.const 0)) drop))`), + `unknown local`, +); + +// ./test/core/local_tee.wast:632 +assert_invalid( + () => instantiate(`(module (func $$unbound-mixed (param i32) (local i32 i64) (local.tee 3 (i32.const 0)) drop))`), + `unknown local`, +); + +// ./test/core/local_tee.wast:636 +assert_invalid( + () => instantiate(`(module (func $$large-mixed (param i64) (local i32 i64) (local.tee 214324343 (i32.const 0)) drop))`), + `unknown local`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/loop.wast.js b/js/src/jit-test/tests/wasm/spec/spec/loop.wast.js new file mode 100644 index 0000000000..d00d9d4a6e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/loop.wast.js @@ -0,0 +1,986 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/loop.wast + +// ./test/core/loop.wast:3 +let $0 = instantiate(`(module + (memory 1) + + (func $$dummy) + + (func (export "empty") + (loop) + (loop $$l) + ) + + (func (export "singular") (result i32) + (loop (nop)) + (loop (result i32) (i32.const 7)) + ) + + (func (export "multi") (result i32) + (loop (call $$dummy) (call $$dummy) (call $$dummy) (call $$dummy)) + (loop (result i32) (call $$dummy) (call $$dummy) (i32.const 8) (call $$dummy)) + (drop) + (loop (result i32 i64 i32) + (call $$dummy) (call $$dummy) (call $$dummy) (i32.const 8) (call $$dummy) + (call $$dummy) (call $$dummy) (call $$dummy) (i64.const 7) (call $$dummy) + (call $$dummy) (call $$dummy) (call $$dummy) (i32.const 9) (call $$dummy) + ) + (drop) (drop) + ) + + (func (export "nested") (result i32) + (loop (result i32) + (loop (call $$dummy) (block) (nop)) + (loop (result i32) (call $$dummy) (i32.const 9)) + ) + ) + + (func (export "deep") (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (call $$dummy) (i32.const 150) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + ) + + (func (export "as-select-first") (result i32) + (select (loop (result i32) (i32.const 1)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (loop (result i32) (i32.const 1)) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (loop (result i32) (i32.const 1))) + ) + + (func (export "as-if-condition") + (loop (result i32) (i32.const 1)) (if (then (call $$dummy))) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) (then (loop (result i32) (i32.const 1))) (else (i32.const 2))) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 1) (then (i32.const 2)) (else (loop (result i32) (i32.const 1)))) + ) + + (func (export "as-br_if-first") (result i32) + (block (result i32) (br_if 0 (loop (result i32) (i32.const 1)) (i32.const 2))) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) (br_if 0 (i32.const 2) (loop (result i32) (i32.const 1)))) + ) + + (func (export "as-br_table-first") (result i32) + (block (result i32) (loop (result i32) (i32.const 1)) (i32.const 2) (br_table 0 0)) + ) + (func (export "as-br_table-last") (result i32) + (block (result i32) (i32.const 2) (loop (result i32) (i32.const 1)) (br_table 0 0)) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $$check) + (loop (result i32) (i32.const 1)) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 2) (loop (result i32) (i32.const 1)) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $$check) + (i32.const 1) (i32.const 2) (loop (result i32) (i32.const 0)) + ) + ) + ) + + (func (export "as-store-first") + (loop (result i32) (i32.const 1)) (i32.const 1) (i32.store) + ) + (func (export "as-store-last") + (i32.const 10) (loop (result i32) (i32.const 1)) (i32.store) + ) + + (func (export "as-memory.grow-value") (result i32) + (memory.grow (loop (result i32) (i32.const 1))) + ) + + (func $$f (param i32) (result i32) (local.get 0)) + + (func (export "as-call-value") (result i32) + (call $$f (loop (result i32) (i32.const 1))) + ) + (func (export "as-return-value") (result i32) + (loop (result i32) (i32.const 1)) (return) + ) + (func (export "as-drop-operand") + (drop (loop (result i32) (i32.const 1))) + ) + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (loop (result i32) (i32.const 1)))) + ) + (func (export "as-local.set-value") (result i32) + (local i32) (local.set 0 (loop (result i32) (i32.const 1))) (local.get 0) + ) + (func (export "as-local.tee-value") (result i32) + (local i32) (local.tee 0 (loop (result i32) (i32.const 1))) + ) + (global $$a (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (result i32) + (global.set $$a (loop (result i32) (i32.const 1))) + (global.get $$a) + ) + (func (export "as-load-operand") (result i32) + (i32.load (loop (result i32) (i32.const 1))) + ) + + (func (export "as-unary-operand") (result i32) + (i32.ctz (loop (result i32) (call $$dummy) (i32.const 13))) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (loop (result i32) (call $$dummy) (i32.const 3)) + (loop (result i32) (call $$dummy) (i32.const 4)) + ) + ) + (func (export "as-test-operand") (result i32) + (i32.eqz (loop (result i32) (call $$dummy) (i32.const 13))) + ) + (func (export "as-compare-operand") (result i32) + (f32.gt + (loop (result f32) (call $$dummy) (f32.const 3)) + (loop (result f32) (call $$dummy) (f32.const 3)) + ) + ) + (func (export "as-binary-operands") (result i32) + (i32.mul + (loop (result i32 i32) + (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4) + ) + ) + ) + (func (export "as-compare-operands") (result i32) + (f32.gt + (loop (result f32 f32) + (call $$dummy) (f32.const 3) (call $$dummy) (f32.const 3) + ) + ) + ) + (func (export "as-mixed-operands") (result i32) + (loop (result i32 i32) + (call $$dummy) (i32.const 3) (call $$dummy) (i32.const 4) + ) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "break-bare") (result i32) + (block (loop (br 1) (br 0) (unreachable))) + (block (loop (br_if 1 (i32.const 1)) (unreachable))) + (block (loop (br_table 1 (i32.const 0)) (unreachable))) + (block (loop (br_table 1 1 1 (i32.const 1)) (unreachable))) + (i32.const 19) + ) + (func (export "break-value") (result i32) + (block (result i32) + (i32.const 0) + (loop (param i32) + (block (br 2 (i32.const 18))) + (br 0 (i32.const 20)) + ) + (i32.const 19) + ) + ) + (func (export "break-multi-value") (result i32 i32 i64) + (block (result i32 i32 i64) + (i32.const 0) (i32.const 0) (i64.const 0) + (loop (param i32 i32 i64) + (block (br 2 (i32.const 18) (i32.const -18) (i64.const 18))) + (br 0 (i32.const 20) (i32.const -20) (i64.const 20)) + ) + (i32.const 19) (i32.const -19) (i64.const 19) + ) + ) + (func (export "break-repeated") (result i32) + (block (result i32) + (loop (result i32) + (br 1 (i32.const 18)) + (br 1 (i32.const 19)) + (drop (br_if 1 (i32.const 20) (i32.const 0))) + (drop (br_if 1 (i32.const 20) (i32.const 1))) + (br 1 (i32.const 21)) + (br_table 1 (i32.const 22) (i32.const 0)) + (br_table 1 1 1 (i32.const 23) (i32.const 1)) + (i32.const 21) + ) + ) + ) + (func (export "break-inner") (result i32) + (local i32) + (local.set 0 (i32.const 0)) + (local.set 0 (i32.add (local.get 0) (block (result i32) (loop (result i32) (block (result i32) (br 2 (i32.const 0x1))))))) + (local.set 0 (i32.add (local.get 0) (block (result i32) (loop (result i32) (loop (result i32) (br 2 (i32.const 0x2))))))) + (local.set 0 (i32.add (local.get 0) (block (result i32) (loop (result i32) (block (result i32) (loop (result i32) (br 1 (i32.const 0x4)))))))) + (local.set 0 (i32.add (local.get 0) (block (result i32) (loop (result i32) (i32.ctz (br 1 (i32.const 0x8))))))) + (local.set 0 (i32.add (local.get 0) (block (result i32) (loop (result i32) (i32.ctz (loop (result i32) (br 2 (i32.const 0x10)))))))) + (local.get 0) + ) + (func (export "cont-inner") (result i32) + (local i32) + (local.set 0 (i32.const 0)) + (local.set 0 (i32.add (local.get 0) (loop (result i32) (loop (result i32) (br 1))))) + (local.set 0 (i32.add (local.get 0) (loop (result i32) (i32.ctz (br 0))))) + (local.set 0 (i32.add (local.get 0) (loop (result i32) (i32.ctz (loop (result i32) (br 1)))))) + (local.get 0) + ) + + (func (export "param") (result i32) + (i32.const 1) + (loop (param i32) (result i32) + (i32.const 2) + (i32.add) + ) + ) + (func (export "params") (result i32) + (i32.const 1) + (i32.const 2) + (loop (param i32 i32) (result i32) + (i32.add) + ) + ) + (func (export "params-id") (result i32) + (i32.const 1) + (i32.const 2) + (loop (param i32 i32) (result i32 i32)) + (i32.add) + ) + (func (export "param-break") (result i32) + (local $$x i32) + (i32.const 1) + (loop (param i32) (result i32) + (i32.const 4) + (i32.add) + (local.tee $$x) + (local.get $$x) + (i32.const 10) + (i32.lt_u) + (br_if 0) + ) + ) + (func (export "params-break") (result i32) + (local $$x i32) + (i32.const 1) + (i32.const 2) + (loop (param i32 i32) (result i32) + (i32.add) + (local.tee $$x) + (i32.const 3) + (local.get $$x) + (i32.const 10) + (i32.lt_u) + (br_if 0) + (drop) + ) + ) + (func (export "params-id-break") (result i32) + (local $$x i32) + (local.set $$x (i32.const 0)) + (i32.const 1) + (i32.const 2) + (loop (param i32 i32) (result i32 i32) + (local.set $$x (i32.add (local.get $$x) (i32.const 1))) + (br_if 0 (i32.lt_u (local.get $$x) (i32.const 10))) + ) + (i32.add) + ) + + (func $$fx (export "effects") (result i32) + (local i32) + (block + (loop + (local.set 0 (i32.const 1)) + (local.set 0 (i32.mul (local.get 0) (i32.const 3))) + (local.set 0 (i32.sub (local.get 0) (i32.const 5))) + (local.set 0 (i32.mul (local.get 0) (i32.const 7))) + (br 1) + (local.set 0 (i32.mul (local.get 0) (i32.const 100))) + ) + ) + (i32.eq (local.get 0) (i32.const -14)) + ) + + (func (export "while") (param i64) (result i64) + (local i64) + (local.set 1 (i64.const 1)) + (block + (loop + (br_if 1 (i64.eqz (local.get 0))) + (local.set 1 (i64.mul (local.get 0) (local.get 1))) + (local.set 0 (i64.sub (local.get 0) (i64.const 1))) + (br 0) + ) + ) + (local.get 1) + ) + + (func (export "for") (param i64) (result i64) + (local i64 i64) + (local.set 1 (i64.const 1)) + (local.set 2 (i64.const 2)) + (block + (loop + (br_if 1 (i64.gt_u (local.get 2) (local.get 0))) + (local.set 1 (i64.mul (local.get 1) (local.get 2))) + (local.set 2 (i64.add (local.get 2) (i64.const 1))) + (br 0) + ) + ) + (local.get 1) + ) + + (func (export "nesting") (param f32 f32) (result f32) + (local f32 f32) + (block + (loop + (br_if 1 (f32.eq (local.get 0) (f32.const 0))) + (local.set 2 (local.get 1)) + (block + (loop + (br_if 1 (f32.eq (local.get 2) (f32.const 0))) + (br_if 3 (f32.lt (local.get 2) (f32.const 0))) + (local.set 3 (f32.add (local.get 3) (local.get 2))) + (local.set 2 (f32.sub (local.get 2) (f32.const 2))) + (br 0) + ) + ) + (local.set 3 (f32.div (local.get 3) (local.get 0))) + (local.set 0 (f32.sub (local.get 0) (f32.const 1))) + (br 0) + ) + ) + (local.get 3) + ) + + (type $$block-sig-1 (func)) + (type $$block-sig-2 (func (result i32))) + (type $$block-sig-3 (func (param $$x i32))) + (type $$block-sig-4 (func (param i32 f64 i32) (result i32 f64 i32))) + + (func (export "type-use") + (loop (type $$block-sig-1)) + (loop (type $$block-sig-2) (i32.const 0)) + (loop (type $$block-sig-3) (drop)) + (i32.const 0) (f64.const 0) (i32.const 0) + (loop (type $$block-sig-4)) + (drop) (drop) (drop) + (loop (type $$block-sig-2) (result i32) (i32.const 0)) + (loop (type $$block-sig-3) (param i32) (drop)) + (i32.const 0) (f64.const 0) (i32.const 0) + (loop (type $$block-sig-4) + (param i32) (param f64 i32) (result i32 f64) (result i32) + ) + (drop) (drop) (drop) + ) +)`); + +// ./test/core/loop.wast:430 +assert_return(() => invoke($0, `empty`, []), []); + +// ./test/core/loop.wast:431 +assert_return(() => invoke($0, `singular`, []), [value("i32", 7)]); + +// ./test/core/loop.wast:432 +assert_return(() => invoke($0, `multi`, []), [value("i32", 8)]); + +// ./test/core/loop.wast:433 +assert_return(() => invoke($0, `nested`, []), [value("i32", 9)]); + +// ./test/core/loop.wast:434 +assert_return(() => invoke($0, `deep`, []), [value("i32", 150)]); + +// ./test/core/loop.wast:436 +assert_return(() => invoke($0, `as-select-first`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:437 +assert_return(() => invoke($0, `as-select-mid`, []), [value("i32", 2)]); + +// ./test/core/loop.wast:438 +assert_return(() => invoke($0, `as-select-last`, []), [value("i32", 2)]); + +// ./test/core/loop.wast:440 +assert_return(() => invoke($0, `as-if-condition`, []), []); + +// ./test/core/loop.wast:441 +assert_return(() => invoke($0, `as-if-then`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:442 +assert_return(() => invoke($0, `as-if-else`, []), [value("i32", 2)]); + +// ./test/core/loop.wast:444 +assert_return(() => invoke($0, `as-br_if-first`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:445 +assert_return(() => invoke($0, `as-br_if-last`, []), [value("i32", 2)]); + +// ./test/core/loop.wast:447 +assert_return(() => invoke($0, `as-br_table-first`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:448 +assert_return(() => invoke($0, `as-br_table-last`, []), [value("i32", 2)]); + +// ./test/core/loop.wast:450 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:451 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 2)]); + +// ./test/core/loop.wast:452 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:454 +assert_return(() => invoke($0, `as-store-first`, []), []); + +// ./test/core/loop.wast:455 +assert_return(() => invoke($0, `as-store-last`, []), []); + +// ./test/core/loop.wast:457 +assert_return(() => invoke($0, `as-memory.grow-value`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:458 +assert_return(() => invoke($0, `as-call-value`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:459 +assert_return(() => invoke($0, `as-return-value`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:460 +assert_return(() => invoke($0, `as-drop-operand`, []), []); + +// ./test/core/loop.wast:461 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:462 +assert_return(() => invoke($0, `as-local.set-value`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:463 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:464 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:465 +assert_return(() => invoke($0, `as-load-operand`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:467 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("i32", 0)]); + +// ./test/core/loop.wast:468 +assert_return(() => invoke($0, `as-binary-operand`, []), [value("i32", 12)]); + +// ./test/core/loop.wast:469 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/loop.wast:470 +assert_return(() => invoke($0, `as-compare-operand`, []), [value("i32", 0)]); + +// ./test/core/loop.wast:471 +assert_return(() => invoke($0, `as-binary-operands`, []), [value("i32", 12)]); + +// ./test/core/loop.wast:472 +assert_return(() => invoke($0, `as-compare-operands`, []), [value("i32", 0)]); + +// ./test/core/loop.wast:473 +assert_return(() => invoke($0, `as-mixed-operands`, []), [value("i32", 27)]); + +// ./test/core/loop.wast:475 +assert_return(() => invoke($0, `break-bare`, []), [value("i32", 19)]); + +// ./test/core/loop.wast:476 +assert_return(() => invoke($0, `break-value`, []), [value("i32", 18)]); + +// ./test/core/loop.wast:477 +assert_return( + () => invoke($0, `break-multi-value`, []), + [value("i32", 18), value("i32", -18), value("i64", 18n)], +); + +// ./test/core/loop.wast:480 +assert_return(() => invoke($0, `break-repeated`, []), [value("i32", 18)]); + +// ./test/core/loop.wast:481 +assert_return(() => invoke($0, `break-inner`, []), [value("i32", 31)]); + +// ./test/core/loop.wast:483 +assert_return(() => invoke($0, `param`, []), [value("i32", 3)]); + +// ./test/core/loop.wast:484 +assert_return(() => invoke($0, `params`, []), [value("i32", 3)]); + +// ./test/core/loop.wast:485 +assert_return(() => invoke($0, `params-id`, []), [value("i32", 3)]); + +// ./test/core/loop.wast:486 +assert_return(() => invoke($0, `param-break`, []), [value("i32", 13)]); + +// ./test/core/loop.wast:487 +assert_return(() => invoke($0, `params-break`, []), [value("i32", 12)]); + +// ./test/core/loop.wast:488 +assert_return(() => invoke($0, `params-id-break`, []), [value("i32", 3)]); + +// ./test/core/loop.wast:490 +assert_return(() => invoke($0, `effects`, []), [value("i32", 1)]); + +// ./test/core/loop.wast:492 +assert_return(() => invoke($0, `while`, [0n]), [value("i64", 1n)]); + +// ./test/core/loop.wast:493 +assert_return(() => invoke($0, `while`, [1n]), [value("i64", 1n)]); + +// ./test/core/loop.wast:494 +assert_return(() => invoke($0, `while`, [2n]), [value("i64", 2n)]); + +// ./test/core/loop.wast:495 +assert_return(() => invoke($0, `while`, [3n]), [value("i64", 6n)]); + +// ./test/core/loop.wast:496 +assert_return(() => invoke($0, `while`, [5n]), [value("i64", 120n)]); + +// ./test/core/loop.wast:497 +assert_return(() => invoke($0, `while`, [20n]), [value("i64", 2432902008176640000n)]); + +// ./test/core/loop.wast:499 +assert_return(() => invoke($0, `for`, [0n]), [value("i64", 1n)]); + +// ./test/core/loop.wast:500 +assert_return(() => invoke($0, `for`, [1n]), [value("i64", 1n)]); + +// ./test/core/loop.wast:501 +assert_return(() => invoke($0, `for`, [2n]), [value("i64", 2n)]); + +// ./test/core/loop.wast:502 +assert_return(() => invoke($0, `for`, [3n]), [value("i64", 6n)]); + +// ./test/core/loop.wast:503 +assert_return(() => invoke($0, `for`, [5n]), [value("i64", 120n)]); + +// ./test/core/loop.wast:504 +assert_return(() => invoke($0, `for`, [20n]), [value("i64", 2432902008176640000n)]); + +// ./test/core/loop.wast:506 +assert_return(() => invoke($0, `nesting`, [value("f32", 0), value("f32", 7)]), [value("f32", 0)]); + +// ./test/core/loop.wast:507 +assert_return(() => invoke($0, `nesting`, [value("f32", 7), value("f32", 0)]), [value("f32", 0)]); + +// ./test/core/loop.wast:508 +assert_return(() => invoke($0, `nesting`, [value("f32", 1), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/loop.wast:509 +assert_return(() => invoke($0, `nesting`, [value("f32", 1), value("f32", 2)]), [value("f32", 2)]); + +// ./test/core/loop.wast:510 +assert_return(() => invoke($0, `nesting`, [value("f32", 1), value("f32", 3)]), [value("f32", 4)]); + +// ./test/core/loop.wast:511 +assert_return(() => invoke($0, `nesting`, [value("f32", 1), value("f32", 4)]), [value("f32", 6)]); + +// ./test/core/loop.wast:512 +assert_return(() => invoke($0, `nesting`, [value("f32", 1), value("f32", 100)]), [value("f32", 2550)]); + +// ./test/core/loop.wast:513 +assert_return(() => invoke($0, `nesting`, [value("f32", 1), value("f32", 101)]), [value("f32", 2601)]); + +// ./test/core/loop.wast:514 +assert_return(() => invoke($0, `nesting`, [value("f32", 2), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/loop.wast:515 +assert_return(() => invoke($0, `nesting`, [value("f32", 3), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/loop.wast:516 +assert_return(() => invoke($0, `nesting`, [value("f32", 10), value("f32", 1)]), [value("f32", 1)]); + +// ./test/core/loop.wast:517 +assert_return(() => invoke($0, `nesting`, [value("f32", 2), value("f32", 2)]), [value("f32", 3)]); + +// ./test/core/loop.wast:518 +assert_return(() => invoke($0, `nesting`, [value("f32", 2), value("f32", 3)]), [value("f32", 4)]); + +// ./test/core/loop.wast:519 +assert_return( + () => invoke($0, `nesting`, [value("f32", 7), value("f32", 4)]), + [value("f32", 10.309524)], +); + +// ./test/core/loop.wast:520 +assert_return( + () => invoke($0, `nesting`, [value("f32", 7), value("f32", 100)]), + [value("f32", 4381.548)], +); + +// ./test/core/loop.wast:521 +assert_return(() => invoke($0, `nesting`, [value("f32", 7), value("f32", 101)]), [value("f32", 2601)]); + +// ./test/core/loop.wast:523 +assert_return(() => invoke($0, `type-use`, []), []); + +// ./test/core/loop.wast:525 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (loop (type $$sig) (result i32) (param i32))) `), + `unexpected token`, +); + +// ./test/core/loop.wast:532 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (loop (param i32) (type $$sig) (result i32))) `), + `unexpected token`, +); + +// ./test/core/loop.wast:539 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (loop (param i32) (result i32) (type $$sig))) `), + `unexpected token`, +); + +// ./test/core/loop.wast:546 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (loop (result i32) (type $$sig) (param i32))) `), + `unexpected token`, +); + +// ./test/core/loop.wast:553 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (loop (result i32) (param i32) (type $$sig))) `), + `unexpected token`, +); + +// ./test/core/loop.wast:560 +assert_malformed( + () => instantiate(`(func (i32.const 0) (loop (result i32) (param i32))) `), + `unexpected token`, +); + +// ./test/core/loop.wast:567 +assert_malformed( + () => instantiate(`(func (i32.const 0) (loop (param $$x i32) (drop))) `), + `unexpected token`, +); + +// ./test/core/loop.wast:571 +assert_malformed( + () => instantiate(`(type $$sig (func)) (func (loop (type $$sig) (result i32) (i32.const 0)) (unreachable)) `), + `inline function type`, +); + +// ./test/core/loop.wast:578 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (loop (type $$sig) (result i32) (i32.const 0)) (unreachable)) `), + `inline function type`, +); + +// ./test/core/loop.wast:585 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (func (i32.const 0) (loop (type $$sig) (param i32) (drop)) (unreachable)) `), + `inline function type`, +); + +// ./test/core/loop.wast:592 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (func (i32.const 0) (loop (type $$sig) (param i32) (result i32)) (unreachable)) `), + `inline function type`, +); + +// ./test/core/loop.wast:600 +assert_invalid( + () => instantiate(`(module + (type $$sig (func)) + (func (loop (type $$sig) (i32.const 0))) + )`), + `type mismatch`, +); + +// ./test/core/loop.wast:608 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i32 (result i32) (loop)))`), + `type mismatch`, +); + +// ./test/core/loop.wast:612 +assert_invalid( + () => instantiate(`(module (func $$type-empty-i64 (result i64) (loop)))`), + `type mismatch`, +); + +// ./test/core/loop.wast:616 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f32 (result f32) (loop)))`), + `type mismatch`, +); + +// ./test/core/loop.wast:620 +assert_invalid( + () => instantiate(`(module (func $$type-empty-f64 (result f64) (loop)))`), + `type mismatch`, +); + +// ./test/core/loop.wast:625 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-void + (loop (i32.const 1)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:631 +assert_invalid( + () => instantiate(`(module (func $$type-value-nums-vs-void + (loop (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:637 +assert_invalid( + () => instantiate(`(module (func $$type-value-empty-vs-num (result i32) + (loop (result i32)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:643 +assert_invalid( + () => instantiate(`(module (func $$type-value-empty-vs-nums (result i32 i32) + (loop (result i32 i32)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:649 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-num (result i32) + (loop (result i32) (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:655 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-nums (result i32 i32) + (loop (result i32 i32) (nop)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:661 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-num (result i32) + (loop (result i32) (f32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:667 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-nums (result i32 i32) + (loop (result i32 i32) (i32.const 0)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:673 +assert_invalid( + () => instantiate(`(module (func $$type-value-partial-vs-nums (result i32 i32) + (i32.const 1) (loop (result i32 i32) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:679 +assert_invalid( + () => instantiate(`(module (func $$type-value-nums-vs-num (result i32) + (loop (result i32) (i32.const 1) (i32.const 2)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:685 +assert_invalid( + () => instantiate(`(module (func $$type-value-unreached-select (result i32) + (loop (result i64) (select (unreachable) (unreachable) (unreachable))) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:692 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-in-block + (i32.const 0) + (block (loop (result i32)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/loop.wast:701 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-in-loop + (i32.const 0) + (loop (loop (result i32)) (drop)) + ) + )`), + `type mismatch`, +); + +// ./test/core/loop.wast:710 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (loop (result i32)) (drop))) + ) + )`), + `type mismatch`, +); + +// ./test/core/loop.wast:720 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-num + (loop (param i32) (drop)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:726 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (loop (param i32 f64) (drop) (drop)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:732 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (f32.const 0) (loop (param i32) (drop)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:738 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (f32.const 0) (loop (param f32 i32) (drop) (drop)) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:744 +assert_invalid( + () => instantiate(`(module (func $$type-param-nested-void-vs-num + (block (loop (param i32) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:750 +assert_invalid( + () => instantiate(`(module (func $$type-param-void-vs-nums + (block (loop (param i32 f64) (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:756 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-num + (block (f32.const 0) (loop (param i32) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:762 +assert_invalid( + () => instantiate(`(module (func $$type-param-num-vs-nums + (block (f32.const 0) (loop (param f32 i32) (drop) (drop))) + ))`), + `type mismatch`, +); + +// ./test/core/loop.wast:769 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) loop (param $$x i32) end) `), + `unexpected token`, +); + +// ./test/core/loop.wast:773 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (loop (param $$x i32))) `), + `unexpected token`, +); + +// ./test/core/loop.wast:778 +assert_malformed(() => instantiate(`(func loop end $$l) `), `mismatching label`); + +// ./test/core/loop.wast:782 +assert_malformed(() => instantiate(`(func loop $$a end $$l) `), `mismatching label`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/memory.wast.js b/js/src/jit-test/tests/wasm/spec/spec/memory.wast.js new file mode 100644 index 0000000000..831bb26d69 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/memory.wast.js @@ -0,0 +1,399 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory.wast + +// ./test/core/memory.wast:3 +let $0 = instantiate(`(module (memory 0))`); + +// ./test/core/memory.wast:4 +let $1 = instantiate(`(module (memory 1))`); + +// ./test/core/memory.wast:5 +let $2 = instantiate(`(module (memory 0 0))`); + +// ./test/core/memory.wast:6 +let $3 = instantiate(`(module (memory 0 1))`); + +// ./test/core/memory.wast:7 +let $4 = instantiate(`(module (memory 1 256))`); + +// ./test/core/memory.wast:8 +let $5 = instantiate(`(module (memory 0 65536))`); + +// ./test/core/memory.wast:10 +assert_invalid(() => instantiate(`(module (memory 0) (memory 0))`), `multiple memories`); + +// ./test/core/memory.wast:11 +assert_invalid( + () => instantiate(`(module (memory (import "spectest" "memory") 0) (memory 0))`), + `multiple memories`, +); + +// ./test/core/memory.wast:13 +let $6 = instantiate(`(module (memory (data)) (func (export "memsize") (result i32) (memory.size)))`); + +// ./test/core/memory.wast:14 +assert_return(() => invoke($6, `memsize`, []), [value("i32", 0)]); + +// ./test/core/memory.wast:15 +let $7 = instantiate(`(module (memory (data "")) (func (export "memsize") (result i32) (memory.size)))`); + +// ./test/core/memory.wast:16 +assert_return(() => invoke($7, `memsize`, []), [value("i32", 0)]); + +// ./test/core/memory.wast:17 +let $8 = instantiate(`(module (memory (data "x")) (func (export "memsize") (result i32) (memory.size)))`); + +// ./test/core/memory.wast:18 +assert_return(() => invoke($8, `memsize`, []), [value("i32", 1)]); + +// ./test/core/memory.wast:20 +assert_invalid(() => instantiate(`(module (data (i32.const 0)))`), `unknown memory`); + +// ./test/core/memory.wast:21 +assert_invalid(() => instantiate(`(module (data (i32.const 0) ""))`), `unknown memory`); + +// ./test/core/memory.wast:22 +assert_invalid(() => instantiate(`(module (data (i32.const 0) "x"))`), `unknown memory`); + +// ./test/core/memory.wast:24 +assert_invalid( + () => instantiate(`(module (func (drop (f32.load (i32.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:28 +assert_invalid( + () => instantiate(`(module (func (f32.store (i32.const 0) (f32.const 0))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:32 +assert_invalid( + () => instantiate(`(module (func (drop (i32.load8_s (i32.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:36 +assert_invalid( + () => instantiate(`(module (func (i32.store8 (i32.const 0) (i32.const 0))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:40 +assert_invalid( + () => instantiate(`(module (func (drop (memory.size))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:44 +assert_invalid( + () => instantiate(`(module (func (drop (memory.grow (i32.const 0)))))`), + `unknown memory`, +); + +// ./test/core/memory.wast:50 +assert_invalid( + () => instantiate(`(module (memory 1 0))`), + `size minimum must not be greater than maximum`, +); + +// ./test/core/memory.wast:54 +assert_invalid( + () => instantiate(`(module (memory 65537))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:58 +assert_invalid( + () => instantiate(`(module (memory 2147483648))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:62 +assert_invalid( + () => instantiate(`(module (memory 4294967295))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:66 +assert_invalid( + () => instantiate(`(module (memory 0 65537))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:70 +assert_invalid( + () => instantiate(`(module (memory 0 2147483648))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:74 +assert_invalid( + () => instantiate(`(module (memory 0 4294967295))`), + `memory size must be at most 65536 pages (4GiB)`, +); + +// ./test/core/memory.wast:79 +assert_malformed( + () => instantiate(`(memory 0x1_0000_0000) `), + `i32 constant out of range`, +); + +// ./test/core/memory.wast:83 +assert_malformed( + () => instantiate(`(memory 0x1_0000_0000 0x1_0000_0000) `), + `i32 constant out of range`, +); + +// ./test/core/memory.wast:87 +assert_malformed( + () => instantiate(`(memory 0 0x1_0000_0000) `), + `i32 constant out of range`, +); + +// ./test/core/memory.wast:92 +let $9 = instantiate(`(module + (memory 1) + (data (i32.const 0) "ABC\\a7D") (data (i32.const 20) "WASM") + + ;; Data section + (func (export "data") (result i32) + (i32.and + (i32.and + (i32.and + (i32.eq (i32.load8_u (i32.const 0)) (i32.const 65)) + (i32.eq (i32.load8_u (i32.const 3)) (i32.const 167)) + ) + (i32.and + (i32.eq (i32.load8_u (i32.const 6)) (i32.const 0)) + (i32.eq (i32.load8_u (i32.const 19)) (i32.const 0)) + ) + ) + (i32.and + (i32.and + (i32.eq (i32.load8_u (i32.const 20)) (i32.const 87)) + (i32.eq (i32.load8_u (i32.const 23)) (i32.const 77)) + ) + (i32.and + (i32.eq (i32.load8_u (i32.const 24)) (i32.const 0)) + (i32.eq (i32.load8_u (i32.const 1023)) (i32.const 0)) + ) + ) + ) + ) + + ;; Memory cast + (func (export "cast") (result f64) + (i64.store (i32.const 8) (i64.const -12345)) + (if + (f64.eq + (f64.load (i32.const 8)) + (f64.reinterpret_i64 (i64.const -12345)) + ) + (then (return (f64.const 0))) + ) + (i64.store align=1 (i32.const 9) (i64.const 0)) + (i32.store16 align=1 (i32.const 15) (i32.const 16453)) + (f64.load align=1 (i32.const 9)) + ) + + ;; Sign and zero extending memory loads + (func (export "i32_load8_s") (param $$i i32) (result i32) + (i32.store8 (i32.const 8) (local.get $$i)) + (i32.load8_s (i32.const 8)) + ) + (func (export "i32_load8_u") (param $$i i32) (result i32) + (i32.store8 (i32.const 8) (local.get $$i)) + (i32.load8_u (i32.const 8)) + ) + (func (export "i32_load16_s") (param $$i i32) (result i32) + (i32.store16 (i32.const 8) (local.get $$i)) + (i32.load16_s (i32.const 8)) + ) + (func (export "i32_load16_u") (param $$i i32) (result i32) + (i32.store16 (i32.const 8) (local.get $$i)) + (i32.load16_u (i32.const 8)) + ) + (func (export "i64_load8_s") (param $$i i64) (result i64) + (i64.store8 (i32.const 8) (local.get $$i)) + (i64.load8_s (i32.const 8)) + ) + (func (export "i64_load8_u") (param $$i i64) (result i64) + (i64.store8 (i32.const 8) (local.get $$i)) + (i64.load8_u (i32.const 8)) + ) + (func (export "i64_load16_s") (param $$i i64) (result i64) + (i64.store16 (i32.const 8) (local.get $$i)) + (i64.load16_s (i32.const 8)) + ) + (func (export "i64_load16_u") (param $$i i64) (result i64) + (i64.store16 (i32.const 8) (local.get $$i)) + (i64.load16_u (i32.const 8)) + ) + (func (export "i64_load32_s") (param $$i i64) (result i64) + (i64.store32 (i32.const 8) (local.get $$i)) + (i64.load32_s (i32.const 8)) + ) + (func (export "i64_load32_u") (param $$i i64) (result i64) + (i64.store32 (i32.const 8) (local.get $$i)) + (i64.load32_u (i32.const 8)) + ) +)`); + +// ./test/core/memory.wast:180 +assert_return(() => invoke($9, `data`, []), [value("i32", 1)]); + +// ./test/core/memory.wast:181 +assert_return(() => invoke($9, `cast`, []), [value("f64", 42)]); + +// ./test/core/memory.wast:183 +assert_return(() => invoke($9, `i32_load8_s`, [-1]), [value("i32", -1)]); + +// ./test/core/memory.wast:184 +assert_return(() => invoke($9, `i32_load8_u`, [-1]), [value("i32", 255)]); + +// ./test/core/memory.wast:185 +assert_return(() => invoke($9, `i32_load16_s`, [-1]), [value("i32", -1)]); + +// ./test/core/memory.wast:186 +assert_return(() => invoke($9, `i32_load16_u`, [-1]), [value("i32", 65535)]); + +// ./test/core/memory.wast:188 +assert_return(() => invoke($9, `i32_load8_s`, [100]), [value("i32", 100)]); + +// ./test/core/memory.wast:189 +assert_return(() => invoke($9, `i32_load8_u`, [200]), [value("i32", 200)]); + +// ./test/core/memory.wast:190 +assert_return(() => invoke($9, `i32_load16_s`, [20000]), [value("i32", 20000)]); + +// ./test/core/memory.wast:191 +assert_return(() => invoke($9, `i32_load16_u`, [40000]), [value("i32", 40000)]); + +// ./test/core/memory.wast:193 +assert_return(() => invoke($9, `i32_load8_s`, [-19110589]), [value("i32", 67)]); + +// ./test/core/memory.wast:194 +assert_return(() => invoke($9, `i32_load8_s`, [878104047]), [value("i32", -17)]); + +// ./test/core/memory.wast:195 +assert_return(() => invoke($9, `i32_load8_u`, [-19110589]), [value("i32", 67)]); + +// ./test/core/memory.wast:196 +assert_return(() => invoke($9, `i32_load8_u`, [878104047]), [value("i32", 239)]); + +// ./test/core/memory.wast:197 +assert_return(() => invoke($9, `i32_load16_s`, [-19110589]), [value("i32", 25923)]); + +// ./test/core/memory.wast:198 +assert_return(() => invoke($9, `i32_load16_s`, [878104047]), [value("i32", -12817)]); + +// ./test/core/memory.wast:199 +assert_return(() => invoke($9, `i32_load16_u`, [-19110589]), [value("i32", 25923)]); + +// ./test/core/memory.wast:200 +assert_return(() => invoke($9, `i32_load16_u`, [878104047]), [value("i32", 52719)]); + +// ./test/core/memory.wast:202 +assert_return(() => invoke($9, `i64_load8_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory.wast:203 +assert_return(() => invoke($9, `i64_load8_u`, [-1n]), [value("i64", 255n)]); + +// ./test/core/memory.wast:204 +assert_return(() => invoke($9, `i64_load16_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory.wast:205 +assert_return(() => invoke($9, `i64_load16_u`, [-1n]), [value("i64", 65535n)]); + +// ./test/core/memory.wast:206 +assert_return(() => invoke($9, `i64_load32_s`, [-1n]), [value("i64", -1n)]); + +// ./test/core/memory.wast:207 +assert_return(() => invoke($9, `i64_load32_u`, [-1n]), [value("i64", 4294967295n)]); + +// ./test/core/memory.wast:209 +assert_return(() => invoke($9, `i64_load8_s`, [100n]), [value("i64", 100n)]); + +// ./test/core/memory.wast:210 +assert_return(() => invoke($9, `i64_load8_u`, [200n]), [value("i64", 200n)]); + +// ./test/core/memory.wast:211 +assert_return(() => invoke($9, `i64_load16_s`, [20000n]), [value("i64", 20000n)]); + +// ./test/core/memory.wast:212 +assert_return(() => invoke($9, `i64_load16_u`, [40000n]), [value("i64", 40000n)]); + +// ./test/core/memory.wast:213 +assert_return(() => invoke($9, `i64_load32_s`, [20000n]), [value("i64", 20000n)]); + +// ./test/core/memory.wast:214 +assert_return(() => invoke($9, `i64_load32_u`, [40000n]), [value("i64", 40000n)]); + +// ./test/core/memory.wast:216 +assert_return(() => invoke($9, `i64_load8_s`, [-81985529755441853n]), [value("i64", 67n)]); + +// ./test/core/memory.wast:217 +assert_return(() => invoke($9, `i64_load8_s`, [3771275841602506223n]), [value("i64", -17n)]); + +// ./test/core/memory.wast:218 +assert_return(() => invoke($9, `i64_load8_u`, [-81985529755441853n]), [value("i64", 67n)]); + +// ./test/core/memory.wast:219 +assert_return(() => invoke($9, `i64_load8_u`, [3771275841602506223n]), [value("i64", 239n)]); + +// ./test/core/memory.wast:220 +assert_return(() => invoke($9, `i64_load16_s`, [-81985529755441853n]), [value("i64", 25923n)]); + +// ./test/core/memory.wast:221 +assert_return(() => invoke($9, `i64_load16_s`, [3771275841602506223n]), [value("i64", -12817n)]); + +// ./test/core/memory.wast:222 +assert_return(() => invoke($9, `i64_load16_u`, [-81985529755441853n]), [value("i64", 25923n)]); + +// ./test/core/memory.wast:223 +assert_return(() => invoke($9, `i64_load16_u`, [3771275841602506223n]), [value("i64", 52719n)]); + +// ./test/core/memory.wast:224 +assert_return(() => invoke($9, `i64_load32_s`, [-81985529755441853n]), [value("i64", 1446274371n)]); + +// ./test/core/memory.wast:225 +assert_return(() => invoke($9, `i64_load32_s`, [3771275841602506223n]), [value("i64", -1732588049n)]); + +// ./test/core/memory.wast:226 +assert_return(() => invoke($9, `i64_load32_u`, [-81985529755441853n]), [value("i64", 1446274371n)]); + +// ./test/core/memory.wast:227 +assert_return(() => invoke($9, `i64_load32_u`, [3771275841602506223n]), [value("i64", 2562379247n)]); + +// ./test/core/memory.wast:231 +assert_malformed( + () => instantiate(`(memory $$foo 1) (memory $$foo 1) `), + `duplicate memory`, +); + +// ./test/core/memory.wast:235 +assert_malformed( + () => instantiate(`(import "" "" (memory $$foo 1)) (memory $$foo 1) `), + `duplicate memory`, +); + +// ./test/core/memory.wast:239 +assert_malformed( + () => instantiate(`(import "" "" (memory $$foo 1)) (import "" "" (memory $$foo 1)) `), + `duplicate memory`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/memory_copy.wast.js b/js/src/jit-test/tests/wasm/spec/spec/memory_copy.wast.js new file mode 100644 index 0000000000..dbd81aacd7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/memory_copy.wast.js @@ -0,0 +1,14165 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_copy.wast + +// ./test/core/memory_copy.wast:6 +let $0 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (func (export "test") + (nop)) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:15 +invoke($0, `test`, []); + +// ./test/core/memory_copy.wast:17 +assert_return(() => invoke($0, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:18 +assert_return(() => invoke($0, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:19 +assert_return(() => invoke($0, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:20 +assert_return(() => invoke($0, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:21 +assert_return(() => invoke($0, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:22 +assert_return(() => invoke($0, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:23 +assert_return(() => invoke($0, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:24 +assert_return(() => invoke($0, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:25 +assert_return(() => invoke($0, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:26 +assert_return(() => invoke($0, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:27 +assert_return(() => invoke($0, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:28 +assert_return(() => invoke($0, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:29 +assert_return(() => invoke($0, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:30 +assert_return(() => invoke($0, `load8_u`, [13]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:31 +assert_return(() => invoke($0, `load8_u`, [14]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:32 +assert_return(() => invoke($0, `load8_u`, [15]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:33 +assert_return(() => invoke($0, `load8_u`, [16]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:34 +assert_return(() => invoke($0, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:35 +assert_return(() => invoke($0, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:36 +assert_return(() => invoke($0, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:37 +assert_return(() => invoke($0, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:38 +assert_return(() => invoke($0, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:39 +assert_return(() => invoke($0, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:40 +assert_return(() => invoke($0, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:41 +assert_return(() => invoke($0, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:42 +assert_return(() => invoke($0, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:43 +assert_return(() => invoke($0, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:44 +assert_return(() => invoke($0, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:45 +assert_return(() => invoke($0, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:46 +assert_return(() => invoke($0, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:48 +let $1 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (func (export "test") + (memory.copy (i32.const 13) (i32.const 2) (i32.const 3))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:57 +invoke($1, `test`, []); + +// ./test/core/memory_copy.wast:59 +assert_return(() => invoke($1, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:60 +assert_return(() => invoke($1, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:61 +assert_return(() => invoke($1, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:62 +assert_return(() => invoke($1, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:63 +assert_return(() => invoke($1, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:64 +assert_return(() => invoke($1, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:65 +assert_return(() => invoke($1, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:66 +assert_return(() => invoke($1, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:67 +assert_return(() => invoke($1, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:68 +assert_return(() => invoke($1, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:69 +assert_return(() => invoke($1, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:70 +assert_return(() => invoke($1, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:71 +assert_return(() => invoke($1, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:72 +assert_return(() => invoke($1, `load8_u`, [13]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:73 +assert_return(() => invoke($1, `load8_u`, [14]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:74 +assert_return(() => invoke($1, `load8_u`, [15]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:75 +assert_return(() => invoke($1, `load8_u`, [16]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:76 +assert_return(() => invoke($1, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:77 +assert_return(() => invoke($1, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:78 +assert_return(() => invoke($1, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:79 +assert_return(() => invoke($1, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:80 +assert_return(() => invoke($1, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:81 +assert_return(() => invoke($1, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:82 +assert_return(() => invoke($1, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:83 +assert_return(() => invoke($1, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:84 +assert_return(() => invoke($1, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:85 +assert_return(() => invoke($1, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:86 +assert_return(() => invoke($1, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:87 +assert_return(() => invoke($1, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:88 +assert_return(() => invoke($1, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:90 +let $2 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (func (export "test") + (memory.copy (i32.const 25) (i32.const 15) (i32.const 2))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:99 +invoke($2, `test`, []); + +// ./test/core/memory_copy.wast:101 +assert_return(() => invoke($2, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:102 +assert_return(() => invoke($2, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:103 +assert_return(() => invoke($2, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:104 +assert_return(() => invoke($2, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:105 +assert_return(() => invoke($2, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:106 +assert_return(() => invoke($2, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:107 +assert_return(() => invoke($2, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:108 +assert_return(() => invoke($2, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:109 +assert_return(() => invoke($2, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:110 +assert_return(() => invoke($2, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:111 +assert_return(() => invoke($2, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:112 +assert_return(() => invoke($2, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:113 +assert_return(() => invoke($2, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:114 +assert_return(() => invoke($2, `load8_u`, [13]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:115 +assert_return(() => invoke($2, `load8_u`, [14]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:116 +assert_return(() => invoke($2, `load8_u`, [15]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:117 +assert_return(() => invoke($2, `load8_u`, [16]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:118 +assert_return(() => invoke($2, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:119 +assert_return(() => invoke($2, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:120 +assert_return(() => invoke($2, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:121 +assert_return(() => invoke($2, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:122 +assert_return(() => invoke($2, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:123 +assert_return(() => invoke($2, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:124 +assert_return(() => invoke($2, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:125 +assert_return(() => invoke($2, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:126 +assert_return(() => invoke($2, `load8_u`, [25]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:127 +assert_return(() => invoke($2, `load8_u`, [26]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:128 +assert_return(() => invoke($2, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:129 +assert_return(() => invoke($2, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:130 +assert_return(() => invoke($2, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:132 +let $3 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (func (export "test") + (memory.copy (i32.const 13) (i32.const 25) (i32.const 3))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:141 +invoke($3, `test`, []); + +// ./test/core/memory_copy.wast:143 +assert_return(() => invoke($3, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:144 +assert_return(() => invoke($3, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:145 +assert_return(() => invoke($3, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:146 +assert_return(() => invoke($3, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:147 +assert_return(() => invoke($3, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:148 +assert_return(() => invoke($3, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:149 +assert_return(() => invoke($3, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:150 +assert_return(() => invoke($3, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:151 +assert_return(() => invoke($3, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:152 +assert_return(() => invoke($3, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:153 +assert_return(() => invoke($3, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:154 +assert_return(() => invoke($3, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:155 +assert_return(() => invoke($3, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:156 +assert_return(() => invoke($3, `load8_u`, [13]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:157 +assert_return(() => invoke($3, `load8_u`, [14]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:158 +assert_return(() => invoke($3, `load8_u`, [15]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:159 +assert_return(() => invoke($3, `load8_u`, [16]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:160 +assert_return(() => invoke($3, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:161 +assert_return(() => invoke($3, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:162 +assert_return(() => invoke($3, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:163 +assert_return(() => invoke($3, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:164 +assert_return(() => invoke($3, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:165 +assert_return(() => invoke($3, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:166 +assert_return(() => invoke($3, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:167 +assert_return(() => invoke($3, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:168 +assert_return(() => invoke($3, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:169 +assert_return(() => invoke($3, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:170 +assert_return(() => invoke($3, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:171 +assert_return(() => invoke($3, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:172 +assert_return(() => invoke($3, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:174 +let $4 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (func (export "test") + (memory.copy (i32.const 20) (i32.const 22) (i32.const 4))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:183 +invoke($4, `test`, []); + +// ./test/core/memory_copy.wast:185 +assert_return(() => invoke($4, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:186 +assert_return(() => invoke($4, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:187 +assert_return(() => invoke($4, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:188 +assert_return(() => invoke($4, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:189 +assert_return(() => invoke($4, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:190 +assert_return(() => invoke($4, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:191 +assert_return(() => invoke($4, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:192 +assert_return(() => invoke($4, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:193 +assert_return(() => invoke($4, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:194 +assert_return(() => invoke($4, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:195 +assert_return(() => invoke($4, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:196 +assert_return(() => invoke($4, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:197 +assert_return(() => invoke($4, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:198 +assert_return(() => invoke($4, `load8_u`, [13]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:199 +assert_return(() => invoke($4, `load8_u`, [14]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:200 +assert_return(() => invoke($4, `load8_u`, [15]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:201 +assert_return(() => invoke($4, `load8_u`, [16]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:202 +assert_return(() => invoke($4, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:203 +assert_return(() => invoke($4, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:204 +assert_return(() => invoke($4, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:205 +assert_return(() => invoke($4, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:206 +assert_return(() => invoke($4, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:207 +assert_return(() => invoke($4, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:208 +assert_return(() => invoke($4, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:209 +assert_return(() => invoke($4, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:210 +assert_return(() => invoke($4, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:211 +assert_return(() => invoke($4, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:212 +assert_return(() => invoke($4, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:213 +assert_return(() => invoke($4, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:214 +assert_return(() => invoke($4, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:216 +let $5 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (func (export "test") + (memory.copy (i32.const 25) (i32.const 1) (i32.const 3))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:225 +invoke($5, `test`, []); + +// ./test/core/memory_copy.wast:227 +assert_return(() => invoke($5, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:228 +assert_return(() => invoke($5, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:229 +assert_return(() => invoke($5, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:230 +assert_return(() => invoke($5, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:231 +assert_return(() => invoke($5, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:232 +assert_return(() => invoke($5, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:233 +assert_return(() => invoke($5, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:234 +assert_return(() => invoke($5, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:235 +assert_return(() => invoke($5, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:236 +assert_return(() => invoke($5, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:237 +assert_return(() => invoke($5, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:238 +assert_return(() => invoke($5, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:239 +assert_return(() => invoke($5, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:240 +assert_return(() => invoke($5, `load8_u`, [13]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:241 +assert_return(() => invoke($5, `load8_u`, [14]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:242 +assert_return(() => invoke($5, `load8_u`, [15]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:243 +assert_return(() => invoke($5, `load8_u`, [16]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:244 +assert_return(() => invoke($5, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:245 +assert_return(() => invoke($5, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:246 +assert_return(() => invoke($5, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:247 +assert_return(() => invoke($5, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:248 +assert_return(() => invoke($5, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:249 +assert_return(() => invoke($5, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:250 +assert_return(() => invoke($5, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:251 +assert_return(() => invoke($5, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:252 +assert_return(() => invoke($5, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:253 +assert_return(() => invoke($5, `load8_u`, [26]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:254 +assert_return(() => invoke($5, `load8_u`, [27]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:255 +assert_return(() => invoke($5, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:256 +assert_return(() => invoke($5, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:258 +let $6 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (func (export "test") + (memory.copy (i32.const 10) (i32.const 12) (i32.const 7))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:267 +invoke($6, `test`, []); + +// ./test/core/memory_copy.wast:269 +assert_return(() => invoke($6, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:270 +assert_return(() => invoke($6, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:271 +assert_return(() => invoke($6, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:272 +assert_return(() => invoke($6, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:273 +assert_return(() => invoke($6, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:274 +assert_return(() => invoke($6, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:275 +assert_return(() => invoke($6, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:276 +assert_return(() => invoke($6, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:277 +assert_return(() => invoke($6, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:278 +assert_return(() => invoke($6, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:279 +assert_return(() => invoke($6, `load8_u`, [10]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:280 +assert_return(() => invoke($6, `load8_u`, [11]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:281 +assert_return(() => invoke($6, `load8_u`, [12]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:282 +assert_return(() => invoke($6, `load8_u`, [13]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:283 +assert_return(() => invoke($6, `load8_u`, [14]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:284 +assert_return(() => invoke($6, `load8_u`, [15]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:285 +assert_return(() => invoke($6, `load8_u`, [16]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:286 +assert_return(() => invoke($6, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:287 +assert_return(() => invoke($6, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:288 +assert_return(() => invoke($6, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:289 +assert_return(() => invoke($6, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:290 +assert_return(() => invoke($6, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:291 +assert_return(() => invoke($6, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:292 +assert_return(() => invoke($6, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:293 +assert_return(() => invoke($6, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:294 +assert_return(() => invoke($6, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:295 +assert_return(() => invoke($6, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:296 +assert_return(() => invoke($6, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:297 +assert_return(() => invoke($6, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:298 +assert_return(() => invoke($6, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:300 +let $7 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (func (export "test") + (memory.copy (i32.const 12) (i32.const 10) (i32.const 7))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:309 +invoke($7, `test`, []); + +// ./test/core/memory_copy.wast:311 +assert_return(() => invoke($7, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:312 +assert_return(() => invoke($7, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:313 +assert_return(() => invoke($7, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:314 +assert_return(() => invoke($7, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:315 +assert_return(() => invoke($7, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:316 +assert_return(() => invoke($7, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:317 +assert_return(() => invoke($7, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:318 +assert_return(() => invoke($7, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:319 +assert_return(() => invoke($7, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:320 +assert_return(() => invoke($7, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:321 +assert_return(() => invoke($7, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:322 +assert_return(() => invoke($7, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:323 +assert_return(() => invoke($7, `load8_u`, [12]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:324 +assert_return(() => invoke($7, `load8_u`, [13]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:325 +assert_return(() => invoke($7, `load8_u`, [14]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:326 +assert_return(() => invoke($7, `load8_u`, [15]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:327 +assert_return(() => invoke($7, `load8_u`, [16]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:328 +assert_return(() => invoke($7, `load8_u`, [17]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:329 +assert_return(() => invoke($7, `load8_u`, [18]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:330 +assert_return(() => invoke($7, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:331 +assert_return(() => invoke($7, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:332 +assert_return(() => invoke($7, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:333 +assert_return(() => invoke($7, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:334 +assert_return(() => invoke($7, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:335 +assert_return(() => invoke($7, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:336 +assert_return(() => invoke($7, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:337 +assert_return(() => invoke($7, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:338 +assert_return(() => invoke($7, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:339 +assert_return(() => invoke($7, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:340 +assert_return(() => invoke($7, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:342 +let $8 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:350 +assert_trap(() => invoke($8, `run`, [65516, 0, 40]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:353 +assert_return(() => invoke($8, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:354 +assert_return(() => invoke($8, `load8_u`, [1]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:355 +assert_return(() => invoke($8, `load8_u`, [2]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:356 +assert_return(() => invoke($8, `load8_u`, [3]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:357 +assert_return(() => invoke($8, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:358 +assert_return(() => invoke($8, `load8_u`, [5]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:359 +assert_return(() => invoke($8, `load8_u`, [6]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:360 +assert_return(() => invoke($8, `load8_u`, [7]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:361 +assert_return(() => invoke($8, `load8_u`, [8]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:362 +assert_return(() => invoke($8, `load8_u`, [9]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:363 +assert_return(() => invoke($8, `load8_u`, [10]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:364 +assert_return(() => invoke($8, `load8_u`, [11]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:365 +assert_return(() => invoke($8, `load8_u`, [12]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:366 +assert_return(() => invoke($8, `load8_u`, [13]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:367 +assert_return(() => invoke($8, `load8_u`, [14]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:368 +assert_return(() => invoke($8, `load8_u`, [15]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:369 +assert_return(() => invoke($8, `load8_u`, [16]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:370 +assert_return(() => invoke($8, `load8_u`, [17]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:371 +assert_return(() => invoke($8, `load8_u`, [18]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:372 +assert_return(() => invoke($8, `load8_u`, [19]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:373 +assert_return(() => invoke($8, `load8_u`, [218]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:374 +assert_return(() => invoke($8, `load8_u`, [417]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:375 +assert_return(() => invoke($8, `load8_u`, [616]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:376 +assert_return(() => invoke($8, `load8_u`, [815]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:377 +assert_return(() => invoke($8, `load8_u`, [1014]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:378 +assert_return(() => invoke($8, `load8_u`, [1213]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:379 +assert_return(() => invoke($8, `load8_u`, [1412]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:380 +assert_return(() => invoke($8, `load8_u`, [1611]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:381 +assert_return(() => invoke($8, `load8_u`, [1810]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:382 +assert_return(() => invoke($8, `load8_u`, [2009]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:383 +assert_return(() => invoke($8, `load8_u`, [2208]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:384 +assert_return(() => invoke($8, `load8_u`, [2407]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:385 +assert_return(() => invoke($8, `load8_u`, [2606]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:386 +assert_return(() => invoke($8, `load8_u`, [2805]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:387 +assert_return(() => invoke($8, `load8_u`, [3004]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:388 +assert_return(() => invoke($8, `load8_u`, [3203]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:389 +assert_return(() => invoke($8, `load8_u`, [3402]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:390 +assert_return(() => invoke($8, `load8_u`, [3601]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:391 +assert_return(() => invoke($8, `load8_u`, [3800]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:392 +assert_return(() => invoke($8, `load8_u`, [3999]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:393 +assert_return(() => invoke($8, `load8_u`, [4198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:394 +assert_return(() => invoke($8, `load8_u`, [4397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:395 +assert_return(() => invoke($8, `load8_u`, [4596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:396 +assert_return(() => invoke($8, `load8_u`, [4795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:397 +assert_return(() => invoke($8, `load8_u`, [4994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:398 +assert_return(() => invoke($8, `load8_u`, [5193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:399 +assert_return(() => invoke($8, `load8_u`, [5392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:400 +assert_return(() => invoke($8, `load8_u`, [5591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:401 +assert_return(() => invoke($8, `load8_u`, [5790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:402 +assert_return(() => invoke($8, `load8_u`, [5989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:403 +assert_return(() => invoke($8, `load8_u`, [6188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:404 +assert_return(() => invoke($8, `load8_u`, [6387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:405 +assert_return(() => invoke($8, `load8_u`, [6586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:406 +assert_return(() => invoke($8, `load8_u`, [6785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:407 +assert_return(() => invoke($8, `load8_u`, [6984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:408 +assert_return(() => invoke($8, `load8_u`, [7183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:409 +assert_return(() => invoke($8, `load8_u`, [7382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:410 +assert_return(() => invoke($8, `load8_u`, [7581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:411 +assert_return(() => invoke($8, `load8_u`, [7780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:412 +assert_return(() => invoke($8, `load8_u`, [7979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:413 +assert_return(() => invoke($8, `load8_u`, [8178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:414 +assert_return(() => invoke($8, `load8_u`, [8377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:415 +assert_return(() => invoke($8, `load8_u`, [8576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:416 +assert_return(() => invoke($8, `load8_u`, [8775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:417 +assert_return(() => invoke($8, `load8_u`, [8974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:418 +assert_return(() => invoke($8, `load8_u`, [9173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:419 +assert_return(() => invoke($8, `load8_u`, [9372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:420 +assert_return(() => invoke($8, `load8_u`, [9571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:421 +assert_return(() => invoke($8, `load8_u`, [9770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:422 +assert_return(() => invoke($8, `load8_u`, [9969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:423 +assert_return(() => invoke($8, `load8_u`, [10168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:424 +assert_return(() => invoke($8, `load8_u`, [10367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:425 +assert_return(() => invoke($8, `load8_u`, [10566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:426 +assert_return(() => invoke($8, `load8_u`, [10765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:427 +assert_return(() => invoke($8, `load8_u`, [10964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:428 +assert_return(() => invoke($8, `load8_u`, [11163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:429 +assert_return(() => invoke($8, `load8_u`, [11362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:430 +assert_return(() => invoke($8, `load8_u`, [11561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:431 +assert_return(() => invoke($8, `load8_u`, [11760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:432 +assert_return(() => invoke($8, `load8_u`, [11959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:433 +assert_return(() => invoke($8, `load8_u`, [12158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:434 +assert_return(() => invoke($8, `load8_u`, [12357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:435 +assert_return(() => invoke($8, `load8_u`, [12556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:436 +assert_return(() => invoke($8, `load8_u`, [12755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:437 +assert_return(() => invoke($8, `load8_u`, [12954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:438 +assert_return(() => invoke($8, `load8_u`, [13153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:439 +assert_return(() => invoke($8, `load8_u`, [13352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:440 +assert_return(() => invoke($8, `load8_u`, [13551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:441 +assert_return(() => invoke($8, `load8_u`, [13750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:442 +assert_return(() => invoke($8, `load8_u`, [13949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:443 +assert_return(() => invoke($8, `load8_u`, [14148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:444 +assert_return(() => invoke($8, `load8_u`, [14347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:445 +assert_return(() => invoke($8, `load8_u`, [14546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:446 +assert_return(() => invoke($8, `load8_u`, [14745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:447 +assert_return(() => invoke($8, `load8_u`, [14944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:448 +assert_return(() => invoke($8, `load8_u`, [15143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:449 +assert_return(() => invoke($8, `load8_u`, [15342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:450 +assert_return(() => invoke($8, `load8_u`, [15541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:451 +assert_return(() => invoke($8, `load8_u`, [15740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:452 +assert_return(() => invoke($8, `load8_u`, [15939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:453 +assert_return(() => invoke($8, `load8_u`, [16138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:454 +assert_return(() => invoke($8, `load8_u`, [16337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:455 +assert_return(() => invoke($8, `load8_u`, [16536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:456 +assert_return(() => invoke($8, `load8_u`, [16735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:457 +assert_return(() => invoke($8, `load8_u`, [16934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:458 +assert_return(() => invoke($8, `load8_u`, [17133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:459 +assert_return(() => invoke($8, `load8_u`, [17332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:460 +assert_return(() => invoke($8, `load8_u`, [17531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:461 +assert_return(() => invoke($8, `load8_u`, [17730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:462 +assert_return(() => invoke($8, `load8_u`, [17929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:463 +assert_return(() => invoke($8, `load8_u`, [18128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:464 +assert_return(() => invoke($8, `load8_u`, [18327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:465 +assert_return(() => invoke($8, `load8_u`, [18526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:466 +assert_return(() => invoke($8, `load8_u`, [18725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:467 +assert_return(() => invoke($8, `load8_u`, [18924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:468 +assert_return(() => invoke($8, `load8_u`, [19123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:469 +assert_return(() => invoke($8, `load8_u`, [19322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:470 +assert_return(() => invoke($8, `load8_u`, [19521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:471 +assert_return(() => invoke($8, `load8_u`, [19720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:472 +assert_return(() => invoke($8, `load8_u`, [19919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:473 +assert_return(() => invoke($8, `load8_u`, [20118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:474 +assert_return(() => invoke($8, `load8_u`, [20317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:475 +assert_return(() => invoke($8, `load8_u`, [20516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:476 +assert_return(() => invoke($8, `load8_u`, [20715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:477 +assert_return(() => invoke($8, `load8_u`, [20914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:478 +assert_return(() => invoke($8, `load8_u`, [21113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:479 +assert_return(() => invoke($8, `load8_u`, [21312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:480 +assert_return(() => invoke($8, `load8_u`, [21511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:481 +assert_return(() => invoke($8, `load8_u`, [21710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:482 +assert_return(() => invoke($8, `load8_u`, [21909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:483 +assert_return(() => invoke($8, `load8_u`, [22108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:484 +assert_return(() => invoke($8, `load8_u`, [22307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:485 +assert_return(() => invoke($8, `load8_u`, [22506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:486 +assert_return(() => invoke($8, `load8_u`, [22705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:487 +assert_return(() => invoke($8, `load8_u`, [22904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:488 +assert_return(() => invoke($8, `load8_u`, [23103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:489 +assert_return(() => invoke($8, `load8_u`, [23302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:490 +assert_return(() => invoke($8, `load8_u`, [23501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:491 +assert_return(() => invoke($8, `load8_u`, [23700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:492 +assert_return(() => invoke($8, `load8_u`, [23899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:493 +assert_return(() => invoke($8, `load8_u`, [24098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:494 +assert_return(() => invoke($8, `load8_u`, [24297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:495 +assert_return(() => invoke($8, `load8_u`, [24496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:496 +assert_return(() => invoke($8, `load8_u`, [24695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:497 +assert_return(() => invoke($8, `load8_u`, [24894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:498 +assert_return(() => invoke($8, `load8_u`, [25093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:499 +assert_return(() => invoke($8, `load8_u`, [25292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:500 +assert_return(() => invoke($8, `load8_u`, [25491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:501 +assert_return(() => invoke($8, `load8_u`, [25690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:502 +assert_return(() => invoke($8, `load8_u`, [25889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:503 +assert_return(() => invoke($8, `load8_u`, [26088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:504 +assert_return(() => invoke($8, `load8_u`, [26287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:505 +assert_return(() => invoke($8, `load8_u`, [26486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:506 +assert_return(() => invoke($8, `load8_u`, [26685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:507 +assert_return(() => invoke($8, `load8_u`, [26884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:508 +assert_return(() => invoke($8, `load8_u`, [27083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:509 +assert_return(() => invoke($8, `load8_u`, [27282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:510 +assert_return(() => invoke($8, `load8_u`, [27481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:511 +assert_return(() => invoke($8, `load8_u`, [27680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:512 +assert_return(() => invoke($8, `load8_u`, [27879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:513 +assert_return(() => invoke($8, `load8_u`, [28078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:514 +assert_return(() => invoke($8, `load8_u`, [28277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:515 +assert_return(() => invoke($8, `load8_u`, [28476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:516 +assert_return(() => invoke($8, `load8_u`, [28675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:517 +assert_return(() => invoke($8, `load8_u`, [28874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:518 +assert_return(() => invoke($8, `load8_u`, [29073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:519 +assert_return(() => invoke($8, `load8_u`, [29272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:520 +assert_return(() => invoke($8, `load8_u`, [29471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:521 +assert_return(() => invoke($8, `load8_u`, [29670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:522 +assert_return(() => invoke($8, `load8_u`, [29869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:523 +assert_return(() => invoke($8, `load8_u`, [30068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:524 +assert_return(() => invoke($8, `load8_u`, [30267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:525 +assert_return(() => invoke($8, `load8_u`, [30466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:526 +assert_return(() => invoke($8, `load8_u`, [30665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:527 +assert_return(() => invoke($8, `load8_u`, [30864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:528 +assert_return(() => invoke($8, `load8_u`, [31063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:529 +assert_return(() => invoke($8, `load8_u`, [31262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:530 +assert_return(() => invoke($8, `load8_u`, [31461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:531 +assert_return(() => invoke($8, `load8_u`, [31660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:532 +assert_return(() => invoke($8, `load8_u`, [31859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:533 +assert_return(() => invoke($8, `load8_u`, [32058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:534 +assert_return(() => invoke($8, `load8_u`, [32257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:535 +assert_return(() => invoke($8, `load8_u`, [32456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:536 +assert_return(() => invoke($8, `load8_u`, [32655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:537 +assert_return(() => invoke($8, `load8_u`, [32854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:538 +assert_return(() => invoke($8, `load8_u`, [33053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:539 +assert_return(() => invoke($8, `load8_u`, [33252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:540 +assert_return(() => invoke($8, `load8_u`, [33451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:541 +assert_return(() => invoke($8, `load8_u`, [33650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:542 +assert_return(() => invoke($8, `load8_u`, [33849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:543 +assert_return(() => invoke($8, `load8_u`, [34048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:544 +assert_return(() => invoke($8, `load8_u`, [34247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:545 +assert_return(() => invoke($8, `load8_u`, [34446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:546 +assert_return(() => invoke($8, `load8_u`, [34645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:547 +assert_return(() => invoke($8, `load8_u`, [34844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:548 +assert_return(() => invoke($8, `load8_u`, [35043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:549 +assert_return(() => invoke($8, `load8_u`, [35242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:550 +assert_return(() => invoke($8, `load8_u`, [35441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:551 +assert_return(() => invoke($8, `load8_u`, [35640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:552 +assert_return(() => invoke($8, `load8_u`, [35839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:553 +assert_return(() => invoke($8, `load8_u`, [36038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:554 +assert_return(() => invoke($8, `load8_u`, [36237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:555 +assert_return(() => invoke($8, `load8_u`, [36436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:556 +assert_return(() => invoke($8, `load8_u`, [36635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:557 +assert_return(() => invoke($8, `load8_u`, [36834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:558 +assert_return(() => invoke($8, `load8_u`, [37033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:559 +assert_return(() => invoke($8, `load8_u`, [37232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:560 +assert_return(() => invoke($8, `load8_u`, [37431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:561 +assert_return(() => invoke($8, `load8_u`, [37630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:562 +assert_return(() => invoke($8, `load8_u`, [37829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:563 +assert_return(() => invoke($8, `load8_u`, [38028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:564 +assert_return(() => invoke($8, `load8_u`, [38227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:565 +assert_return(() => invoke($8, `load8_u`, [38426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:566 +assert_return(() => invoke($8, `load8_u`, [38625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:567 +assert_return(() => invoke($8, `load8_u`, [38824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:568 +assert_return(() => invoke($8, `load8_u`, [39023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:569 +assert_return(() => invoke($8, `load8_u`, [39222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:570 +assert_return(() => invoke($8, `load8_u`, [39421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:571 +assert_return(() => invoke($8, `load8_u`, [39620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:572 +assert_return(() => invoke($8, `load8_u`, [39819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:573 +assert_return(() => invoke($8, `load8_u`, [40018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:574 +assert_return(() => invoke($8, `load8_u`, [40217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:575 +assert_return(() => invoke($8, `load8_u`, [40416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:576 +assert_return(() => invoke($8, `load8_u`, [40615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:577 +assert_return(() => invoke($8, `load8_u`, [40814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:578 +assert_return(() => invoke($8, `load8_u`, [41013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:579 +assert_return(() => invoke($8, `load8_u`, [41212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:580 +assert_return(() => invoke($8, `load8_u`, [41411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:581 +assert_return(() => invoke($8, `load8_u`, [41610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:582 +assert_return(() => invoke($8, `load8_u`, [41809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:583 +assert_return(() => invoke($8, `load8_u`, [42008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:584 +assert_return(() => invoke($8, `load8_u`, [42207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:585 +assert_return(() => invoke($8, `load8_u`, [42406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:586 +assert_return(() => invoke($8, `load8_u`, [42605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:587 +assert_return(() => invoke($8, `load8_u`, [42804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:588 +assert_return(() => invoke($8, `load8_u`, [43003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:589 +assert_return(() => invoke($8, `load8_u`, [43202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:590 +assert_return(() => invoke($8, `load8_u`, [43401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:591 +assert_return(() => invoke($8, `load8_u`, [43600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:592 +assert_return(() => invoke($8, `load8_u`, [43799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:593 +assert_return(() => invoke($8, `load8_u`, [43998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:594 +assert_return(() => invoke($8, `load8_u`, [44197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:595 +assert_return(() => invoke($8, `load8_u`, [44396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:596 +assert_return(() => invoke($8, `load8_u`, [44595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:597 +assert_return(() => invoke($8, `load8_u`, [44794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:598 +assert_return(() => invoke($8, `load8_u`, [44993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:599 +assert_return(() => invoke($8, `load8_u`, [45192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:600 +assert_return(() => invoke($8, `load8_u`, [45391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:601 +assert_return(() => invoke($8, `load8_u`, [45590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:602 +assert_return(() => invoke($8, `load8_u`, [45789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:603 +assert_return(() => invoke($8, `load8_u`, [45988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:604 +assert_return(() => invoke($8, `load8_u`, [46187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:605 +assert_return(() => invoke($8, `load8_u`, [46386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:606 +assert_return(() => invoke($8, `load8_u`, [46585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:607 +assert_return(() => invoke($8, `load8_u`, [46784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:608 +assert_return(() => invoke($8, `load8_u`, [46983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:609 +assert_return(() => invoke($8, `load8_u`, [47182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:610 +assert_return(() => invoke($8, `load8_u`, [47381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:611 +assert_return(() => invoke($8, `load8_u`, [47580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:612 +assert_return(() => invoke($8, `load8_u`, [47779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:613 +assert_return(() => invoke($8, `load8_u`, [47978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:614 +assert_return(() => invoke($8, `load8_u`, [48177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:615 +assert_return(() => invoke($8, `load8_u`, [48376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:616 +assert_return(() => invoke($8, `load8_u`, [48575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:617 +assert_return(() => invoke($8, `load8_u`, [48774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:618 +assert_return(() => invoke($8, `load8_u`, [48973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:619 +assert_return(() => invoke($8, `load8_u`, [49172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:620 +assert_return(() => invoke($8, `load8_u`, [49371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:621 +assert_return(() => invoke($8, `load8_u`, [49570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:622 +assert_return(() => invoke($8, `load8_u`, [49769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:623 +assert_return(() => invoke($8, `load8_u`, [49968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:624 +assert_return(() => invoke($8, `load8_u`, [50167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:625 +assert_return(() => invoke($8, `load8_u`, [50366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:626 +assert_return(() => invoke($8, `load8_u`, [50565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:627 +assert_return(() => invoke($8, `load8_u`, [50764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:628 +assert_return(() => invoke($8, `load8_u`, [50963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:629 +assert_return(() => invoke($8, `load8_u`, [51162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:630 +assert_return(() => invoke($8, `load8_u`, [51361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:631 +assert_return(() => invoke($8, `load8_u`, [51560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:632 +assert_return(() => invoke($8, `load8_u`, [51759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:633 +assert_return(() => invoke($8, `load8_u`, [51958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:634 +assert_return(() => invoke($8, `load8_u`, [52157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:635 +assert_return(() => invoke($8, `load8_u`, [52356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:636 +assert_return(() => invoke($8, `load8_u`, [52555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:637 +assert_return(() => invoke($8, `load8_u`, [52754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:638 +assert_return(() => invoke($8, `load8_u`, [52953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:639 +assert_return(() => invoke($8, `load8_u`, [53152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:640 +assert_return(() => invoke($8, `load8_u`, [53351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:641 +assert_return(() => invoke($8, `load8_u`, [53550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:642 +assert_return(() => invoke($8, `load8_u`, [53749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:643 +assert_return(() => invoke($8, `load8_u`, [53948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:644 +assert_return(() => invoke($8, `load8_u`, [54147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:645 +assert_return(() => invoke($8, `load8_u`, [54346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:646 +assert_return(() => invoke($8, `load8_u`, [54545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:647 +assert_return(() => invoke($8, `load8_u`, [54744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:648 +assert_return(() => invoke($8, `load8_u`, [54943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:649 +assert_return(() => invoke($8, `load8_u`, [55142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:650 +assert_return(() => invoke($8, `load8_u`, [55341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:651 +assert_return(() => invoke($8, `load8_u`, [55540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:652 +assert_return(() => invoke($8, `load8_u`, [55739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:653 +assert_return(() => invoke($8, `load8_u`, [55938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:654 +assert_return(() => invoke($8, `load8_u`, [56137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:655 +assert_return(() => invoke($8, `load8_u`, [56336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:656 +assert_return(() => invoke($8, `load8_u`, [56535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:657 +assert_return(() => invoke($8, `load8_u`, [56734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:658 +assert_return(() => invoke($8, `load8_u`, [56933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:659 +assert_return(() => invoke($8, `load8_u`, [57132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:660 +assert_return(() => invoke($8, `load8_u`, [57331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:661 +assert_return(() => invoke($8, `load8_u`, [57530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:662 +assert_return(() => invoke($8, `load8_u`, [57729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:663 +assert_return(() => invoke($8, `load8_u`, [57928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:664 +assert_return(() => invoke($8, `load8_u`, [58127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:665 +assert_return(() => invoke($8, `load8_u`, [58326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:666 +assert_return(() => invoke($8, `load8_u`, [58525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:667 +assert_return(() => invoke($8, `load8_u`, [58724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:668 +assert_return(() => invoke($8, `load8_u`, [58923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:669 +assert_return(() => invoke($8, `load8_u`, [59122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:670 +assert_return(() => invoke($8, `load8_u`, [59321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:671 +assert_return(() => invoke($8, `load8_u`, [59520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:672 +assert_return(() => invoke($8, `load8_u`, [59719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:673 +assert_return(() => invoke($8, `load8_u`, [59918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:674 +assert_return(() => invoke($8, `load8_u`, [60117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:675 +assert_return(() => invoke($8, `load8_u`, [60316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:676 +assert_return(() => invoke($8, `load8_u`, [60515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:677 +assert_return(() => invoke($8, `load8_u`, [60714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:678 +assert_return(() => invoke($8, `load8_u`, [60913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:679 +assert_return(() => invoke($8, `load8_u`, [61112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:680 +assert_return(() => invoke($8, `load8_u`, [61311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:681 +assert_return(() => invoke($8, `load8_u`, [61510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:682 +assert_return(() => invoke($8, `load8_u`, [61709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:683 +assert_return(() => invoke($8, `load8_u`, [61908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:684 +assert_return(() => invoke($8, `load8_u`, [62107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:685 +assert_return(() => invoke($8, `load8_u`, [62306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:686 +assert_return(() => invoke($8, `load8_u`, [62505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:687 +assert_return(() => invoke($8, `load8_u`, [62704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:688 +assert_return(() => invoke($8, `load8_u`, [62903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:689 +assert_return(() => invoke($8, `load8_u`, [63102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:690 +assert_return(() => invoke($8, `load8_u`, [63301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:691 +assert_return(() => invoke($8, `load8_u`, [63500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:692 +assert_return(() => invoke($8, `load8_u`, [63699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:693 +assert_return(() => invoke($8, `load8_u`, [63898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:694 +assert_return(() => invoke($8, `load8_u`, [64097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:695 +assert_return(() => invoke($8, `load8_u`, [64296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:696 +assert_return(() => invoke($8, `load8_u`, [64495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:697 +assert_return(() => invoke($8, `load8_u`, [64694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:698 +assert_return(() => invoke($8, `load8_u`, [64893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:699 +assert_return(() => invoke($8, `load8_u`, [65092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:700 +assert_return(() => invoke($8, `load8_u`, [65291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:701 +assert_return(() => invoke($8, `load8_u`, [65490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:703 +let $9 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13\\14") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:711 +assert_trap(() => invoke($9, `run`, [65515, 0, 39]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:714 +assert_return(() => invoke($9, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:715 +assert_return(() => invoke($9, `load8_u`, [1]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:716 +assert_return(() => invoke($9, `load8_u`, [2]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:717 +assert_return(() => invoke($9, `load8_u`, [3]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:718 +assert_return(() => invoke($9, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:719 +assert_return(() => invoke($9, `load8_u`, [5]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:720 +assert_return(() => invoke($9, `load8_u`, [6]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:721 +assert_return(() => invoke($9, `load8_u`, [7]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:722 +assert_return(() => invoke($9, `load8_u`, [8]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:723 +assert_return(() => invoke($9, `load8_u`, [9]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:724 +assert_return(() => invoke($9, `load8_u`, [10]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:725 +assert_return(() => invoke($9, `load8_u`, [11]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:726 +assert_return(() => invoke($9, `load8_u`, [12]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:727 +assert_return(() => invoke($9, `load8_u`, [13]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:728 +assert_return(() => invoke($9, `load8_u`, [14]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:729 +assert_return(() => invoke($9, `load8_u`, [15]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:730 +assert_return(() => invoke($9, `load8_u`, [16]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:731 +assert_return(() => invoke($9, `load8_u`, [17]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:732 +assert_return(() => invoke($9, `load8_u`, [18]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:733 +assert_return(() => invoke($9, `load8_u`, [19]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:734 +assert_return(() => invoke($9, `load8_u`, [20]), [value("i32", 20)]); + +// ./test/core/memory_copy.wast:735 +assert_return(() => invoke($9, `load8_u`, [219]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:736 +assert_return(() => invoke($9, `load8_u`, [418]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:737 +assert_return(() => invoke($9, `load8_u`, [617]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:738 +assert_return(() => invoke($9, `load8_u`, [816]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:739 +assert_return(() => invoke($9, `load8_u`, [1015]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:740 +assert_return(() => invoke($9, `load8_u`, [1214]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:741 +assert_return(() => invoke($9, `load8_u`, [1413]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:742 +assert_return(() => invoke($9, `load8_u`, [1612]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:743 +assert_return(() => invoke($9, `load8_u`, [1811]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:744 +assert_return(() => invoke($9, `load8_u`, [2010]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:745 +assert_return(() => invoke($9, `load8_u`, [2209]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:746 +assert_return(() => invoke($9, `load8_u`, [2408]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:747 +assert_return(() => invoke($9, `load8_u`, [2607]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:748 +assert_return(() => invoke($9, `load8_u`, [2806]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:749 +assert_return(() => invoke($9, `load8_u`, [3005]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:750 +assert_return(() => invoke($9, `load8_u`, [3204]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:751 +assert_return(() => invoke($9, `load8_u`, [3403]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:752 +assert_return(() => invoke($9, `load8_u`, [3602]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:753 +assert_return(() => invoke($9, `load8_u`, [3801]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:754 +assert_return(() => invoke($9, `load8_u`, [4000]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:755 +assert_return(() => invoke($9, `load8_u`, [4199]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:756 +assert_return(() => invoke($9, `load8_u`, [4398]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:757 +assert_return(() => invoke($9, `load8_u`, [4597]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:758 +assert_return(() => invoke($9, `load8_u`, [4796]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:759 +assert_return(() => invoke($9, `load8_u`, [4995]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:760 +assert_return(() => invoke($9, `load8_u`, [5194]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:761 +assert_return(() => invoke($9, `load8_u`, [5393]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:762 +assert_return(() => invoke($9, `load8_u`, [5592]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:763 +assert_return(() => invoke($9, `load8_u`, [5791]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:764 +assert_return(() => invoke($9, `load8_u`, [5990]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:765 +assert_return(() => invoke($9, `load8_u`, [6189]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:766 +assert_return(() => invoke($9, `load8_u`, [6388]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:767 +assert_return(() => invoke($9, `load8_u`, [6587]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:768 +assert_return(() => invoke($9, `load8_u`, [6786]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:769 +assert_return(() => invoke($9, `load8_u`, [6985]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:770 +assert_return(() => invoke($9, `load8_u`, [7184]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:771 +assert_return(() => invoke($9, `load8_u`, [7383]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:772 +assert_return(() => invoke($9, `load8_u`, [7582]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:773 +assert_return(() => invoke($9, `load8_u`, [7781]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:774 +assert_return(() => invoke($9, `load8_u`, [7980]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:775 +assert_return(() => invoke($9, `load8_u`, [8179]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:776 +assert_return(() => invoke($9, `load8_u`, [8378]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:777 +assert_return(() => invoke($9, `load8_u`, [8577]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:778 +assert_return(() => invoke($9, `load8_u`, [8776]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:779 +assert_return(() => invoke($9, `load8_u`, [8975]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:780 +assert_return(() => invoke($9, `load8_u`, [9174]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:781 +assert_return(() => invoke($9, `load8_u`, [9373]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:782 +assert_return(() => invoke($9, `load8_u`, [9572]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:783 +assert_return(() => invoke($9, `load8_u`, [9771]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:784 +assert_return(() => invoke($9, `load8_u`, [9970]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:785 +assert_return(() => invoke($9, `load8_u`, [10169]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:786 +assert_return(() => invoke($9, `load8_u`, [10368]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:787 +assert_return(() => invoke($9, `load8_u`, [10567]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:788 +assert_return(() => invoke($9, `load8_u`, [10766]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:789 +assert_return(() => invoke($9, `load8_u`, [10965]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:790 +assert_return(() => invoke($9, `load8_u`, [11164]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:791 +assert_return(() => invoke($9, `load8_u`, [11363]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:792 +assert_return(() => invoke($9, `load8_u`, [11562]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:793 +assert_return(() => invoke($9, `load8_u`, [11761]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:794 +assert_return(() => invoke($9, `load8_u`, [11960]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:795 +assert_return(() => invoke($9, `load8_u`, [12159]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:796 +assert_return(() => invoke($9, `load8_u`, [12358]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:797 +assert_return(() => invoke($9, `load8_u`, [12557]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:798 +assert_return(() => invoke($9, `load8_u`, [12756]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:799 +assert_return(() => invoke($9, `load8_u`, [12955]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:800 +assert_return(() => invoke($9, `load8_u`, [13154]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:801 +assert_return(() => invoke($9, `load8_u`, [13353]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:802 +assert_return(() => invoke($9, `load8_u`, [13552]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:803 +assert_return(() => invoke($9, `load8_u`, [13751]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:804 +assert_return(() => invoke($9, `load8_u`, [13950]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:805 +assert_return(() => invoke($9, `load8_u`, [14149]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:806 +assert_return(() => invoke($9, `load8_u`, [14348]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:807 +assert_return(() => invoke($9, `load8_u`, [14547]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:808 +assert_return(() => invoke($9, `load8_u`, [14746]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:809 +assert_return(() => invoke($9, `load8_u`, [14945]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:810 +assert_return(() => invoke($9, `load8_u`, [15144]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:811 +assert_return(() => invoke($9, `load8_u`, [15343]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:812 +assert_return(() => invoke($9, `load8_u`, [15542]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:813 +assert_return(() => invoke($9, `load8_u`, [15741]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:814 +assert_return(() => invoke($9, `load8_u`, [15940]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:815 +assert_return(() => invoke($9, `load8_u`, [16139]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:816 +assert_return(() => invoke($9, `load8_u`, [16338]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:817 +assert_return(() => invoke($9, `load8_u`, [16537]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:818 +assert_return(() => invoke($9, `load8_u`, [16736]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:819 +assert_return(() => invoke($9, `load8_u`, [16935]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:820 +assert_return(() => invoke($9, `load8_u`, [17134]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:821 +assert_return(() => invoke($9, `load8_u`, [17333]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:822 +assert_return(() => invoke($9, `load8_u`, [17532]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:823 +assert_return(() => invoke($9, `load8_u`, [17731]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:824 +assert_return(() => invoke($9, `load8_u`, [17930]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:825 +assert_return(() => invoke($9, `load8_u`, [18129]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:826 +assert_return(() => invoke($9, `load8_u`, [18328]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:827 +assert_return(() => invoke($9, `load8_u`, [18527]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:828 +assert_return(() => invoke($9, `load8_u`, [18726]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:829 +assert_return(() => invoke($9, `load8_u`, [18925]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:830 +assert_return(() => invoke($9, `load8_u`, [19124]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:831 +assert_return(() => invoke($9, `load8_u`, [19323]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:832 +assert_return(() => invoke($9, `load8_u`, [19522]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:833 +assert_return(() => invoke($9, `load8_u`, [19721]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:834 +assert_return(() => invoke($9, `load8_u`, [19920]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:835 +assert_return(() => invoke($9, `load8_u`, [20119]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:836 +assert_return(() => invoke($9, `load8_u`, [20318]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:837 +assert_return(() => invoke($9, `load8_u`, [20517]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:838 +assert_return(() => invoke($9, `load8_u`, [20716]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:839 +assert_return(() => invoke($9, `load8_u`, [20915]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:840 +assert_return(() => invoke($9, `load8_u`, [21114]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:841 +assert_return(() => invoke($9, `load8_u`, [21313]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:842 +assert_return(() => invoke($9, `load8_u`, [21512]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:843 +assert_return(() => invoke($9, `load8_u`, [21711]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:844 +assert_return(() => invoke($9, `load8_u`, [21910]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:845 +assert_return(() => invoke($9, `load8_u`, [22109]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:846 +assert_return(() => invoke($9, `load8_u`, [22308]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:847 +assert_return(() => invoke($9, `load8_u`, [22507]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:848 +assert_return(() => invoke($9, `load8_u`, [22706]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:849 +assert_return(() => invoke($9, `load8_u`, [22905]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:850 +assert_return(() => invoke($9, `load8_u`, [23104]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:851 +assert_return(() => invoke($9, `load8_u`, [23303]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:852 +assert_return(() => invoke($9, `load8_u`, [23502]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:853 +assert_return(() => invoke($9, `load8_u`, [23701]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:854 +assert_return(() => invoke($9, `load8_u`, [23900]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:855 +assert_return(() => invoke($9, `load8_u`, [24099]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:856 +assert_return(() => invoke($9, `load8_u`, [24298]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:857 +assert_return(() => invoke($9, `load8_u`, [24497]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:858 +assert_return(() => invoke($9, `load8_u`, [24696]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:859 +assert_return(() => invoke($9, `load8_u`, [24895]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:860 +assert_return(() => invoke($9, `load8_u`, [25094]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:861 +assert_return(() => invoke($9, `load8_u`, [25293]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:862 +assert_return(() => invoke($9, `load8_u`, [25492]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:863 +assert_return(() => invoke($9, `load8_u`, [25691]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:864 +assert_return(() => invoke($9, `load8_u`, [25890]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:865 +assert_return(() => invoke($9, `load8_u`, [26089]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:866 +assert_return(() => invoke($9, `load8_u`, [26288]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:867 +assert_return(() => invoke($9, `load8_u`, [26487]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:868 +assert_return(() => invoke($9, `load8_u`, [26686]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:869 +assert_return(() => invoke($9, `load8_u`, [26885]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:870 +assert_return(() => invoke($9, `load8_u`, [27084]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:871 +assert_return(() => invoke($9, `load8_u`, [27283]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:872 +assert_return(() => invoke($9, `load8_u`, [27482]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:873 +assert_return(() => invoke($9, `load8_u`, [27681]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:874 +assert_return(() => invoke($9, `load8_u`, [27880]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:875 +assert_return(() => invoke($9, `load8_u`, [28079]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:876 +assert_return(() => invoke($9, `load8_u`, [28278]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:877 +assert_return(() => invoke($9, `load8_u`, [28477]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:878 +assert_return(() => invoke($9, `load8_u`, [28676]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:879 +assert_return(() => invoke($9, `load8_u`, [28875]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:880 +assert_return(() => invoke($9, `load8_u`, [29074]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:881 +assert_return(() => invoke($9, `load8_u`, [29273]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:882 +assert_return(() => invoke($9, `load8_u`, [29472]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:883 +assert_return(() => invoke($9, `load8_u`, [29671]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:884 +assert_return(() => invoke($9, `load8_u`, [29870]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:885 +assert_return(() => invoke($9, `load8_u`, [30069]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:886 +assert_return(() => invoke($9, `load8_u`, [30268]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:887 +assert_return(() => invoke($9, `load8_u`, [30467]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:888 +assert_return(() => invoke($9, `load8_u`, [30666]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:889 +assert_return(() => invoke($9, `load8_u`, [30865]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:890 +assert_return(() => invoke($9, `load8_u`, [31064]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:891 +assert_return(() => invoke($9, `load8_u`, [31263]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:892 +assert_return(() => invoke($9, `load8_u`, [31462]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:893 +assert_return(() => invoke($9, `load8_u`, [31661]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:894 +assert_return(() => invoke($9, `load8_u`, [31860]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:895 +assert_return(() => invoke($9, `load8_u`, [32059]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:896 +assert_return(() => invoke($9, `load8_u`, [32258]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:897 +assert_return(() => invoke($9, `load8_u`, [32457]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:898 +assert_return(() => invoke($9, `load8_u`, [32656]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:899 +assert_return(() => invoke($9, `load8_u`, [32855]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:900 +assert_return(() => invoke($9, `load8_u`, [33054]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:901 +assert_return(() => invoke($9, `load8_u`, [33253]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:902 +assert_return(() => invoke($9, `load8_u`, [33452]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:903 +assert_return(() => invoke($9, `load8_u`, [33651]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:904 +assert_return(() => invoke($9, `load8_u`, [33850]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:905 +assert_return(() => invoke($9, `load8_u`, [34049]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:906 +assert_return(() => invoke($9, `load8_u`, [34248]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:907 +assert_return(() => invoke($9, `load8_u`, [34447]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:908 +assert_return(() => invoke($9, `load8_u`, [34646]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:909 +assert_return(() => invoke($9, `load8_u`, [34845]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:910 +assert_return(() => invoke($9, `load8_u`, [35044]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:911 +assert_return(() => invoke($9, `load8_u`, [35243]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:912 +assert_return(() => invoke($9, `load8_u`, [35442]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:913 +assert_return(() => invoke($9, `load8_u`, [35641]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:914 +assert_return(() => invoke($9, `load8_u`, [35840]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:915 +assert_return(() => invoke($9, `load8_u`, [36039]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:916 +assert_return(() => invoke($9, `load8_u`, [36238]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:917 +assert_return(() => invoke($9, `load8_u`, [36437]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:918 +assert_return(() => invoke($9, `load8_u`, [36636]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:919 +assert_return(() => invoke($9, `load8_u`, [36835]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:920 +assert_return(() => invoke($9, `load8_u`, [37034]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:921 +assert_return(() => invoke($9, `load8_u`, [37233]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:922 +assert_return(() => invoke($9, `load8_u`, [37432]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:923 +assert_return(() => invoke($9, `load8_u`, [37631]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:924 +assert_return(() => invoke($9, `load8_u`, [37830]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:925 +assert_return(() => invoke($9, `load8_u`, [38029]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:926 +assert_return(() => invoke($9, `load8_u`, [38228]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:927 +assert_return(() => invoke($9, `load8_u`, [38427]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:928 +assert_return(() => invoke($9, `load8_u`, [38626]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:929 +assert_return(() => invoke($9, `load8_u`, [38825]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:930 +assert_return(() => invoke($9, `load8_u`, [39024]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:931 +assert_return(() => invoke($9, `load8_u`, [39223]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:932 +assert_return(() => invoke($9, `load8_u`, [39422]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:933 +assert_return(() => invoke($9, `load8_u`, [39621]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:934 +assert_return(() => invoke($9, `load8_u`, [39820]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:935 +assert_return(() => invoke($9, `load8_u`, [40019]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:936 +assert_return(() => invoke($9, `load8_u`, [40218]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:937 +assert_return(() => invoke($9, `load8_u`, [40417]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:938 +assert_return(() => invoke($9, `load8_u`, [40616]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:939 +assert_return(() => invoke($9, `load8_u`, [40815]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:940 +assert_return(() => invoke($9, `load8_u`, [41014]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:941 +assert_return(() => invoke($9, `load8_u`, [41213]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:942 +assert_return(() => invoke($9, `load8_u`, [41412]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:943 +assert_return(() => invoke($9, `load8_u`, [41611]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:944 +assert_return(() => invoke($9, `load8_u`, [41810]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:945 +assert_return(() => invoke($9, `load8_u`, [42009]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:946 +assert_return(() => invoke($9, `load8_u`, [42208]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:947 +assert_return(() => invoke($9, `load8_u`, [42407]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:948 +assert_return(() => invoke($9, `load8_u`, [42606]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:949 +assert_return(() => invoke($9, `load8_u`, [42805]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:950 +assert_return(() => invoke($9, `load8_u`, [43004]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:951 +assert_return(() => invoke($9, `load8_u`, [43203]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:952 +assert_return(() => invoke($9, `load8_u`, [43402]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:953 +assert_return(() => invoke($9, `load8_u`, [43601]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:954 +assert_return(() => invoke($9, `load8_u`, [43800]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:955 +assert_return(() => invoke($9, `load8_u`, [43999]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:956 +assert_return(() => invoke($9, `load8_u`, [44198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:957 +assert_return(() => invoke($9, `load8_u`, [44397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:958 +assert_return(() => invoke($9, `load8_u`, [44596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:959 +assert_return(() => invoke($9, `load8_u`, [44795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:960 +assert_return(() => invoke($9, `load8_u`, [44994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:961 +assert_return(() => invoke($9, `load8_u`, [45193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:962 +assert_return(() => invoke($9, `load8_u`, [45392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:963 +assert_return(() => invoke($9, `load8_u`, [45591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:964 +assert_return(() => invoke($9, `load8_u`, [45790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:965 +assert_return(() => invoke($9, `load8_u`, [45989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:966 +assert_return(() => invoke($9, `load8_u`, [46188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:967 +assert_return(() => invoke($9, `load8_u`, [46387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:968 +assert_return(() => invoke($9, `load8_u`, [46586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:969 +assert_return(() => invoke($9, `load8_u`, [46785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:970 +assert_return(() => invoke($9, `load8_u`, [46984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:971 +assert_return(() => invoke($9, `load8_u`, [47183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:972 +assert_return(() => invoke($9, `load8_u`, [47382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:973 +assert_return(() => invoke($9, `load8_u`, [47581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:974 +assert_return(() => invoke($9, `load8_u`, [47780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:975 +assert_return(() => invoke($9, `load8_u`, [47979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:976 +assert_return(() => invoke($9, `load8_u`, [48178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:977 +assert_return(() => invoke($9, `load8_u`, [48377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:978 +assert_return(() => invoke($9, `load8_u`, [48576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:979 +assert_return(() => invoke($9, `load8_u`, [48775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:980 +assert_return(() => invoke($9, `load8_u`, [48974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:981 +assert_return(() => invoke($9, `load8_u`, [49173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:982 +assert_return(() => invoke($9, `load8_u`, [49372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:983 +assert_return(() => invoke($9, `load8_u`, [49571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:984 +assert_return(() => invoke($9, `load8_u`, [49770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:985 +assert_return(() => invoke($9, `load8_u`, [49969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:986 +assert_return(() => invoke($9, `load8_u`, [50168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:987 +assert_return(() => invoke($9, `load8_u`, [50367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:988 +assert_return(() => invoke($9, `load8_u`, [50566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:989 +assert_return(() => invoke($9, `load8_u`, [50765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:990 +assert_return(() => invoke($9, `load8_u`, [50964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:991 +assert_return(() => invoke($9, `load8_u`, [51163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:992 +assert_return(() => invoke($9, `load8_u`, [51362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:993 +assert_return(() => invoke($9, `load8_u`, [51561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:994 +assert_return(() => invoke($9, `load8_u`, [51760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:995 +assert_return(() => invoke($9, `load8_u`, [51959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:996 +assert_return(() => invoke($9, `load8_u`, [52158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:997 +assert_return(() => invoke($9, `load8_u`, [52357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:998 +assert_return(() => invoke($9, `load8_u`, [52556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:999 +assert_return(() => invoke($9, `load8_u`, [52755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1000 +assert_return(() => invoke($9, `load8_u`, [52954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1001 +assert_return(() => invoke($9, `load8_u`, [53153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1002 +assert_return(() => invoke($9, `load8_u`, [53352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1003 +assert_return(() => invoke($9, `load8_u`, [53551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1004 +assert_return(() => invoke($9, `load8_u`, [53750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1005 +assert_return(() => invoke($9, `load8_u`, [53949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1006 +assert_return(() => invoke($9, `load8_u`, [54148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1007 +assert_return(() => invoke($9, `load8_u`, [54347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1008 +assert_return(() => invoke($9, `load8_u`, [54546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1009 +assert_return(() => invoke($9, `load8_u`, [54745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1010 +assert_return(() => invoke($9, `load8_u`, [54944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1011 +assert_return(() => invoke($9, `load8_u`, [55143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1012 +assert_return(() => invoke($9, `load8_u`, [55342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1013 +assert_return(() => invoke($9, `load8_u`, [55541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1014 +assert_return(() => invoke($9, `load8_u`, [55740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1015 +assert_return(() => invoke($9, `load8_u`, [55939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1016 +assert_return(() => invoke($9, `load8_u`, [56138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1017 +assert_return(() => invoke($9, `load8_u`, [56337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1018 +assert_return(() => invoke($9, `load8_u`, [56536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1019 +assert_return(() => invoke($9, `load8_u`, [56735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1020 +assert_return(() => invoke($9, `load8_u`, [56934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1021 +assert_return(() => invoke($9, `load8_u`, [57133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1022 +assert_return(() => invoke($9, `load8_u`, [57332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1023 +assert_return(() => invoke($9, `load8_u`, [57531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1024 +assert_return(() => invoke($9, `load8_u`, [57730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1025 +assert_return(() => invoke($9, `load8_u`, [57929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1026 +assert_return(() => invoke($9, `load8_u`, [58128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1027 +assert_return(() => invoke($9, `load8_u`, [58327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1028 +assert_return(() => invoke($9, `load8_u`, [58526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1029 +assert_return(() => invoke($9, `load8_u`, [58725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1030 +assert_return(() => invoke($9, `load8_u`, [58924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1031 +assert_return(() => invoke($9, `load8_u`, [59123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1032 +assert_return(() => invoke($9, `load8_u`, [59322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1033 +assert_return(() => invoke($9, `load8_u`, [59521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1034 +assert_return(() => invoke($9, `load8_u`, [59720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1035 +assert_return(() => invoke($9, `load8_u`, [59919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1036 +assert_return(() => invoke($9, `load8_u`, [60118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1037 +assert_return(() => invoke($9, `load8_u`, [60317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1038 +assert_return(() => invoke($9, `load8_u`, [60516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1039 +assert_return(() => invoke($9, `load8_u`, [60715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1040 +assert_return(() => invoke($9, `load8_u`, [60914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1041 +assert_return(() => invoke($9, `load8_u`, [61113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1042 +assert_return(() => invoke($9, `load8_u`, [61312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1043 +assert_return(() => invoke($9, `load8_u`, [61511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1044 +assert_return(() => invoke($9, `load8_u`, [61710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1045 +assert_return(() => invoke($9, `load8_u`, [61909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1046 +assert_return(() => invoke($9, `load8_u`, [62108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1047 +assert_return(() => invoke($9, `load8_u`, [62307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1048 +assert_return(() => invoke($9, `load8_u`, [62506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1049 +assert_return(() => invoke($9, `load8_u`, [62705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1050 +assert_return(() => invoke($9, `load8_u`, [62904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1051 +assert_return(() => invoke($9, `load8_u`, [63103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1052 +assert_return(() => invoke($9, `load8_u`, [63302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1053 +assert_return(() => invoke($9, `load8_u`, [63501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1054 +assert_return(() => invoke($9, `load8_u`, [63700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1055 +assert_return(() => invoke($9, `load8_u`, [63899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1056 +assert_return(() => invoke($9, `load8_u`, [64098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1057 +assert_return(() => invoke($9, `load8_u`, [64297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1058 +assert_return(() => invoke($9, `load8_u`, [64496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1059 +assert_return(() => invoke($9, `load8_u`, [64695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1060 +assert_return(() => invoke($9, `load8_u`, [64894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1061 +assert_return(() => invoke($9, `load8_u`, [65093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1062 +assert_return(() => invoke($9, `load8_u`, [65292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1063 +assert_return(() => invoke($9, `load8_u`, [65491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1065 +let $10 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 65516) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:1073 +assert_trap(() => invoke($10, `run`, [0, 65516, 40]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:1076 +assert_return(() => invoke($10, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1077 +assert_return(() => invoke($10, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1078 +assert_return(() => invoke($10, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1079 +assert_return(() => invoke($10, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1080 +assert_return(() => invoke($10, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1081 +assert_return(() => invoke($10, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1082 +assert_return(() => invoke($10, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1083 +assert_return(() => invoke($10, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1084 +assert_return(() => invoke($10, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1085 +assert_return(() => invoke($10, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1086 +assert_return(() => invoke($10, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1087 +assert_return(() => invoke($10, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1088 +assert_return(() => invoke($10, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1089 +assert_return(() => invoke($10, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1090 +assert_return(() => invoke($10, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1091 +assert_return(() => invoke($10, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1092 +assert_return(() => invoke($10, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1093 +assert_return(() => invoke($10, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1094 +assert_return(() => invoke($10, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1095 +assert_return(() => invoke($10, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1096 +assert_return(() => invoke($10, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1097 +assert_return(() => invoke($10, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1098 +assert_return(() => invoke($10, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1099 +assert_return(() => invoke($10, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1100 +assert_return(() => invoke($10, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1101 +assert_return(() => invoke($10, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1102 +assert_return(() => invoke($10, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1103 +assert_return(() => invoke($10, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1104 +assert_return(() => invoke($10, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1105 +assert_return(() => invoke($10, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1106 +assert_return(() => invoke($10, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1107 +assert_return(() => invoke($10, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1108 +assert_return(() => invoke($10, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1109 +assert_return(() => invoke($10, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1110 +assert_return(() => invoke($10, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1111 +assert_return(() => invoke($10, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1112 +assert_return(() => invoke($10, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1113 +assert_return(() => invoke($10, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1114 +assert_return(() => invoke($10, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1115 +assert_return(() => invoke($10, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1116 +assert_return(() => invoke($10, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1117 +assert_return(() => invoke($10, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1118 +assert_return(() => invoke($10, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1119 +assert_return(() => invoke($10, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1120 +assert_return(() => invoke($10, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1121 +assert_return(() => invoke($10, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1122 +assert_return(() => invoke($10, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1123 +assert_return(() => invoke($10, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1124 +assert_return(() => invoke($10, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1125 +assert_return(() => invoke($10, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1126 +assert_return(() => invoke($10, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1127 +assert_return(() => invoke($10, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1128 +assert_return(() => invoke($10, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1129 +assert_return(() => invoke($10, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1130 +assert_return(() => invoke($10, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1131 +assert_return(() => invoke($10, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1132 +assert_return(() => invoke($10, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1133 +assert_return(() => invoke($10, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1134 +assert_return(() => invoke($10, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1135 +assert_return(() => invoke($10, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1136 +assert_return(() => invoke($10, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1137 +assert_return(() => invoke($10, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1138 +assert_return(() => invoke($10, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1139 +assert_return(() => invoke($10, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1140 +assert_return(() => invoke($10, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1141 +assert_return(() => invoke($10, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1142 +assert_return(() => invoke($10, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1143 +assert_return(() => invoke($10, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1144 +assert_return(() => invoke($10, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1145 +assert_return(() => invoke($10, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1146 +assert_return(() => invoke($10, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1147 +assert_return(() => invoke($10, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1148 +assert_return(() => invoke($10, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1149 +assert_return(() => invoke($10, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1150 +assert_return(() => invoke($10, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1151 +assert_return(() => invoke($10, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1152 +assert_return(() => invoke($10, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1153 +assert_return(() => invoke($10, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1154 +assert_return(() => invoke($10, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1155 +assert_return(() => invoke($10, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1156 +assert_return(() => invoke($10, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1157 +assert_return(() => invoke($10, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1158 +assert_return(() => invoke($10, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1159 +assert_return(() => invoke($10, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1160 +assert_return(() => invoke($10, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1161 +assert_return(() => invoke($10, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1162 +assert_return(() => invoke($10, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1163 +assert_return(() => invoke($10, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1164 +assert_return(() => invoke($10, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1165 +assert_return(() => invoke($10, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1166 +assert_return(() => invoke($10, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1167 +assert_return(() => invoke($10, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1168 +assert_return(() => invoke($10, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1169 +assert_return(() => invoke($10, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1170 +assert_return(() => invoke($10, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1171 +assert_return(() => invoke($10, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1172 +assert_return(() => invoke($10, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1173 +assert_return(() => invoke($10, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1174 +assert_return(() => invoke($10, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1175 +assert_return(() => invoke($10, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1176 +assert_return(() => invoke($10, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1177 +assert_return(() => invoke($10, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1178 +assert_return(() => invoke($10, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1179 +assert_return(() => invoke($10, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1180 +assert_return(() => invoke($10, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1181 +assert_return(() => invoke($10, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1182 +assert_return(() => invoke($10, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1183 +assert_return(() => invoke($10, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1184 +assert_return(() => invoke($10, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1185 +assert_return(() => invoke($10, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1186 +assert_return(() => invoke($10, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1187 +assert_return(() => invoke($10, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1188 +assert_return(() => invoke($10, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1189 +assert_return(() => invoke($10, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1190 +assert_return(() => invoke($10, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1191 +assert_return(() => invoke($10, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1192 +assert_return(() => invoke($10, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1193 +assert_return(() => invoke($10, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1194 +assert_return(() => invoke($10, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1195 +assert_return(() => invoke($10, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1196 +assert_return(() => invoke($10, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1197 +assert_return(() => invoke($10, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1198 +assert_return(() => invoke($10, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1199 +assert_return(() => invoke($10, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1200 +assert_return(() => invoke($10, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1201 +assert_return(() => invoke($10, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1202 +assert_return(() => invoke($10, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1203 +assert_return(() => invoke($10, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1204 +assert_return(() => invoke($10, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1205 +assert_return(() => invoke($10, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1206 +assert_return(() => invoke($10, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1207 +assert_return(() => invoke($10, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1208 +assert_return(() => invoke($10, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1209 +assert_return(() => invoke($10, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1210 +assert_return(() => invoke($10, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1211 +assert_return(() => invoke($10, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1212 +assert_return(() => invoke($10, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1213 +assert_return(() => invoke($10, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1214 +assert_return(() => invoke($10, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1215 +assert_return(() => invoke($10, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1216 +assert_return(() => invoke($10, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1217 +assert_return(() => invoke($10, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1218 +assert_return(() => invoke($10, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1219 +assert_return(() => invoke($10, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1220 +assert_return(() => invoke($10, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1221 +assert_return(() => invoke($10, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1222 +assert_return(() => invoke($10, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1223 +assert_return(() => invoke($10, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1224 +assert_return(() => invoke($10, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1225 +assert_return(() => invoke($10, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1226 +assert_return(() => invoke($10, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1227 +assert_return(() => invoke($10, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1228 +assert_return(() => invoke($10, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1229 +assert_return(() => invoke($10, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1230 +assert_return(() => invoke($10, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1231 +assert_return(() => invoke($10, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1232 +assert_return(() => invoke($10, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1233 +assert_return(() => invoke($10, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1234 +assert_return(() => invoke($10, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1235 +assert_return(() => invoke($10, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1236 +assert_return(() => invoke($10, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1237 +assert_return(() => invoke($10, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1238 +assert_return(() => invoke($10, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1239 +assert_return(() => invoke($10, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1240 +assert_return(() => invoke($10, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1241 +assert_return(() => invoke($10, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1242 +assert_return(() => invoke($10, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1243 +assert_return(() => invoke($10, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1244 +assert_return(() => invoke($10, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1245 +assert_return(() => invoke($10, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1246 +assert_return(() => invoke($10, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1247 +assert_return(() => invoke($10, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1248 +assert_return(() => invoke($10, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1249 +assert_return(() => invoke($10, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1250 +assert_return(() => invoke($10, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1251 +assert_return(() => invoke($10, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1252 +assert_return(() => invoke($10, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1253 +assert_return(() => invoke($10, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1254 +assert_return(() => invoke($10, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1255 +assert_return(() => invoke($10, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1256 +assert_return(() => invoke($10, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1257 +assert_return(() => invoke($10, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1258 +assert_return(() => invoke($10, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1259 +assert_return(() => invoke($10, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1260 +assert_return(() => invoke($10, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1261 +assert_return(() => invoke($10, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1262 +assert_return(() => invoke($10, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1263 +assert_return(() => invoke($10, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1264 +assert_return(() => invoke($10, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1265 +assert_return(() => invoke($10, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1266 +assert_return(() => invoke($10, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1267 +assert_return(() => invoke($10, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1268 +assert_return(() => invoke($10, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1269 +assert_return(() => invoke($10, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1270 +assert_return(() => invoke($10, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1271 +assert_return(() => invoke($10, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1272 +assert_return(() => invoke($10, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1273 +assert_return(() => invoke($10, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1274 +assert_return(() => invoke($10, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1275 +assert_return(() => invoke($10, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1276 +assert_return(() => invoke($10, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1277 +assert_return(() => invoke($10, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1278 +assert_return(() => invoke($10, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1279 +assert_return(() => invoke($10, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1280 +assert_return(() => invoke($10, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1281 +assert_return(() => invoke($10, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1282 +assert_return(() => invoke($10, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1283 +assert_return(() => invoke($10, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1284 +assert_return(() => invoke($10, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1285 +assert_return(() => invoke($10, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1286 +assert_return(() => invoke($10, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1287 +assert_return(() => invoke($10, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1288 +assert_return(() => invoke($10, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1289 +assert_return(() => invoke($10, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1290 +assert_return(() => invoke($10, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1291 +assert_return(() => invoke($10, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1292 +assert_return(() => invoke($10, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1293 +assert_return(() => invoke($10, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1294 +assert_return(() => invoke($10, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1295 +assert_return(() => invoke($10, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1296 +assert_return(() => invoke($10, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1297 +assert_return(() => invoke($10, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1298 +assert_return(() => invoke($10, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1299 +assert_return(() => invoke($10, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1300 +assert_return(() => invoke($10, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1301 +assert_return(() => invoke($10, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1302 +assert_return(() => invoke($10, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1303 +assert_return(() => invoke($10, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1304 +assert_return(() => invoke($10, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1305 +assert_return(() => invoke($10, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1306 +assert_return(() => invoke($10, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1307 +assert_return(() => invoke($10, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1308 +assert_return(() => invoke($10, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1309 +assert_return(() => invoke($10, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1310 +assert_return(() => invoke($10, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1311 +assert_return(() => invoke($10, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1312 +assert_return(() => invoke($10, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1313 +assert_return(() => invoke($10, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1314 +assert_return(() => invoke($10, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1315 +assert_return(() => invoke($10, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1316 +assert_return(() => invoke($10, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1317 +assert_return(() => invoke($10, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1318 +assert_return(() => invoke($10, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1319 +assert_return(() => invoke($10, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1320 +assert_return(() => invoke($10, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1321 +assert_return(() => invoke($10, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1322 +assert_return(() => invoke($10, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1323 +assert_return(() => invoke($10, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1324 +assert_return(() => invoke($10, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1325 +assert_return(() => invoke($10, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1326 +assert_return(() => invoke($10, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1327 +assert_return(() => invoke($10, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1328 +assert_return(() => invoke($10, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1329 +assert_return(() => invoke($10, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1330 +assert_return(() => invoke($10, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1331 +assert_return(() => invoke($10, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1332 +assert_return(() => invoke($10, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1333 +assert_return(() => invoke($10, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1334 +assert_return(() => invoke($10, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1335 +assert_return(() => invoke($10, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1336 +assert_return(() => invoke($10, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1337 +assert_return(() => invoke($10, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1338 +assert_return(() => invoke($10, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1339 +assert_return(() => invoke($10, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1340 +assert_return(() => invoke($10, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1341 +assert_return(() => invoke($10, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1342 +assert_return(() => invoke($10, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1343 +assert_return(() => invoke($10, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1344 +assert_return(() => invoke($10, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1345 +assert_return(() => invoke($10, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1346 +assert_return(() => invoke($10, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1347 +assert_return(() => invoke($10, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1348 +assert_return(() => invoke($10, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1349 +assert_return(() => invoke($10, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1350 +assert_return(() => invoke($10, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1351 +assert_return(() => invoke($10, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1352 +assert_return(() => invoke($10, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1353 +assert_return(() => invoke($10, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1354 +assert_return(() => invoke($10, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1355 +assert_return(() => invoke($10, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1356 +assert_return(() => invoke($10, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1357 +assert_return(() => invoke($10, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1358 +assert_return(() => invoke($10, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1359 +assert_return(() => invoke($10, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1360 +assert_return(() => invoke($10, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1361 +assert_return(() => invoke($10, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1362 +assert_return(() => invoke($10, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1363 +assert_return(() => invoke($10, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1364 +assert_return(() => invoke($10, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1365 +assert_return(() => invoke($10, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1366 +assert_return(() => invoke($10, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1367 +assert_return(() => invoke($10, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1368 +assert_return(() => invoke($10, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1369 +assert_return(() => invoke($10, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1370 +assert_return(() => invoke($10, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1371 +assert_return(() => invoke($10, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1372 +assert_return(() => invoke($10, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1373 +assert_return(() => invoke($10, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1374 +assert_return(() => invoke($10, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1375 +assert_return(() => invoke($10, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1376 +assert_return(() => invoke($10, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1377 +assert_return(() => invoke($10, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1378 +assert_return(() => invoke($10, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1379 +assert_return(() => invoke($10, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1380 +assert_return(() => invoke($10, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1381 +assert_return(() => invoke($10, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1382 +assert_return(() => invoke($10, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1383 +assert_return(() => invoke($10, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1384 +assert_return(() => invoke($10, `load8_u`, [61490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1385 +assert_return(() => invoke($10, `load8_u`, [61689]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1386 +assert_return(() => invoke($10, `load8_u`, [61888]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1387 +assert_return(() => invoke($10, `load8_u`, [62087]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1388 +assert_return(() => invoke($10, `load8_u`, [62286]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1389 +assert_return(() => invoke($10, `load8_u`, [62485]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1390 +assert_return(() => invoke($10, `load8_u`, [62684]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1391 +assert_return(() => invoke($10, `load8_u`, [62883]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1392 +assert_return(() => invoke($10, `load8_u`, [63082]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1393 +assert_return(() => invoke($10, `load8_u`, [63281]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1394 +assert_return(() => invoke($10, `load8_u`, [63480]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1395 +assert_return(() => invoke($10, `load8_u`, [63679]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1396 +assert_return(() => invoke($10, `load8_u`, [63878]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1397 +assert_return(() => invoke($10, `load8_u`, [64077]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1398 +assert_return(() => invoke($10, `load8_u`, [64276]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1399 +assert_return(() => invoke($10, `load8_u`, [64475]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1400 +assert_return(() => invoke($10, `load8_u`, [64674]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1401 +assert_return(() => invoke($10, `load8_u`, [64873]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1402 +assert_return(() => invoke($10, `load8_u`, [65072]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1403 +assert_return(() => invoke($10, `load8_u`, [65271]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1404 +assert_return(() => invoke($10, `load8_u`, [65470]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1405 +assert_return(() => invoke($10, `load8_u`, [65516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1406 +assert_return(() => invoke($10, `load8_u`, [65517]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:1407 +assert_return(() => invoke($10, `load8_u`, [65518]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:1408 +assert_return(() => invoke($10, `load8_u`, [65519]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:1409 +assert_return(() => invoke($10, `load8_u`, [65520]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:1410 +assert_return(() => invoke($10, `load8_u`, [65521]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:1411 +assert_return(() => invoke($10, `load8_u`, [65522]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:1412 +assert_return(() => invoke($10, `load8_u`, [65523]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:1413 +assert_return(() => invoke($10, `load8_u`, [65524]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:1414 +assert_return(() => invoke($10, `load8_u`, [65525]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:1415 +assert_return(() => invoke($10, `load8_u`, [65526]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:1416 +assert_return(() => invoke($10, `load8_u`, [65527]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:1417 +assert_return(() => invoke($10, `load8_u`, [65528]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:1418 +assert_return(() => invoke($10, `load8_u`, [65529]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:1419 +assert_return(() => invoke($10, `load8_u`, [65530]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:1420 +assert_return(() => invoke($10, `load8_u`, [65531]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:1421 +assert_return(() => invoke($10, `load8_u`, [65532]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:1422 +assert_return(() => invoke($10, `load8_u`, [65533]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:1423 +assert_return(() => invoke($10, `load8_u`, [65534]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:1424 +assert_return(() => invoke($10, `load8_u`, [65535]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:1426 +let $11 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 65515) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13\\14") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:1434 +assert_trap(() => invoke($11, `run`, [0, 65515, 39]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:1437 +assert_return(() => invoke($11, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1438 +assert_return(() => invoke($11, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1439 +assert_return(() => invoke($11, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1440 +assert_return(() => invoke($11, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1441 +assert_return(() => invoke($11, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1442 +assert_return(() => invoke($11, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1443 +assert_return(() => invoke($11, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1444 +assert_return(() => invoke($11, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1445 +assert_return(() => invoke($11, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1446 +assert_return(() => invoke($11, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1447 +assert_return(() => invoke($11, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1448 +assert_return(() => invoke($11, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1449 +assert_return(() => invoke($11, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1450 +assert_return(() => invoke($11, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1451 +assert_return(() => invoke($11, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1452 +assert_return(() => invoke($11, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1453 +assert_return(() => invoke($11, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1454 +assert_return(() => invoke($11, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1455 +assert_return(() => invoke($11, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1456 +assert_return(() => invoke($11, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1457 +assert_return(() => invoke($11, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1458 +assert_return(() => invoke($11, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1459 +assert_return(() => invoke($11, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1460 +assert_return(() => invoke($11, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1461 +assert_return(() => invoke($11, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1462 +assert_return(() => invoke($11, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1463 +assert_return(() => invoke($11, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1464 +assert_return(() => invoke($11, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1465 +assert_return(() => invoke($11, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1466 +assert_return(() => invoke($11, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1467 +assert_return(() => invoke($11, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1468 +assert_return(() => invoke($11, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1469 +assert_return(() => invoke($11, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1470 +assert_return(() => invoke($11, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1471 +assert_return(() => invoke($11, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1472 +assert_return(() => invoke($11, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1473 +assert_return(() => invoke($11, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1474 +assert_return(() => invoke($11, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1475 +assert_return(() => invoke($11, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1476 +assert_return(() => invoke($11, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1477 +assert_return(() => invoke($11, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1478 +assert_return(() => invoke($11, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1479 +assert_return(() => invoke($11, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1480 +assert_return(() => invoke($11, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1481 +assert_return(() => invoke($11, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1482 +assert_return(() => invoke($11, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1483 +assert_return(() => invoke($11, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1484 +assert_return(() => invoke($11, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1485 +assert_return(() => invoke($11, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1486 +assert_return(() => invoke($11, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1487 +assert_return(() => invoke($11, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1488 +assert_return(() => invoke($11, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1489 +assert_return(() => invoke($11, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1490 +assert_return(() => invoke($11, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1491 +assert_return(() => invoke($11, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1492 +assert_return(() => invoke($11, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1493 +assert_return(() => invoke($11, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1494 +assert_return(() => invoke($11, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1495 +assert_return(() => invoke($11, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1496 +assert_return(() => invoke($11, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1497 +assert_return(() => invoke($11, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1498 +assert_return(() => invoke($11, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1499 +assert_return(() => invoke($11, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1500 +assert_return(() => invoke($11, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1501 +assert_return(() => invoke($11, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1502 +assert_return(() => invoke($11, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1503 +assert_return(() => invoke($11, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1504 +assert_return(() => invoke($11, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1505 +assert_return(() => invoke($11, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1506 +assert_return(() => invoke($11, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1507 +assert_return(() => invoke($11, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1508 +assert_return(() => invoke($11, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1509 +assert_return(() => invoke($11, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1510 +assert_return(() => invoke($11, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1511 +assert_return(() => invoke($11, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1512 +assert_return(() => invoke($11, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1513 +assert_return(() => invoke($11, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1514 +assert_return(() => invoke($11, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1515 +assert_return(() => invoke($11, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1516 +assert_return(() => invoke($11, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1517 +assert_return(() => invoke($11, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1518 +assert_return(() => invoke($11, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1519 +assert_return(() => invoke($11, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1520 +assert_return(() => invoke($11, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1521 +assert_return(() => invoke($11, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1522 +assert_return(() => invoke($11, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1523 +assert_return(() => invoke($11, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1524 +assert_return(() => invoke($11, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1525 +assert_return(() => invoke($11, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1526 +assert_return(() => invoke($11, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1527 +assert_return(() => invoke($11, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1528 +assert_return(() => invoke($11, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1529 +assert_return(() => invoke($11, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1530 +assert_return(() => invoke($11, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1531 +assert_return(() => invoke($11, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1532 +assert_return(() => invoke($11, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1533 +assert_return(() => invoke($11, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1534 +assert_return(() => invoke($11, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1535 +assert_return(() => invoke($11, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1536 +assert_return(() => invoke($11, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1537 +assert_return(() => invoke($11, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1538 +assert_return(() => invoke($11, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1539 +assert_return(() => invoke($11, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1540 +assert_return(() => invoke($11, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1541 +assert_return(() => invoke($11, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1542 +assert_return(() => invoke($11, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1543 +assert_return(() => invoke($11, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1544 +assert_return(() => invoke($11, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1545 +assert_return(() => invoke($11, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1546 +assert_return(() => invoke($11, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1547 +assert_return(() => invoke($11, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1548 +assert_return(() => invoke($11, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1549 +assert_return(() => invoke($11, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1550 +assert_return(() => invoke($11, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1551 +assert_return(() => invoke($11, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1552 +assert_return(() => invoke($11, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1553 +assert_return(() => invoke($11, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1554 +assert_return(() => invoke($11, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1555 +assert_return(() => invoke($11, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1556 +assert_return(() => invoke($11, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1557 +assert_return(() => invoke($11, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1558 +assert_return(() => invoke($11, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1559 +assert_return(() => invoke($11, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1560 +assert_return(() => invoke($11, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1561 +assert_return(() => invoke($11, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1562 +assert_return(() => invoke($11, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1563 +assert_return(() => invoke($11, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1564 +assert_return(() => invoke($11, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1565 +assert_return(() => invoke($11, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1566 +assert_return(() => invoke($11, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1567 +assert_return(() => invoke($11, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1568 +assert_return(() => invoke($11, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1569 +assert_return(() => invoke($11, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1570 +assert_return(() => invoke($11, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1571 +assert_return(() => invoke($11, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1572 +assert_return(() => invoke($11, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1573 +assert_return(() => invoke($11, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1574 +assert_return(() => invoke($11, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1575 +assert_return(() => invoke($11, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1576 +assert_return(() => invoke($11, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1577 +assert_return(() => invoke($11, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1578 +assert_return(() => invoke($11, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1579 +assert_return(() => invoke($11, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1580 +assert_return(() => invoke($11, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1581 +assert_return(() => invoke($11, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1582 +assert_return(() => invoke($11, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1583 +assert_return(() => invoke($11, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1584 +assert_return(() => invoke($11, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1585 +assert_return(() => invoke($11, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1586 +assert_return(() => invoke($11, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1587 +assert_return(() => invoke($11, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1588 +assert_return(() => invoke($11, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1589 +assert_return(() => invoke($11, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1590 +assert_return(() => invoke($11, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1591 +assert_return(() => invoke($11, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1592 +assert_return(() => invoke($11, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1593 +assert_return(() => invoke($11, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1594 +assert_return(() => invoke($11, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1595 +assert_return(() => invoke($11, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1596 +assert_return(() => invoke($11, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1597 +assert_return(() => invoke($11, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1598 +assert_return(() => invoke($11, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1599 +assert_return(() => invoke($11, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1600 +assert_return(() => invoke($11, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1601 +assert_return(() => invoke($11, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1602 +assert_return(() => invoke($11, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1603 +assert_return(() => invoke($11, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1604 +assert_return(() => invoke($11, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1605 +assert_return(() => invoke($11, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1606 +assert_return(() => invoke($11, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1607 +assert_return(() => invoke($11, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1608 +assert_return(() => invoke($11, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1609 +assert_return(() => invoke($11, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1610 +assert_return(() => invoke($11, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1611 +assert_return(() => invoke($11, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1612 +assert_return(() => invoke($11, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1613 +assert_return(() => invoke($11, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1614 +assert_return(() => invoke($11, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1615 +assert_return(() => invoke($11, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1616 +assert_return(() => invoke($11, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1617 +assert_return(() => invoke($11, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1618 +assert_return(() => invoke($11, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1619 +assert_return(() => invoke($11, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1620 +assert_return(() => invoke($11, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1621 +assert_return(() => invoke($11, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1622 +assert_return(() => invoke($11, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1623 +assert_return(() => invoke($11, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1624 +assert_return(() => invoke($11, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1625 +assert_return(() => invoke($11, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1626 +assert_return(() => invoke($11, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1627 +assert_return(() => invoke($11, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1628 +assert_return(() => invoke($11, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1629 +assert_return(() => invoke($11, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1630 +assert_return(() => invoke($11, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1631 +assert_return(() => invoke($11, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1632 +assert_return(() => invoke($11, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1633 +assert_return(() => invoke($11, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1634 +assert_return(() => invoke($11, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1635 +assert_return(() => invoke($11, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1636 +assert_return(() => invoke($11, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1637 +assert_return(() => invoke($11, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1638 +assert_return(() => invoke($11, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1639 +assert_return(() => invoke($11, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1640 +assert_return(() => invoke($11, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1641 +assert_return(() => invoke($11, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1642 +assert_return(() => invoke($11, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1643 +assert_return(() => invoke($11, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1644 +assert_return(() => invoke($11, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1645 +assert_return(() => invoke($11, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1646 +assert_return(() => invoke($11, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1647 +assert_return(() => invoke($11, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1648 +assert_return(() => invoke($11, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1649 +assert_return(() => invoke($11, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1650 +assert_return(() => invoke($11, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1651 +assert_return(() => invoke($11, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1652 +assert_return(() => invoke($11, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1653 +assert_return(() => invoke($11, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1654 +assert_return(() => invoke($11, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1655 +assert_return(() => invoke($11, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1656 +assert_return(() => invoke($11, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1657 +assert_return(() => invoke($11, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1658 +assert_return(() => invoke($11, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1659 +assert_return(() => invoke($11, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1660 +assert_return(() => invoke($11, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1661 +assert_return(() => invoke($11, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1662 +assert_return(() => invoke($11, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1663 +assert_return(() => invoke($11, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1664 +assert_return(() => invoke($11, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1665 +assert_return(() => invoke($11, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1666 +assert_return(() => invoke($11, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1667 +assert_return(() => invoke($11, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1668 +assert_return(() => invoke($11, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1669 +assert_return(() => invoke($11, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1670 +assert_return(() => invoke($11, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1671 +assert_return(() => invoke($11, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1672 +assert_return(() => invoke($11, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1673 +assert_return(() => invoke($11, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1674 +assert_return(() => invoke($11, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1675 +assert_return(() => invoke($11, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1676 +assert_return(() => invoke($11, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1677 +assert_return(() => invoke($11, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1678 +assert_return(() => invoke($11, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1679 +assert_return(() => invoke($11, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1680 +assert_return(() => invoke($11, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1681 +assert_return(() => invoke($11, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1682 +assert_return(() => invoke($11, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1683 +assert_return(() => invoke($11, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1684 +assert_return(() => invoke($11, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1685 +assert_return(() => invoke($11, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1686 +assert_return(() => invoke($11, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1687 +assert_return(() => invoke($11, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1688 +assert_return(() => invoke($11, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1689 +assert_return(() => invoke($11, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1690 +assert_return(() => invoke($11, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1691 +assert_return(() => invoke($11, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1692 +assert_return(() => invoke($11, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1693 +assert_return(() => invoke($11, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1694 +assert_return(() => invoke($11, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1695 +assert_return(() => invoke($11, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1696 +assert_return(() => invoke($11, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1697 +assert_return(() => invoke($11, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1698 +assert_return(() => invoke($11, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1699 +assert_return(() => invoke($11, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1700 +assert_return(() => invoke($11, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1701 +assert_return(() => invoke($11, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1702 +assert_return(() => invoke($11, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1703 +assert_return(() => invoke($11, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1704 +assert_return(() => invoke($11, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1705 +assert_return(() => invoke($11, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1706 +assert_return(() => invoke($11, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1707 +assert_return(() => invoke($11, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1708 +assert_return(() => invoke($11, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1709 +assert_return(() => invoke($11, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1710 +assert_return(() => invoke($11, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1711 +assert_return(() => invoke($11, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1712 +assert_return(() => invoke($11, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1713 +assert_return(() => invoke($11, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1714 +assert_return(() => invoke($11, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1715 +assert_return(() => invoke($11, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1716 +assert_return(() => invoke($11, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1717 +assert_return(() => invoke($11, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1718 +assert_return(() => invoke($11, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1719 +assert_return(() => invoke($11, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1720 +assert_return(() => invoke($11, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1721 +assert_return(() => invoke($11, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1722 +assert_return(() => invoke($11, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1723 +assert_return(() => invoke($11, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1724 +assert_return(() => invoke($11, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1725 +assert_return(() => invoke($11, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1726 +assert_return(() => invoke($11, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1727 +assert_return(() => invoke($11, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1728 +assert_return(() => invoke($11, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1729 +assert_return(() => invoke($11, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1730 +assert_return(() => invoke($11, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1731 +assert_return(() => invoke($11, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1732 +assert_return(() => invoke($11, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1733 +assert_return(() => invoke($11, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1734 +assert_return(() => invoke($11, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1735 +assert_return(() => invoke($11, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1736 +assert_return(() => invoke($11, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1737 +assert_return(() => invoke($11, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1738 +assert_return(() => invoke($11, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1739 +assert_return(() => invoke($11, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1740 +assert_return(() => invoke($11, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1741 +assert_return(() => invoke($11, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1742 +assert_return(() => invoke($11, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1743 +assert_return(() => invoke($11, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1744 +assert_return(() => invoke($11, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1745 +assert_return(() => invoke($11, `load8_u`, [61490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1746 +assert_return(() => invoke($11, `load8_u`, [61689]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1747 +assert_return(() => invoke($11, `load8_u`, [61888]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1748 +assert_return(() => invoke($11, `load8_u`, [62087]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1749 +assert_return(() => invoke($11, `load8_u`, [62286]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1750 +assert_return(() => invoke($11, `load8_u`, [62485]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1751 +assert_return(() => invoke($11, `load8_u`, [62684]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1752 +assert_return(() => invoke($11, `load8_u`, [62883]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1753 +assert_return(() => invoke($11, `load8_u`, [63082]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1754 +assert_return(() => invoke($11, `load8_u`, [63281]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1755 +assert_return(() => invoke($11, `load8_u`, [63480]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1756 +assert_return(() => invoke($11, `load8_u`, [63679]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1757 +assert_return(() => invoke($11, `load8_u`, [63878]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1758 +assert_return(() => invoke($11, `load8_u`, [64077]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1759 +assert_return(() => invoke($11, `load8_u`, [64276]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1760 +assert_return(() => invoke($11, `load8_u`, [64475]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1761 +assert_return(() => invoke($11, `load8_u`, [64674]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1762 +assert_return(() => invoke($11, `load8_u`, [64873]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1763 +assert_return(() => invoke($11, `load8_u`, [65072]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1764 +assert_return(() => invoke($11, `load8_u`, [65271]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1765 +assert_return(() => invoke($11, `load8_u`, [65470]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1766 +assert_return(() => invoke($11, `load8_u`, [65515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1767 +assert_return(() => invoke($11, `load8_u`, [65516]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:1768 +assert_return(() => invoke($11, `load8_u`, [65517]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:1769 +assert_return(() => invoke($11, `load8_u`, [65518]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:1770 +assert_return(() => invoke($11, `load8_u`, [65519]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:1771 +assert_return(() => invoke($11, `load8_u`, [65520]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:1772 +assert_return(() => invoke($11, `load8_u`, [65521]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:1773 +assert_return(() => invoke($11, `load8_u`, [65522]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:1774 +assert_return(() => invoke($11, `load8_u`, [65523]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:1775 +assert_return(() => invoke($11, `load8_u`, [65524]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:1776 +assert_return(() => invoke($11, `load8_u`, [65525]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:1777 +assert_return(() => invoke($11, `load8_u`, [65526]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:1778 +assert_return(() => invoke($11, `load8_u`, [65527]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:1779 +assert_return(() => invoke($11, `load8_u`, [65528]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:1780 +assert_return(() => invoke($11, `load8_u`, [65529]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:1781 +assert_return(() => invoke($11, `load8_u`, [65530]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:1782 +assert_return(() => invoke($11, `load8_u`, [65531]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:1783 +assert_return(() => invoke($11, `load8_u`, [65532]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:1784 +assert_return(() => invoke($11, `load8_u`, [65533]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:1785 +assert_return(() => invoke($11, `load8_u`, [65534]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:1786 +assert_return(() => invoke($11, `load8_u`, [65535]), [value("i32", 20)]); + +// ./test/core/memory_copy.wast:1788 +let $12 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 65486) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:1796 +assert_trap(() => invoke($12, `run`, [65516, 65486, 40]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:1799 +assert_return(() => invoke($12, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1800 +assert_return(() => invoke($12, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1801 +assert_return(() => invoke($12, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1802 +assert_return(() => invoke($12, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1803 +assert_return(() => invoke($12, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1804 +assert_return(() => invoke($12, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1805 +assert_return(() => invoke($12, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1806 +assert_return(() => invoke($12, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1807 +assert_return(() => invoke($12, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1808 +assert_return(() => invoke($12, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1809 +assert_return(() => invoke($12, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1810 +assert_return(() => invoke($12, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1811 +assert_return(() => invoke($12, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1812 +assert_return(() => invoke($12, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1813 +assert_return(() => invoke($12, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1814 +assert_return(() => invoke($12, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1815 +assert_return(() => invoke($12, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1816 +assert_return(() => invoke($12, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1817 +assert_return(() => invoke($12, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1818 +assert_return(() => invoke($12, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1819 +assert_return(() => invoke($12, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1820 +assert_return(() => invoke($12, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1821 +assert_return(() => invoke($12, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1822 +assert_return(() => invoke($12, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1823 +assert_return(() => invoke($12, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1824 +assert_return(() => invoke($12, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1825 +assert_return(() => invoke($12, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1826 +assert_return(() => invoke($12, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1827 +assert_return(() => invoke($12, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1828 +assert_return(() => invoke($12, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1829 +assert_return(() => invoke($12, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1830 +assert_return(() => invoke($12, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1831 +assert_return(() => invoke($12, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1832 +assert_return(() => invoke($12, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1833 +assert_return(() => invoke($12, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1834 +assert_return(() => invoke($12, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1835 +assert_return(() => invoke($12, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1836 +assert_return(() => invoke($12, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1837 +assert_return(() => invoke($12, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1838 +assert_return(() => invoke($12, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1839 +assert_return(() => invoke($12, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1840 +assert_return(() => invoke($12, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1841 +assert_return(() => invoke($12, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1842 +assert_return(() => invoke($12, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1843 +assert_return(() => invoke($12, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1844 +assert_return(() => invoke($12, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1845 +assert_return(() => invoke($12, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1846 +assert_return(() => invoke($12, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1847 +assert_return(() => invoke($12, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1848 +assert_return(() => invoke($12, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1849 +assert_return(() => invoke($12, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1850 +assert_return(() => invoke($12, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1851 +assert_return(() => invoke($12, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1852 +assert_return(() => invoke($12, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1853 +assert_return(() => invoke($12, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1854 +assert_return(() => invoke($12, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1855 +assert_return(() => invoke($12, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1856 +assert_return(() => invoke($12, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1857 +assert_return(() => invoke($12, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1858 +assert_return(() => invoke($12, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1859 +assert_return(() => invoke($12, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1860 +assert_return(() => invoke($12, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1861 +assert_return(() => invoke($12, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1862 +assert_return(() => invoke($12, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1863 +assert_return(() => invoke($12, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1864 +assert_return(() => invoke($12, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1865 +assert_return(() => invoke($12, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1866 +assert_return(() => invoke($12, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1867 +assert_return(() => invoke($12, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1868 +assert_return(() => invoke($12, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1869 +assert_return(() => invoke($12, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1870 +assert_return(() => invoke($12, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1871 +assert_return(() => invoke($12, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1872 +assert_return(() => invoke($12, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1873 +assert_return(() => invoke($12, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1874 +assert_return(() => invoke($12, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1875 +assert_return(() => invoke($12, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1876 +assert_return(() => invoke($12, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1877 +assert_return(() => invoke($12, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1878 +assert_return(() => invoke($12, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1879 +assert_return(() => invoke($12, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1880 +assert_return(() => invoke($12, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1881 +assert_return(() => invoke($12, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1882 +assert_return(() => invoke($12, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1883 +assert_return(() => invoke($12, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1884 +assert_return(() => invoke($12, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1885 +assert_return(() => invoke($12, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1886 +assert_return(() => invoke($12, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1887 +assert_return(() => invoke($12, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1888 +assert_return(() => invoke($12, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1889 +assert_return(() => invoke($12, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1890 +assert_return(() => invoke($12, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1891 +assert_return(() => invoke($12, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1892 +assert_return(() => invoke($12, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1893 +assert_return(() => invoke($12, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1894 +assert_return(() => invoke($12, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1895 +assert_return(() => invoke($12, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1896 +assert_return(() => invoke($12, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1897 +assert_return(() => invoke($12, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1898 +assert_return(() => invoke($12, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1899 +assert_return(() => invoke($12, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1900 +assert_return(() => invoke($12, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1901 +assert_return(() => invoke($12, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1902 +assert_return(() => invoke($12, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1903 +assert_return(() => invoke($12, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1904 +assert_return(() => invoke($12, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1905 +assert_return(() => invoke($12, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1906 +assert_return(() => invoke($12, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1907 +assert_return(() => invoke($12, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1908 +assert_return(() => invoke($12, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1909 +assert_return(() => invoke($12, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1910 +assert_return(() => invoke($12, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1911 +assert_return(() => invoke($12, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1912 +assert_return(() => invoke($12, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1913 +assert_return(() => invoke($12, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1914 +assert_return(() => invoke($12, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1915 +assert_return(() => invoke($12, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1916 +assert_return(() => invoke($12, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1917 +assert_return(() => invoke($12, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1918 +assert_return(() => invoke($12, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1919 +assert_return(() => invoke($12, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1920 +assert_return(() => invoke($12, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1921 +assert_return(() => invoke($12, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1922 +assert_return(() => invoke($12, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1923 +assert_return(() => invoke($12, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1924 +assert_return(() => invoke($12, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1925 +assert_return(() => invoke($12, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1926 +assert_return(() => invoke($12, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1927 +assert_return(() => invoke($12, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1928 +assert_return(() => invoke($12, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1929 +assert_return(() => invoke($12, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1930 +assert_return(() => invoke($12, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1931 +assert_return(() => invoke($12, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1932 +assert_return(() => invoke($12, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1933 +assert_return(() => invoke($12, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1934 +assert_return(() => invoke($12, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1935 +assert_return(() => invoke($12, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1936 +assert_return(() => invoke($12, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1937 +assert_return(() => invoke($12, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1938 +assert_return(() => invoke($12, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1939 +assert_return(() => invoke($12, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1940 +assert_return(() => invoke($12, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1941 +assert_return(() => invoke($12, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1942 +assert_return(() => invoke($12, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1943 +assert_return(() => invoke($12, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1944 +assert_return(() => invoke($12, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1945 +assert_return(() => invoke($12, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1946 +assert_return(() => invoke($12, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1947 +assert_return(() => invoke($12, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1948 +assert_return(() => invoke($12, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1949 +assert_return(() => invoke($12, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1950 +assert_return(() => invoke($12, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1951 +assert_return(() => invoke($12, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1952 +assert_return(() => invoke($12, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1953 +assert_return(() => invoke($12, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1954 +assert_return(() => invoke($12, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1955 +assert_return(() => invoke($12, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1956 +assert_return(() => invoke($12, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1957 +assert_return(() => invoke($12, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1958 +assert_return(() => invoke($12, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1959 +assert_return(() => invoke($12, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1960 +assert_return(() => invoke($12, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1961 +assert_return(() => invoke($12, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1962 +assert_return(() => invoke($12, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1963 +assert_return(() => invoke($12, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1964 +assert_return(() => invoke($12, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1965 +assert_return(() => invoke($12, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1966 +assert_return(() => invoke($12, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1967 +assert_return(() => invoke($12, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1968 +assert_return(() => invoke($12, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1969 +assert_return(() => invoke($12, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1970 +assert_return(() => invoke($12, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1971 +assert_return(() => invoke($12, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1972 +assert_return(() => invoke($12, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1973 +assert_return(() => invoke($12, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1974 +assert_return(() => invoke($12, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1975 +assert_return(() => invoke($12, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1976 +assert_return(() => invoke($12, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1977 +assert_return(() => invoke($12, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1978 +assert_return(() => invoke($12, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1979 +assert_return(() => invoke($12, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1980 +assert_return(() => invoke($12, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1981 +assert_return(() => invoke($12, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1982 +assert_return(() => invoke($12, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1983 +assert_return(() => invoke($12, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1984 +assert_return(() => invoke($12, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1985 +assert_return(() => invoke($12, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1986 +assert_return(() => invoke($12, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1987 +assert_return(() => invoke($12, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1988 +assert_return(() => invoke($12, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1989 +assert_return(() => invoke($12, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1990 +assert_return(() => invoke($12, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1991 +assert_return(() => invoke($12, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1992 +assert_return(() => invoke($12, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1993 +assert_return(() => invoke($12, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1994 +assert_return(() => invoke($12, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1995 +assert_return(() => invoke($12, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1996 +assert_return(() => invoke($12, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1997 +assert_return(() => invoke($12, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1998 +assert_return(() => invoke($12, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:1999 +assert_return(() => invoke($12, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2000 +assert_return(() => invoke($12, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2001 +assert_return(() => invoke($12, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2002 +assert_return(() => invoke($12, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2003 +assert_return(() => invoke($12, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2004 +assert_return(() => invoke($12, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2005 +assert_return(() => invoke($12, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2006 +assert_return(() => invoke($12, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2007 +assert_return(() => invoke($12, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2008 +assert_return(() => invoke($12, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2009 +assert_return(() => invoke($12, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2010 +assert_return(() => invoke($12, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2011 +assert_return(() => invoke($12, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2012 +assert_return(() => invoke($12, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2013 +assert_return(() => invoke($12, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2014 +assert_return(() => invoke($12, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2015 +assert_return(() => invoke($12, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2016 +assert_return(() => invoke($12, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2017 +assert_return(() => invoke($12, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2018 +assert_return(() => invoke($12, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2019 +assert_return(() => invoke($12, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2020 +assert_return(() => invoke($12, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2021 +assert_return(() => invoke($12, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2022 +assert_return(() => invoke($12, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2023 +assert_return(() => invoke($12, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2024 +assert_return(() => invoke($12, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2025 +assert_return(() => invoke($12, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2026 +assert_return(() => invoke($12, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2027 +assert_return(() => invoke($12, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2028 +assert_return(() => invoke($12, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2029 +assert_return(() => invoke($12, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2030 +assert_return(() => invoke($12, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2031 +assert_return(() => invoke($12, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2032 +assert_return(() => invoke($12, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2033 +assert_return(() => invoke($12, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2034 +assert_return(() => invoke($12, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2035 +assert_return(() => invoke($12, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2036 +assert_return(() => invoke($12, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2037 +assert_return(() => invoke($12, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2038 +assert_return(() => invoke($12, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2039 +assert_return(() => invoke($12, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2040 +assert_return(() => invoke($12, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2041 +assert_return(() => invoke($12, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2042 +assert_return(() => invoke($12, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2043 +assert_return(() => invoke($12, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2044 +assert_return(() => invoke($12, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2045 +assert_return(() => invoke($12, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2046 +assert_return(() => invoke($12, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2047 +assert_return(() => invoke($12, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2048 +assert_return(() => invoke($12, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2049 +assert_return(() => invoke($12, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2050 +assert_return(() => invoke($12, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2051 +assert_return(() => invoke($12, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2052 +assert_return(() => invoke($12, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2053 +assert_return(() => invoke($12, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2054 +assert_return(() => invoke($12, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2055 +assert_return(() => invoke($12, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2056 +assert_return(() => invoke($12, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2057 +assert_return(() => invoke($12, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2058 +assert_return(() => invoke($12, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2059 +assert_return(() => invoke($12, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2060 +assert_return(() => invoke($12, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2061 +assert_return(() => invoke($12, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2062 +assert_return(() => invoke($12, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2063 +assert_return(() => invoke($12, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2064 +assert_return(() => invoke($12, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2065 +assert_return(() => invoke($12, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2066 +assert_return(() => invoke($12, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2067 +assert_return(() => invoke($12, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2068 +assert_return(() => invoke($12, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2069 +assert_return(() => invoke($12, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2070 +assert_return(() => invoke($12, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2071 +assert_return(() => invoke($12, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2072 +assert_return(() => invoke($12, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2073 +assert_return(() => invoke($12, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2074 +assert_return(() => invoke($12, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2075 +assert_return(() => invoke($12, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2076 +assert_return(() => invoke($12, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2077 +assert_return(() => invoke($12, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2078 +assert_return(() => invoke($12, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2079 +assert_return(() => invoke($12, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2080 +assert_return(() => invoke($12, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2081 +assert_return(() => invoke($12, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2082 +assert_return(() => invoke($12, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2083 +assert_return(() => invoke($12, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2084 +assert_return(() => invoke($12, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2085 +assert_return(() => invoke($12, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2086 +assert_return(() => invoke($12, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2087 +assert_return(() => invoke($12, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2088 +assert_return(() => invoke($12, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2089 +assert_return(() => invoke($12, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2090 +assert_return(() => invoke($12, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2091 +assert_return(() => invoke($12, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2092 +assert_return(() => invoke($12, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2093 +assert_return(() => invoke($12, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2094 +assert_return(() => invoke($12, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2095 +assert_return(() => invoke($12, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2096 +assert_return(() => invoke($12, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2097 +assert_return(() => invoke($12, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2098 +assert_return(() => invoke($12, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2099 +assert_return(() => invoke($12, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2100 +assert_return(() => invoke($12, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2101 +assert_return(() => invoke($12, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2102 +assert_return(() => invoke($12, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2103 +assert_return(() => invoke($12, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2104 +assert_return(() => invoke($12, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2105 +assert_return(() => invoke($12, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2106 +assert_return(() => invoke($12, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2107 +assert_return(() => invoke($12, `load8_u`, [61490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2108 +assert_return(() => invoke($12, `load8_u`, [61689]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2109 +assert_return(() => invoke($12, `load8_u`, [61888]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2110 +assert_return(() => invoke($12, `load8_u`, [62087]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2111 +assert_return(() => invoke($12, `load8_u`, [62286]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2112 +assert_return(() => invoke($12, `load8_u`, [62485]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2113 +assert_return(() => invoke($12, `load8_u`, [62684]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2114 +assert_return(() => invoke($12, `load8_u`, [62883]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2115 +assert_return(() => invoke($12, `load8_u`, [63082]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2116 +assert_return(() => invoke($12, `load8_u`, [63281]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2117 +assert_return(() => invoke($12, `load8_u`, [63480]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2118 +assert_return(() => invoke($12, `load8_u`, [63679]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2119 +assert_return(() => invoke($12, `load8_u`, [63878]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2120 +assert_return(() => invoke($12, `load8_u`, [64077]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2121 +assert_return(() => invoke($12, `load8_u`, [64276]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2122 +assert_return(() => invoke($12, `load8_u`, [64475]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2123 +assert_return(() => invoke($12, `load8_u`, [64674]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2124 +assert_return(() => invoke($12, `load8_u`, [64873]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2125 +assert_return(() => invoke($12, `load8_u`, [65072]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2126 +assert_return(() => invoke($12, `load8_u`, [65271]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2127 +assert_return(() => invoke($12, `load8_u`, [65470]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2128 +assert_return(() => invoke($12, `load8_u`, [65486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2129 +assert_return(() => invoke($12, `load8_u`, [65487]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:2130 +assert_return(() => invoke($12, `load8_u`, [65488]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:2131 +assert_return(() => invoke($12, `load8_u`, [65489]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:2132 +assert_return(() => invoke($12, `load8_u`, [65490]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:2133 +assert_return(() => invoke($12, `load8_u`, [65491]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:2134 +assert_return(() => invoke($12, `load8_u`, [65492]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:2135 +assert_return(() => invoke($12, `load8_u`, [65493]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:2136 +assert_return(() => invoke($12, `load8_u`, [65494]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:2137 +assert_return(() => invoke($12, `load8_u`, [65495]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:2138 +assert_return(() => invoke($12, `load8_u`, [65496]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:2139 +assert_return(() => invoke($12, `load8_u`, [65497]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:2140 +assert_return(() => invoke($12, `load8_u`, [65498]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:2141 +assert_return(() => invoke($12, `load8_u`, [65499]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:2142 +assert_return(() => invoke($12, `load8_u`, [65500]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:2143 +assert_return(() => invoke($12, `load8_u`, [65501]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:2144 +assert_return(() => invoke($12, `load8_u`, [65502]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:2145 +assert_return(() => invoke($12, `load8_u`, [65503]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:2146 +assert_return(() => invoke($12, `load8_u`, [65504]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:2147 +assert_return(() => invoke($12, `load8_u`, [65505]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:2149 +let $13 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 65516) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:2157 +assert_trap(() => invoke($13, `run`, [65486, 65516, 40]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:2160 +assert_return(() => invoke($13, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2161 +assert_return(() => invoke($13, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2162 +assert_return(() => invoke($13, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2163 +assert_return(() => invoke($13, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2164 +assert_return(() => invoke($13, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2165 +assert_return(() => invoke($13, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2166 +assert_return(() => invoke($13, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2167 +assert_return(() => invoke($13, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2168 +assert_return(() => invoke($13, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2169 +assert_return(() => invoke($13, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2170 +assert_return(() => invoke($13, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2171 +assert_return(() => invoke($13, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2172 +assert_return(() => invoke($13, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2173 +assert_return(() => invoke($13, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2174 +assert_return(() => invoke($13, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2175 +assert_return(() => invoke($13, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2176 +assert_return(() => invoke($13, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2177 +assert_return(() => invoke($13, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2178 +assert_return(() => invoke($13, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2179 +assert_return(() => invoke($13, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2180 +assert_return(() => invoke($13, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2181 +assert_return(() => invoke($13, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2182 +assert_return(() => invoke($13, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2183 +assert_return(() => invoke($13, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2184 +assert_return(() => invoke($13, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2185 +assert_return(() => invoke($13, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2186 +assert_return(() => invoke($13, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2187 +assert_return(() => invoke($13, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2188 +assert_return(() => invoke($13, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2189 +assert_return(() => invoke($13, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2190 +assert_return(() => invoke($13, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2191 +assert_return(() => invoke($13, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2192 +assert_return(() => invoke($13, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2193 +assert_return(() => invoke($13, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2194 +assert_return(() => invoke($13, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2195 +assert_return(() => invoke($13, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2196 +assert_return(() => invoke($13, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2197 +assert_return(() => invoke($13, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2198 +assert_return(() => invoke($13, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2199 +assert_return(() => invoke($13, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2200 +assert_return(() => invoke($13, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2201 +assert_return(() => invoke($13, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2202 +assert_return(() => invoke($13, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2203 +assert_return(() => invoke($13, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2204 +assert_return(() => invoke($13, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2205 +assert_return(() => invoke($13, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2206 +assert_return(() => invoke($13, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2207 +assert_return(() => invoke($13, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2208 +assert_return(() => invoke($13, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2209 +assert_return(() => invoke($13, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2210 +assert_return(() => invoke($13, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2211 +assert_return(() => invoke($13, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2212 +assert_return(() => invoke($13, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2213 +assert_return(() => invoke($13, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2214 +assert_return(() => invoke($13, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2215 +assert_return(() => invoke($13, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2216 +assert_return(() => invoke($13, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2217 +assert_return(() => invoke($13, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2218 +assert_return(() => invoke($13, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2219 +assert_return(() => invoke($13, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2220 +assert_return(() => invoke($13, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2221 +assert_return(() => invoke($13, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2222 +assert_return(() => invoke($13, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2223 +assert_return(() => invoke($13, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2224 +assert_return(() => invoke($13, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2225 +assert_return(() => invoke($13, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2226 +assert_return(() => invoke($13, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2227 +assert_return(() => invoke($13, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2228 +assert_return(() => invoke($13, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2229 +assert_return(() => invoke($13, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2230 +assert_return(() => invoke($13, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2231 +assert_return(() => invoke($13, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2232 +assert_return(() => invoke($13, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2233 +assert_return(() => invoke($13, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2234 +assert_return(() => invoke($13, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2235 +assert_return(() => invoke($13, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2236 +assert_return(() => invoke($13, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2237 +assert_return(() => invoke($13, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2238 +assert_return(() => invoke($13, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2239 +assert_return(() => invoke($13, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2240 +assert_return(() => invoke($13, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2241 +assert_return(() => invoke($13, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2242 +assert_return(() => invoke($13, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2243 +assert_return(() => invoke($13, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2244 +assert_return(() => invoke($13, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2245 +assert_return(() => invoke($13, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2246 +assert_return(() => invoke($13, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2247 +assert_return(() => invoke($13, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2248 +assert_return(() => invoke($13, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2249 +assert_return(() => invoke($13, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2250 +assert_return(() => invoke($13, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2251 +assert_return(() => invoke($13, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2252 +assert_return(() => invoke($13, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2253 +assert_return(() => invoke($13, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2254 +assert_return(() => invoke($13, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2255 +assert_return(() => invoke($13, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2256 +assert_return(() => invoke($13, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2257 +assert_return(() => invoke($13, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2258 +assert_return(() => invoke($13, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2259 +assert_return(() => invoke($13, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2260 +assert_return(() => invoke($13, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2261 +assert_return(() => invoke($13, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2262 +assert_return(() => invoke($13, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2263 +assert_return(() => invoke($13, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2264 +assert_return(() => invoke($13, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2265 +assert_return(() => invoke($13, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2266 +assert_return(() => invoke($13, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2267 +assert_return(() => invoke($13, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2268 +assert_return(() => invoke($13, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2269 +assert_return(() => invoke($13, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2270 +assert_return(() => invoke($13, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2271 +assert_return(() => invoke($13, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2272 +assert_return(() => invoke($13, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2273 +assert_return(() => invoke($13, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2274 +assert_return(() => invoke($13, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2275 +assert_return(() => invoke($13, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2276 +assert_return(() => invoke($13, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2277 +assert_return(() => invoke($13, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2278 +assert_return(() => invoke($13, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2279 +assert_return(() => invoke($13, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2280 +assert_return(() => invoke($13, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2281 +assert_return(() => invoke($13, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2282 +assert_return(() => invoke($13, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2283 +assert_return(() => invoke($13, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2284 +assert_return(() => invoke($13, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2285 +assert_return(() => invoke($13, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2286 +assert_return(() => invoke($13, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2287 +assert_return(() => invoke($13, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2288 +assert_return(() => invoke($13, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2289 +assert_return(() => invoke($13, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2290 +assert_return(() => invoke($13, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2291 +assert_return(() => invoke($13, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2292 +assert_return(() => invoke($13, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2293 +assert_return(() => invoke($13, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2294 +assert_return(() => invoke($13, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2295 +assert_return(() => invoke($13, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2296 +assert_return(() => invoke($13, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2297 +assert_return(() => invoke($13, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2298 +assert_return(() => invoke($13, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2299 +assert_return(() => invoke($13, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2300 +assert_return(() => invoke($13, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2301 +assert_return(() => invoke($13, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2302 +assert_return(() => invoke($13, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2303 +assert_return(() => invoke($13, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2304 +assert_return(() => invoke($13, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2305 +assert_return(() => invoke($13, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2306 +assert_return(() => invoke($13, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2307 +assert_return(() => invoke($13, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2308 +assert_return(() => invoke($13, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2309 +assert_return(() => invoke($13, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2310 +assert_return(() => invoke($13, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2311 +assert_return(() => invoke($13, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2312 +assert_return(() => invoke($13, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2313 +assert_return(() => invoke($13, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2314 +assert_return(() => invoke($13, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2315 +assert_return(() => invoke($13, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2316 +assert_return(() => invoke($13, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2317 +assert_return(() => invoke($13, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2318 +assert_return(() => invoke($13, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2319 +assert_return(() => invoke($13, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2320 +assert_return(() => invoke($13, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2321 +assert_return(() => invoke($13, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2322 +assert_return(() => invoke($13, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2323 +assert_return(() => invoke($13, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2324 +assert_return(() => invoke($13, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2325 +assert_return(() => invoke($13, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2326 +assert_return(() => invoke($13, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2327 +assert_return(() => invoke($13, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2328 +assert_return(() => invoke($13, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2329 +assert_return(() => invoke($13, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2330 +assert_return(() => invoke($13, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2331 +assert_return(() => invoke($13, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2332 +assert_return(() => invoke($13, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2333 +assert_return(() => invoke($13, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2334 +assert_return(() => invoke($13, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2335 +assert_return(() => invoke($13, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2336 +assert_return(() => invoke($13, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2337 +assert_return(() => invoke($13, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2338 +assert_return(() => invoke($13, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2339 +assert_return(() => invoke($13, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2340 +assert_return(() => invoke($13, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2341 +assert_return(() => invoke($13, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2342 +assert_return(() => invoke($13, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2343 +assert_return(() => invoke($13, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2344 +assert_return(() => invoke($13, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2345 +assert_return(() => invoke($13, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2346 +assert_return(() => invoke($13, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2347 +assert_return(() => invoke($13, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2348 +assert_return(() => invoke($13, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2349 +assert_return(() => invoke($13, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2350 +assert_return(() => invoke($13, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2351 +assert_return(() => invoke($13, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2352 +assert_return(() => invoke($13, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2353 +assert_return(() => invoke($13, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2354 +assert_return(() => invoke($13, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2355 +assert_return(() => invoke($13, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2356 +assert_return(() => invoke($13, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2357 +assert_return(() => invoke($13, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2358 +assert_return(() => invoke($13, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2359 +assert_return(() => invoke($13, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2360 +assert_return(() => invoke($13, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2361 +assert_return(() => invoke($13, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2362 +assert_return(() => invoke($13, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2363 +assert_return(() => invoke($13, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2364 +assert_return(() => invoke($13, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2365 +assert_return(() => invoke($13, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2366 +assert_return(() => invoke($13, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2367 +assert_return(() => invoke($13, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2368 +assert_return(() => invoke($13, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2369 +assert_return(() => invoke($13, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2370 +assert_return(() => invoke($13, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2371 +assert_return(() => invoke($13, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2372 +assert_return(() => invoke($13, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2373 +assert_return(() => invoke($13, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2374 +assert_return(() => invoke($13, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2375 +assert_return(() => invoke($13, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2376 +assert_return(() => invoke($13, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2377 +assert_return(() => invoke($13, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2378 +assert_return(() => invoke($13, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2379 +assert_return(() => invoke($13, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2380 +assert_return(() => invoke($13, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2381 +assert_return(() => invoke($13, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2382 +assert_return(() => invoke($13, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2383 +assert_return(() => invoke($13, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2384 +assert_return(() => invoke($13, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2385 +assert_return(() => invoke($13, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2386 +assert_return(() => invoke($13, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2387 +assert_return(() => invoke($13, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2388 +assert_return(() => invoke($13, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2389 +assert_return(() => invoke($13, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2390 +assert_return(() => invoke($13, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2391 +assert_return(() => invoke($13, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2392 +assert_return(() => invoke($13, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2393 +assert_return(() => invoke($13, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2394 +assert_return(() => invoke($13, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2395 +assert_return(() => invoke($13, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2396 +assert_return(() => invoke($13, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2397 +assert_return(() => invoke($13, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2398 +assert_return(() => invoke($13, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2399 +assert_return(() => invoke($13, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2400 +assert_return(() => invoke($13, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2401 +assert_return(() => invoke($13, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2402 +assert_return(() => invoke($13, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2403 +assert_return(() => invoke($13, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2404 +assert_return(() => invoke($13, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2405 +assert_return(() => invoke($13, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2406 +assert_return(() => invoke($13, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2407 +assert_return(() => invoke($13, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2408 +assert_return(() => invoke($13, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2409 +assert_return(() => invoke($13, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2410 +assert_return(() => invoke($13, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2411 +assert_return(() => invoke($13, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2412 +assert_return(() => invoke($13, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2413 +assert_return(() => invoke($13, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2414 +assert_return(() => invoke($13, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2415 +assert_return(() => invoke($13, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2416 +assert_return(() => invoke($13, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2417 +assert_return(() => invoke($13, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2418 +assert_return(() => invoke($13, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2419 +assert_return(() => invoke($13, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2420 +assert_return(() => invoke($13, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2421 +assert_return(() => invoke($13, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2422 +assert_return(() => invoke($13, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2423 +assert_return(() => invoke($13, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2424 +assert_return(() => invoke($13, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2425 +assert_return(() => invoke($13, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2426 +assert_return(() => invoke($13, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2427 +assert_return(() => invoke($13, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2428 +assert_return(() => invoke($13, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2429 +assert_return(() => invoke($13, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2430 +assert_return(() => invoke($13, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2431 +assert_return(() => invoke($13, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2432 +assert_return(() => invoke($13, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2433 +assert_return(() => invoke($13, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2434 +assert_return(() => invoke($13, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2435 +assert_return(() => invoke($13, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2436 +assert_return(() => invoke($13, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2437 +assert_return(() => invoke($13, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2438 +assert_return(() => invoke($13, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2439 +assert_return(() => invoke($13, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2440 +assert_return(() => invoke($13, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2441 +assert_return(() => invoke($13, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2442 +assert_return(() => invoke($13, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2443 +assert_return(() => invoke($13, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2444 +assert_return(() => invoke($13, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2445 +assert_return(() => invoke($13, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2446 +assert_return(() => invoke($13, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2447 +assert_return(() => invoke($13, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2448 +assert_return(() => invoke($13, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2449 +assert_return(() => invoke($13, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2450 +assert_return(() => invoke($13, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2451 +assert_return(() => invoke($13, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2452 +assert_return(() => invoke($13, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2453 +assert_return(() => invoke($13, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2454 +assert_return(() => invoke($13, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2455 +assert_return(() => invoke($13, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2456 +assert_return(() => invoke($13, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2457 +assert_return(() => invoke($13, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2458 +assert_return(() => invoke($13, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2459 +assert_return(() => invoke($13, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2460 +assert_return(() => invoke($13, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2461 +assert_return(() => invoke($13, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2462 +assert_return(() => invoke($13, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2463 +assert_return(() => invoke($13, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2464 +assert_return(() => invoke($13, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2465 +assert_return(() => invoke($13, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2466 +assert_return(() => invoke($13, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2467 +assert_return(() => invoke($13, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2468 +assert_return(() => invoke($13, `load8_u`, [61490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2469 +assert_return(() => invoke($13, `load8_u`, [61689]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2470 +assert_return(() => invoke($13, `load8_u`, [61888]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2471 +assert_return(() => invoke($13, `load8_u`, [62087]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2472 +assert_return(() => invoke($13, `load8_u`, [62286]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2473 +assert_return(() => invoke($13, `load8_u`, [62485]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2474 +assert_return(() => invoke($13, `load8_u`, [62684]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2475 +assert_return(() => invoke($13, `load8_u`, [62883]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2476 +assert_return(() => invoke($13, `load8_u`, [63082]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2477 +assert_return(() => invoke($13, `load8_u`, [63281]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2478 +assert_return(() => invoke($13, `load8_u`, [63480]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2479 +assert_return(() => invoke($13, `load8_u`, [63679]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2480 +assert_return(() => invoke($13, `load8_u`, [63878]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2481 +assert_return(() => invoke($13, `load8_u`, [64077]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2482 +assert_return(() => invoke($13, `load8_u`, [64276]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2483 +assert_return(() => invoke($13, `load8_u`, [64475]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2484 +assert_return(() => invoke($13, `load8_u`, [64674]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2485 +assert_return(() => invoke($13, `load8_u`, [64873]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2486 +assert_return(() => invoke($13, `load8_u`, [65072]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2487 +assert_return(() => invoke($13, `load8_u`, [65271]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2488 +assert_return(() => invoke($13, `load8_u`, [65470]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2489 +assert_return(() => invoke($13, `load8_u`, [65516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2490 +assert_return(() => invoke($13, `load8_u`, [65517]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:2491 +assert_return(() => invoke($13, `load8_u`, [65518]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:2492 +assert_return(() => invoke($13, `load8_u`, [65519]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:2493 +assert_return(() => invoke($13, `load8_u`, [65520]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:2494 +assert_return(() => invoke($13, `load8_u`, [65521]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:2495 +assert_return(() => invoke($13, `load8_u`, [65522]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:2496 +assert_return(() => invoke($13, `load8_u`, [65523]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:2497 +assert_return(() => invoke($13, `load8_u`, [65524]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:2498 +assert_return(() => invoke($13, `load8_u`, [65525]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:2499 +assert_return(() => invoke($13, `load8_u`, [65526]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:2500 +assert_return(() => invoke($13, `load8_u`, [65527]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:2501 +assert_return(() => invoke($13, `load8_u`, [65528]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:2502 +assert_return(() => invoke($13, `load8_u`, [65529]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:2503 +assert_return(() => invoke($13, `load8_u`, [65530]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:2504 +assert_return(() => invoke($13, `load8_u`, [65531]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:2505 +assert_return(() => invoke($13, `load8_u`, [65532]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:2506 +assert_return(() => invoke($13, `load8_u`, [65533]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:2507 +assert_return(() => invoke($13, `load8_u`, [65534]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:2508 +assert_return(() => invoke($13, `load8_u`, [65535]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:2510 +let $14 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 65506) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:2518 +assert_trap(() => invoke($14, `run`, [65516, 65506, 40]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:2521 +assert_return(() => invoke($14, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2522 +assert_return(() => invoke($14, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2523 +assert_return(() => invoke($14, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2524 +assert_return(() => invoke($14, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2525 +assert_return(() => invoke($14, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2526 +assert_return(() => invoke($14, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2527 +assert_return(() => invoke($14, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2528 +assert_return(() => invoke($14, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2529 +assert_return(() => invoke($14, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2530 +assert_return(() => invoke($14, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2531 +assert_return(() => invoke($14, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2532 +assert_return(() => invoke($14, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2533 +assert_return(() => invoke($14, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2534 +assert_return(() => invoke($14, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2535 +assert_return(() => invoke($14, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2536 +assert_return(() => invoke($14, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2537 +assert_return(() => invoke($14, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2538 +assert_return(() => invoke($14, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2539 +assert_return(() => invoke($14, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2540 +assert_return(() => invoke($14, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2541 +assert_return(() => invoke($14, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2542 +assert_return(() => invoke($14, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2543 +assert_return(() => invoke($14, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2544 +assert_return(() => invoke($14, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2545 +assert_return(() => invoke($14, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2546 +assert_return(() => invoke($14, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2547 +assert_return(() => invoke($14, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2548 +assert_return(() => invoke($14, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2549 +assert_return(() => invoke($14, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2550 +assert_return(() => invoke($14, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2551 +assert_return(() => invoke($14, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2552 +assert_return(() => invoke($14, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2553 +assert_return(() => invoke($14, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2554 +assert_return(() => invoke($14, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2555 +assert_return(() => invoke($14, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2556 +assert_return(() => invoke($14, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2557 +assert_return(() => invoke($14, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2558 +assert_return(() => invoke($14, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2559 +assert_return(() => invoke($14, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2560 +assert_return(() => invoke($14, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2561 +assert_return(() => invoke($14, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2562 +assert_return(() => invoke($14, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2563 +assert_return(() => invoke($14, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2564 +assert_return(() => invoke($14, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2565 +assert_return(() => invoke($14, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2566 +assert_return(() => invoke($14, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2567 +assert_return(() => invoke($14, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2568 +assert_return(() => invoke($14, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2569 +assert_return(() => invoke($14, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2570 +assert_return(() => invoke($14, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2571 +assert_return(() => invoke($14, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2572 +assert_return(() => invoke($14, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2573 +assert_return(() => invoke($14, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2574 +assert_return(() => invoke($14, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2575 +assert_return(() => invoke($14, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2576 +assert_return(() => invoke($14, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2577 +assert_return(() => invoke($14, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2578 +assert_return(() => invoke($14, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2579 +assert_return(() => invoke($14, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2580 +assert_return(() => invoke($14, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2581 +assert_return(() => invoke($14, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2582 +assert_return(() => invoke($14, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2583 +assert_return(() => invoke($14, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2584 +assert_return(() => invoke($14, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2585 +assert_return(() => invoke($14, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2586 +assert_return(() => invoke($14, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2587 +assert_return(() => invoke($14, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2588 +assert_return(() => invoke($14, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2589 +assert_return(() => invoke($14, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2590 +assert_return(() => invoke($14, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2591 +assert_return(() => invoke($14, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2592 +assert_return(() => invoke($14, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2593 +assert_return(() => invoke($14, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2594 +assert_return(() => invoke($14, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2595 +assert_return(() => invoke($14, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2596 +assert_return(() => invoke($14, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2597 +assert_return(() => invoke($14, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2598 +assert_return(() => invoke($14, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2599 +assert_return(() => invoke($14, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2600 +assert_return(() => invoke($14, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2601 +assert_return(() => invoke($14, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2602 +assert_return(() => invoke($14, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2603 +assert_return(() => invoke($14, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2604 +assert_return(() => invoke($14, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2605 +assert_return(() => invoke($14, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2606 +assert_return(() => invoke($14, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2607 +assert_return(() => invoke($14, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2608 +assert_return(() => invoke($14, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2609 +assert_return(() => invoke($14, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2610 +assert_return(() => invoke($14, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2611 +assert_return(() => invoke($14, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2612 +assert_return(() => invoke($14, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2613 +assert_return(() => invoke($14, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2614 +assert_return(() => invoke($14, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2615 +assert_return(() => invoke($14, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2616 +assert_return(() => invoke($14, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2617 +assert_return(() => invoke($14, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2618 +assert_return(() => invoke($14, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2619 +assert_return(() => invoke($14, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2620 +assert_return(() => invoke($14, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2621 +assert_return(() => invoke($14, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2622 +assert_return(() => invoke($14, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2623 +assert_return(() => invoke($14, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2624 +assert_return(() => invoke($14, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2625 +assert_return(() => invoke($14, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2626 +assert_return(() => invoke($14, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2627 +assert_return(() => invoke($14, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2628 +assert_return(() => invoke($14, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2629 +assert_return(() => invoke($14, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2630 +assert_return(() => invoke($14, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2631 +assert_return(() => invoke($14, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2632 +assert_return(() => invoke($14, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2633 +assert_return(() => invoke($14, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2634 +assert_return(() => invoke($14, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2635 +assert_return(() => invoke($14, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2636 +assert_return(() => invoke($14, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2637 +assert_return(() => invoke($14, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2638 +assert_return(() => invoke($14, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2639 +assert_return(() => invoke($14, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2640 +assert_return(() => invoke($14, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2641 +assert_return(() => invoke($14, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2642 +assert_return(() => invoke($14, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2643 +assert_return(() => invoke($14, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2644 +assert_return(() => invoke($14, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2645 +assert_return(() => invoke($14, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2646 +assert_return(() => invoke($14, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2647 +assert_return(() => invoke($14, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2648 +assert_return(() => invoke($14, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2649 +assert_return(() => invoke($14, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2650 +assert_return(() => invoke($14, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2651 +assert_return(() => invoke($14, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2652 +assert_return(() => invoke($14, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2653 +assert_return(() => invoke($14, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2654 +assert_return(() => invoke($14, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2655 +assert_return(() => invoke($14, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2656 +assert_return(() => invoke($14, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2657 +assert_return(() => invoke($14, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2658 +assert_return(() => invoke($14, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2659 +assert_return(() => invoke($14, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2660 +assert_return(() => invoke($14, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2661 +assert_return(() => invoke($14, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2662 +assert_return(() => invoke($14, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2663 +assert_return(() => invoke($14, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2664 +assert_return(() => invoke($14, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2665 +assert_return(() => invoke($14, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2666 +assert_return(() => invoke($14, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2667 +assert_return(() => invoke($14, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2668 +assert_return(() => invoke($14, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2669 +assert_return(() => invoke($14, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2670 +assert_return(() => invoke($14, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2671 +assert_return(() => invoke($14, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2672 +assert_return(() => invoke($14, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2673 +assert_return(() => invoke($14, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2674 +assert_return(() => invoke($14, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2675 +assert_return(() => invoke($14, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2676 +assert_return(() => invoke($14, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2677 +assert_return(() => invoke($14, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2678 +assert_return(() => invoke($14, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2679 +assert_return(() => invoke($14, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2680 +assert_return(() => invoke($14, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2681 +assert_return(() => invoke($14, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2682 +assert_return(() => invoke($14, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2683 +assert_return(() => invoke($14, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2684 +assert_return(() => invoke($14, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2685 +assert_return(() => invoke($14, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2686 +assert_return(() => invoke($14, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2687 +assert_return(() => invoke($14, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2688 +assert_return(() => invoke($14, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2689 +assert_return(() => invoke($14, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2690 +assert_return(() => invoke($14, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2691 +assert_return(() => invoke($14, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2692 +assert_return(() => invoke($14, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2693 +assert_return(() => invoke($14, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2694 +assert_return(() => invoke($14, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2695 +assert_return(() => invoke($14, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2696 +assert_return(() => invoke($14, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2697 +assert_return(() => invoke($14, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2698 +assert_return(() => invoke($14, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2699 +assert_return(() => invoke($14, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2700 +assert_return(() => invoke($14, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2701 +assert_return(() => invoke($14, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2702 +assert_return(() => invoke($14, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2703 +assert_return(() => invoke($14, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2704 +assert_return(() => invoke($14, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2705 +assert_return(() => invoke($14, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2706 +assert_return(() => invoke($14, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2707 +assert_return(() => invoke($14, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2708 +assert_return(() => invoke($14, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2709 +assert_return(() => invoke($14, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2710 +assert_return(() => invoke($14, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2711 +assert_return(() => invoke($14, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2712 +assert_return(() => invoke($14, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2713 +assert_return(() => invoke($14, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2714 +assert_return(() => invoke($14, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2715 +assert_return(() => invoke($14, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2716 +assert_return(() => invoke($14, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2717 +assert_return(() => invoke($14, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2718 +assert_return(() => invoke($14, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2719 +assert_return(() => invoke($14, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2720 +assert_return(() => invoke($14, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2721 +assert_return(() => invoke($14, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2722 +assert_return(() => invoke($14, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2723 +assert_return(() => invoke($14, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2724 +assert_return(() => invoke($14, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2725 +assert_return(() => invoke($14, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2726 +assert_return(() => invoke($14, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2727 +assert_return(() => invoke($14, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2728 +assert_return(() => invoke($14, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2729 +assert_return(() => invoke($14, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2730 +assert_return(() => invoke($14, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2731 +assert_return(() => invoke($14, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2732 +assert_return(() => invoke($14, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2733 +assert_return(() => invoke($14, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2734 +assert_return(() => invoke($14, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2735 +assert_return(() => invoke($14, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2736 +assert_return(() => invoke($14, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2737 +assert_return(() => invoke($14, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2738 +assert_return(() => invoke($14, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2739 +assert_return(() => invoke($14, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2740 +assert_return(() => invoke($14, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2741 +assert_return(() => invoke($14, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2742 +assert_return(() => invoke($14, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2743 +assert_return(() => invoke($14, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2744 +assert_return(() => invoke($14, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2745 +assert_return(() => invoke($14, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2746 +assert_return(() => invoke($14, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2747 +assert_return(() => invoke($14, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2748 +assert_return(() => invoke($14, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2749 +assert_return(() => invoke($14, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2750 +assert_return(() => invoke($14, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2751 +assert_return(() => invoke($14, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2752 +assert_return(() => invoke($14, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2753 +assert_return(() => invoke($14, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2754 +assert_return(() => invoke($14, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2755 +assert_return(() => invoke($14, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2756 +assert_return(() => invoke($14, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2757 +assert_return(() => invoke($14, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2758 +assert_return(() => invoke($14, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2759 +assert_return(() => invoke($14, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2760 +assert_return(() => invoke($14, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2761 +assert_return(() => invoke($14, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2762 +assert_return(() => invoke($14, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2763 +assert_return(() => invoke($14, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2764 +assert_return(() => invoke($14, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2765 +assert_return(() => invoke($14, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2766 +assert_return(() => invoke($14, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2767 +assert_return(() => invoke($14, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2768 +assert_return(() => invoke($14, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2769 +assert_return(() => invoke($14, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2770 +assert_return(() => invoke($14, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2771 +assert_return(() => invoke($14, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2772 +assert_return(() => invoke($14, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2773 +assert_return(() => invoke($14, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2774 +assert_return(() => invoke($14, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2775 +assert_return(() => invoke($14, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2776 +assert_return(() => invoke($14, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2777 +assert_return(() => invoke($14, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2778 +assert_return(() => invoke($14, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2779 +assert_return(() => invoke($14, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2780 +assert_return(() => invoke($14, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2781 +assert_return(() => invoke($14, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2782 +assert_return(() => invoke($14, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2783 +assert_return(() => invoke($14, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2784 +assert_return(() => invoke($14, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2785 +assert_return(() => invoke($14, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2786 +assert_return(() => invoke($14, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2787 +assert_return(() => invoke($14, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2788 +assert_return(() => invoke($14, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2789 +assert_return(() => invoke($14, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2790 +assert_return(() => invoke($14, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2791 +assert_return(() => invoke($14, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2792 +assert_return(() => invoke($14, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2793 +assert_return(() => invoke($14, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2794 +assert_return(() => invoke($14, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2795 +assert_return(() => invoke($14, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2796 +assert_return(() => invoke($14, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2797 +assert_return(() => invoke($14, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2798 +assert_return(() => invoke($14, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2799 +assert_return(() => invoke($14, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2800 +assert_return(() => invoke($14, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2801 +assert_return(() => invoke($14, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2802 +assert_return(() => invoke($14, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2803 +assert_return(() => invoke($14, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2804 +assert_return(() => invoke($14, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2805 +assert_return(() => invoke($14, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2806 +assert_return(() => invoke($14, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2807 +assert_return(() => invoke($14, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2808 +assert_return(() => invoke($14, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2809 +assert_return(() => invoke($14, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2810 +assert_return(() => invoke($14, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2811 +assert_return(() => invoke($14, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2812 +assert_return(() => invoke($14, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2813 +assert_return(() => invoke($14, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2814 +assert_return(() => invoke($14, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2815 +assert_return(() => invoke($14, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2816 +assert_return(() => invoke($14, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2817 +assert_return(() => invoke($14, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2818 +assert_return(() => invoke($14, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2819 +assert_return(() => invoke($14, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2820 +assert_return(() => invoke($14, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2821 +assert_return(() => invoke($14, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2822 +assert_return(() => invoke($14, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2823 +assert_return(() => invoke($14, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2824 +assert_return(() => invoke($14, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2825 +assert_return(() => invoke($14, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2826 +assert_return(() => invoke($14, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2827 +assert_return(() => invoke($14, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2828 +assert_return(() => invoke($14, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2829 +assert_return(() => invoke($14, `load8_u`, [61490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2830 +assert_return(() => invoke($14, `load8_u`, [61689]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2831 +assert_return(() => invoke($14, `load8_u`, [61888]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2832 +assert_return(() => invoke($14, `load8_u`, [62087]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2833 +assert_return(() => invoke($14, `load8_u`, [62286]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2834 +assert_return(() => invoke($14, `load8_u`, [62485]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2835 +assert_return(() => invoke($14, `load8_u`, [62684]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2836 +assert_return(() => invoke($14, `load8_u`, [62883]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2837 +assert_return(() => invoke($14, `load8_u`, [63082]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2838 +assert_return(() => invoke($14, `load8_u`, [63281]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2839 +assert_return(() => invoke($14, `load8_u`, [63480]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2840 +assert_return(() => invoke($14, `load8_u`, [63679]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2841 +assert_return(() => invoke($14, `load8_u`, [63878]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2842 +assert_return(() => invoke($14, `load8_u`, [64077]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2843 +assert_return(() => invoke($14, `load8_u`, [64276]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2844 +assert_return(() => invoke($14, `load8_u`, [64475]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2845 +assert_return(() => invoke($14, `load8_u`, [64674]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2846 +assert_return(() => invoke($14, `load8_u`, [64873]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2847 +assert_return(() => invoke($14, `load8_u`, [65072]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2848 +assert_return(() => invoke($14, `load8_u`, [65271]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2849 +assert_return(() => invoke($14, `load8_u`, [65470]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2850 +assert_return(() => invoke($14, `load8_u`, [65506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2851 +assert_return(() => invoke($14, `load8_u`, [65507]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:2852 +assert_return(() => invoke($14, `load8_u`, [65508]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:2853 +assert_return(() => invoke($14, `load8_u`, [65509]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:2854 +assert_return(() => invoke($14, `load8_u`, [65510]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:2855 +assert_return(() => invoke($14, `load8_u`, [65511]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:2856 +assert_return(() => invoke($14, `load8_u`, [65512]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:2857 +assert_return(() => invoke($14, `load8_u`, [65513]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:2858 +assert_return(() => invoke($14, `load8_u`, [65514]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:2859 +assert_return(() => invoke($14, `load8_u`, [65515]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:2860 +assert_return(() => invoke($14, `load8_u`, [65516]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:2861 +assert_return(() => invoke($14, `load8_u`, [65517]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:2862 +assert_return(() => invoke($14, `load8_u`, [65518]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:2863 +assert_return(() => invoke($14, `load8_u`, [65519]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:2864 +assert_return(() => invoke($14, `load8_u`, [65520]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:2865 +assert_return(() => invoke($14, `load8_u`, [65521]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:2866 +assert_return(() => invoke($14, `load8_u`, [65522]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:2867 +assert_return(() => invoke($14, `load8_u`, [65523]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:2868 +assert_return(() => invoke($14, `load8_u`, [65524]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:2869 +assert_return(() => invoke($14, `load8_u`, [65525]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:2871 +let $15 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 65516) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:2879 +assert_trap(() => invoke($15, `run`, [65506, 65516, 40]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:2882 +assert_return(() => invoke($15, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2883 +assert_return(() => invoke($15, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2884 +assert_return(() => invoke($15, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2885 +assert_return(() => invoke($15, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2886 +assert_return(() => invoke($15, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2887 +assert_return(() => invoke($15, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2888 +assert_return(() => invoke($15, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2889 +assert_return(() => invoke($15, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2890 +assert_return(() => invoke($15, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2891 +assert_return(() => invoke($15, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2892 +assert_return(() => invoke($15, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2893 +assert_return(() => invoke($15, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2894 +assert_return(() => invoke($15, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2895 +assert_return(() => invoke($15, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2896 +assert_return(() => invoke($15, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2897 +assert_return(() => invoke($15, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2898 +assert_return(() => invoke($15, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2899 +assert_return(() => invoke($15, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2900 +assert_return(() => invoke($15, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2901 +assert_return(() => invoke($15, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2902 +assert_return(() => invoke($15, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2903 +assert_return(() => invoke($15, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2904 +assert_return(() => invoke($15, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2905 +assert_return(() => invoke($15, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2906 +assert_return(() => invoke($15, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2907 +assert_return(() => invoke($15, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2908 +assert_return(() => invoke($15, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2909 +assert_return(() => invoke($15, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2910 +assert_return(() => invoke($15, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2911 +assert_return(() => invoke($15, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2912 +assert_return(() => invoke($15, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2913 +assert_return(() => invoke($15, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2914 +assert_return(() => invoke($15, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2915 +assert_return(() => invoke($15, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2916 +assert_return(() => invoke($15, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2917 +assert_return(() => invoke($15, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2918 +assert_return(() => invoke($15, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2919 +assert_return(() => invoke($15, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2920 +assert_return(() => invoke($15, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2921 +assert_return(() => invoke($15, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2922 +assert_return(() => invoke($15, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2923 +assert_return(() => invoke($15, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2924 +assert_return(() => invoke($15, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2925 +assert_return(() => invoke($15, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2926 +assert_return(() => invoke($15, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2927 +assert_return(() => invoke($15, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2928 +assert_return(() => invoke($15, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2929 +assert_return(() => invoke($15, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2930 +assert_return(() => invoke($15, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2931 +assert_return(() => invoke($15, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2932 +assert_return(() => invoke($15, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2933 +assert_return(() => invoke($15, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2934 +assert_return(() => invoke($15, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2935 +assert_return(() => invoke($15, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2936 +assert_return(() => invoke($15, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2937 +assert_return(() => invoke($15, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2938 +assert_return(() => invoke($15, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2939 +assert_return(() => invoke($15, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2940 +assert_return(() => invoke($15, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2941 +assert_return(() => invoke($15, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2942 +assert_return(() => invoke($15, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2943 +assert_return(() => invoke($15, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2944 +assert_return(() => invoke($15, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2945 +assert_return(() => invoke($15, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2946 +assert_return(() => invoke($15, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2947 +assert_return(() => invoke($15, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2948 +assert_return(() => invoke($15, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2949 +assert_return(() => invoke($15, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2950 +assert_return(() => invoke($15, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2951 +assert_return(() => invoke($15, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2952 +assert_return(() => invoke($15, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2953 +assert_return(() => invoke($15, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2954 +assert_return(() => invoke($15, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2955 +assert_return(() => invoke($15, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2956 +assert_return(() => invoke($15, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2957 +assert_return(() => invoke($15, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2958 +assert_return(() => invoke($15, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2959 +assert_return(() => invoke($15, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2960 +assert_return(() => invoke($15, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2961 +assert_return(() => invoke($15, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2962 +assert_return(() => invoke($15, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2963 +assert_return(() => invoke($15, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2964 +assert_return(() => invoke($15, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2965 +assert_return(() => invoke($15, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2966 +assert_return(() => invoke($15, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2967 +assert_return(() => invoke($15, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2968 +assert_return(() => invoke($15, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2969 +assert_return(() => invoke($15, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2970 +assert_return(() => invoke($15, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2971 +assert_return(() => invoke($15, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2972 +assert_return(() => invoke($15, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2973 +assert_return(() => invoke($15, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2974 +assert_return(() => invoke($15, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2975 +assert_return(() => invoke($15, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2976 +assert_return(() => invoke($15, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2977 +assert_return(() => invoke($15, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2978 +assert_return(() => invoke($15, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2979 +assert_return(() => invoke($15, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2980 +assert_return(() => invoke($15, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2981 +assert_return(() => invoke($15, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2982 +assert_return(() => invoke($15, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2983 +assert_return(() => invoke($15, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2984 +assert_return(() => invoke($15, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2985 +assert_return(() => invoke($15, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2986 +assert_return(() => invoke($15, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2987 +assert_return(() => invoke($15, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2988 +assert_return(() => invoke($15, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2989 +assert_return(() => invoke($15, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2990 +assert_return(() => invoke($15, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2991 +assert_return(() => invoke($15, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2992 +assert_return(() => invoke($15, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2993 +assert_return(() => invoke($15, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2994 +assert_return(() => invoke($15, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2995 +assert_return(() => invoke($15, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2996 +assert_return(() => invoke($15, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2997 +assert_return(() => invoke($15, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2998 +assert_return(() => invoke($15, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:2999 +assert_return(() => invoke($15, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3000 +assert_return(() => invoke($15, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3001 +assert_return(() => invoke($15, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3002 +assert_return(() => invoke($15, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3003 +assert_return(() => invoke($15, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3004 +assert_return(() => invoke($15, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3005 +assert_return(() => invoke($15, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3006 +assert_return(() => invoke($15, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3007 +assert_return(() => invoke($15, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3008 +assert_return(() => invoke($15, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3009 +assert_return(() => invoke($15, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3010 +assert_return(() => invoke($15, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3011 +assert_return(() => invoke($15, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3012 +assert_return(() => invoke($15, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3013 +assert_return(() => invoke($15, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3014 +assert_return(() => invoke($15, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3015 +assert_return(() => invoke($15, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3016 +assert_return(() => invoke($15, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3017 +assert_return(() => invoke($15, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3018 +assert_return(() => invoke($15, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3019 +assert_return(() => invoke($15, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3020 +assert_return(() => invoke($15, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3021 +assert_return(() => invoke($15, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3022 +assert_return(() => invoke($15, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3023 +assert_return(() => invoke($15, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3024 +assert_return(() => invoke($15, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3025 +assert_return(() => invoke($15, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3026 +assert_return(() => invoke($15, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3027 +assert_return(() => invoke($15, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3028 +assert_return(() => invoke($15, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3029 +assert_return(() => invoke($15, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3030 +assert_return(() => invoke($15, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3031 +assert_return(() => invoke($15, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3032 +assert_return(() => invoke($15, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3033 +assert_return(() => invoke($15, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3034 +assert_return(() => invoke($15, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3035 +assert_return(() => invoke($15, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3036 +assert_return(() => invoke($15, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3037 +assert_return(() => invoke($15, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3038 +assert_return(() => invoke($15, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3039 +assert_return(() => invoke($15, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3040 +assert_return(() => invoke($15, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3041 +assert_return(() => invoke($15, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3042 +assert_return(() => invoke($15, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3043 +assert_return(() => invoke($15, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3044 +assert_return(() => invoke($15, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3045 +assert_return(() => invoke($15, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3046 +assert_return(() => invoke($15, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3047 +assert_return(() => invoke($15, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3048 +assert_return(() => invoke($15, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3049 +assert_return(() => invoke($15, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3050 +assert_return(() => invoke($15, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3051 +assert_return(() => invoke($15, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3052 +assert_return(() => invoke($15, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3053 +assert_return(() => invoke($15, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3054 +assert_return(() => invoke($15, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3055 +assert_return(() => invoke($15, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3056 +assert_return(() => invoke($15, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3057 +assert_return(() => invoke($15, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3058 +assert_return(() => invoke($15, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3059 +assert_return(() => invoke($15, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3060 +assert_return(() => invoke($15, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3061 +assert_return(() => invoke($15, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3062 +assert_return(() => invoke($15, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3063 +assert_return(() => invoke($15, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3064 +assert_return(() => invoke($15, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3065 +assert_return(() => invoke($15, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3066 +assert_return(() => invoke($15, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3067 +assert_return(() => invoke($15, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3068 +assert_return(() => invoke($15, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3069 +assert_return(() => invoke($15, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3070 +assert_return(() => invoke($15, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3071 +assert_return(() => invoke($15, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3072 +assert_return(() => invoke($15, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3073 +assert_return(() => invoke($15, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3074 +assert_return(() => invoke($15, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3075 +assert_return(() => invoke($15, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3076 +assert_return(() => invoke($15, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3077 +assert_return(() => invoke($15, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3078 +assert_return(() => invoke($15, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3079 +assert_return(() => invoke($15, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3080 +assert_return(() => invoke($15, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3081 +assert_return(() => invoke($15, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3082 +assert_return(() => invoke($15, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3083 +assert_return(() => invoke($15, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3084 +assert_return(() => invoke($15, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3085 +assert_return(() => invoke($15, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3086 +assert_return(() => invoke($15, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3087 +assert_return(() => invoke($15, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3088 +assert_return(() => invoke($15, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3089 +assert_return(() => invoke($15, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3090 +assert_return(() => invoke($15, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3091 +assert_return(() => invoke($15, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3092 +assert_return(() => invoke($15, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3093 +assert_return(() => invoke($15, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3094 +assert_return(() => invoke($15, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3095 +assert_return(() => invoke($15, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3096 +assert_return(() => invoke($15, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3097 +assert_return(() => invoke($15, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3098 +assert_return(() => invoke($15, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3099 +assert_return(() => invoke($15, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3100 +assert_return(() => invoke($15, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3101 +assert_return(() => invoke($15, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3102 +assert_return(() => invoke($15, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3103 +assert_return(() => invoke($15, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3104 +assert_return(() => invoke($15, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3105 +assert_return(() => invoke($15, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3106 +assert_return(() => invoke($15, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3107 +assert_return(() => invoke($15, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3108 +assert_return(() => invoke($15, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3109 +assert_return(() => invoke($15, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3110 +assert_return(() => invoke($15, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3111 +assert_return(() => invoke($15, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3112 +assert_return(() => invoke($15, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3113 +assert_return(() => invoke($15, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3114 +assert_return(() => invoke($15, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3115 +assert_return(() => invoke($15, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3116 +assert_return(() => invoke($15, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3117 +assert_return(() => invoke($15, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3118 +assert_return(() => invoke($15, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3119 +assert_return(() => invoke($15, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3120 +assert_return(() => invoke($15, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3121 +assert_return(() => invoke($15, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3122 +assert_return(() => invoke($15, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3123 +assert_return(() => invoke($15, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3124 +assert_return(() => invoke($15, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3125 +assert_return(() => invoke($15, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3126 +assert_return(() => invoke($15, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3127 +assert_return(() => invoke($15, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3128 +assert_return(() => invoke($15, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3129 +assert_return(() => invoke($15, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3130 +assert_return(() => invoke($15, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3131 +assert_return(() => invoke($15, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3132 +assert_return(() => invoke($15, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3133 +assert_return(() => invoke($15, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3134 +assert_return(() => invoke($15, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3135 +assert_return(() => invoke($15, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3136 +assert_return(() => invoke($15, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3137 +assert_return(() => invoke($15, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3138 +assert_return(() => invoke($15, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3139 +assert_return(() => invoke($15, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3140 +assert_return(() => invoke($15, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3141 +assert_return(() => invoke($15, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3142 +assert_return(() => invoke($15, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3143 +assert_return(() => invoke($15, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3144 +assert_return(() => invoke($15, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3145 +assert_return(() => invoke($15, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3146 +assert_return(() => invoke($15, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3147 +assert_return(() => invoke($15, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3148 +assert_return(() => invoke($15, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3149 +assert_return(() => invoke($15, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3150 +assert_return(() => invoke($15, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3151 +assert_return(() => invoke($15, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3152 +assert_return(() => invoke($15, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3153 +assert_return(() => invoke($15, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3154 +assert_return(() => invoke($15, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3155 +assert_return(() => invoke($15, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3156 +assert_return(() => invoke($15, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3157 +assert_return(() => invoke($15, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3158 +assert_return(() => invoke($15, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3159 +assert_return(() => invoke($15, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3160 +assert_return(() => invoke($15, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3161 +assert_return(() => invoke($15, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3162 +assert_return(() => invoke($15, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3163 +assert_return(() => invoke($15, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3164 +assert_return(() => invoke($15, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3165 +assert_return(() => invoke($15, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3166 +assert_return(() => invoke($15, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3167 +assert_return(() => invoke($15, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3168 +assert_return(() => invoke($15, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3169 +assert_return(() => invoke($15, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3170 +assert_return(() => invoke($15, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3171 +assert_return(() => invoke($15, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3172 +assert_return(() => invoke($15, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3173 +assert_return(() => invoke($15, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3174 +assert_return(() => invoke($15, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3175 +assert_return(() => invoke($15, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3176 +assert_return(() => invoke($15, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3177 +assert_return(() => invoke($15, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3178 +assert_return(() => invoke($15, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3179 +assert_return(() => invoke($15, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3180 +assert_return(() => invoke($15, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3181 +assert_return(() => invoke($15, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3182 +assert_return(() => invoke($15, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3183 +assert_return(() => invoke($15, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3184 +assert_return(() => invoke($15, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3185 +assert_return(() => invoke($15, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3186 +assert_return(() => invoke($15, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3187 +assert_return(() => invoke($15, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3188 +assert_return(() => invoke($15, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3189 +assert_return(() => invoke($15, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3190 +assert_return(() => invoke($15, `load8_u`, [61490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3191 +assert_return(() => invoke($15, `load8_u`, [61689]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3192 +assert_return(() => invoke($15, `load8_u`, [61888]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3193 +assert_return(() => invoke($15, `load8_u`, [62087]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3194 +assert_return(() => invoke($15, `load8_u`, [62286]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3195 +assert_return(() => invoke($15, `load8_u`, [62485]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3196 +assert_return(() => invoke($15, `load8_u`, [62684]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3197 +assert_return(() => invoke($15, `load8_u`, [62883]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3198 +assert_return(() => invoke($15, `load8_u`, [63082]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3199 +assert_return(() => invoke($15, `load8_u`, [63281]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3200 +assert_return(() => invoke($15, `load8_u`, [63480]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3201 +assert_return(() => invoke($15, `load8_u`, [63679]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3202 +assert_return(() => invoke($15, `load8_u`, [63878]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3203 +assert_return(() => invoke($15, `load8_u`, [64077]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3204 +assert_return(() => invoke($15, `load8_u`, [64276]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3205 +assert_return(() => invoke($15, `load8_u`, [64475]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3206 +assert_return(() => invoke($15, `load8_u`, [64674]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3207 +assert_return(() => invoke($15, `load8_u`, [64873]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3208 +assert_return(() => invoke($15, `load8_u`, [65072]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3209 +assert_return(() => invoke($15, `load8_u`, [65271]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3210 +assert_return(() => invoke($15, `load8_u`, [65470]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3211 +assert_return(() => invoke($15, `load8_u`, [65516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3212 +assert_return(() => invoke($15, `load8_u`, [65517]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:3213 +assert_return(() => invoke($15, `load8_u`, [65518]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:3214 +assert_return(() => invoke($15, `load8_u`, [65519]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:3215 +assert_return(() => invoke($15, `load8_u`, [65520]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:3216 +assert_return(() => invoke($15, `load8_u`, [65521]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:3217 +assert_return(() => invoke($15, `load8_u`, [65522]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:3218 +assert_return(() => invoke($15, `load8_u`, [65523]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:3219 +assert_return(() => invoke($15, `load8_u`, [65524]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:3220 +assert_return(() => invoke($15, `load8_u`, [65525]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:3221 +assert_return(() => invoke($15, `load8_u`, [65526]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:3222 +assert_return(() => invoke($15, `load8_u`, [65527]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:3223 +assert_return(() => invoke($15, `load8_u`, [65528]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:3224 +assert_return(() => invoke($15, `load8_u`, [65529]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:3225 +assert_return(() => invoke($15, `load8_u`, [65530]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:3226 +assert_return(() => invoke($15, `load8_u`, [65531]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:3227 +assert_return(() => invoke($15, `load8_u`, [65532]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:3228 +assert_return(() => invoke($15, `load8_u`, [65533]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:3229 +assert_return(() => invoke($15, `load8_u`, [65534]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:3230 +assert_return(() => invoke($15, `load8_u`, [65535]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:3232 +let $16 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 65516) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:3240 +assert_trap(() => invoke($16, `run`, [65516, 65516, 40]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:3243 +assert_return(() => invoke($16, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3244 +assert_return(() => invoke($16, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3245 +assert_return(() => invoke($16, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3246 +assert_return(() => invoke($16, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3247 +assert_return(() => invoke($16, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3248 +assert_return(() => invoke($16, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3249 +assert_return(() => invoke($16, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3250 +assert_return(() => invoke($16, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3251 +assert_return(() => invoke($16, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3252 +assert_return(() => invoke($16, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3253 +assert_return(() => invoke($16, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3254 +assert_return(() => invoke($16, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3255 +assert_return(() => invoke($16, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3256 +assert_return(() => invoke($16, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3257 +assert_return(() => invoke($16, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3258 +assert_return(() => invoke($16, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3259 +assert_return(() => invoke($16, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3260 +assert_return(() => invoke($16, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3261 +assert_return(() => invoke($16, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3262 +assert_return(() => invoke($16, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3263 +assert_return(() => invoke($16, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3264 +assert_return(() => invoke($16, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3265 +assert_return(() => invoke($16, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3266 +assert_return(() => invoke($16, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3267 +assert_return(() => invoke($16, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3268 +assert_return(() => invoke($16, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3269 +assert_return(() => invoke($16, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3270 +assert_return(() => invoke($16, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3271 +assert_return(() => invoke($16, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3272 +assert_return(() => invoke($16, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3273 +assert_return(() => invoke($16, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3274 +assert_return(() => invoke($16, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3275 +assert_return(() => invoke($16, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3276 +assert_return(() => invoke($16, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3277 +assert_return(() => invoke($16, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3278 +assert_return(() => invoke($16, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3279 +assert_return(() => invoke($16, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3280 +assert_return(() => invoke($16, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3281 +assert_return(() => invoke($16, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3282 +assert_return(() => invoke($16, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3283 +assert_return(() => invoke($16, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3284 +assert_return(() => invoke($16, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3285 +assert_return(() => invoke($16, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3286 +assert_return(() => invoke($16, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3287 +assert_return(() => invoke($16, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3288 +assert_return(() => invoke($16, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3289 +assert_return(() => invoke($16, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3290 +assert_return(() => invoke($16, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3291 +assert_return(() => invoke($16, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3292 +assert_return(() => invoke($16, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3293 +assert_return(() => invoke($16, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3294 +assert_return(() => invoke($16, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3295 +assert_return(() => invoke($16, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3296 +assert_return(() => invoke($16, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3297 +assert_return(() => invoke($16, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3298 +assert_return(() => invoke($16, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3299 +assert_return(() => invoke($16, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3300 +assert_return(() => invoke($16, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3301 +assert_return(() => invoke($16, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3302 +assert_return(() => invoke($16, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3303 +assert_return(() => invoke($16, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3304 +assert_return(() => invoke($16, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3305 +assert_return(() => invoke($16, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3306 +assert_return(() => invoke($16, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3307 +assert_return(() => invoke($16, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3308 +assert_return(() => invoke($16, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3309 +assert_return(() => invoke($16, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3310 +assert_return(() => invoke($16, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3311 +assert_return(() => invoke($16, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3312 +assert_return(() => invoke($16, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3313 +assert_return(() => invoke($16, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3314 +assert_return(() => invoke($16, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3315 +assert_return(() => invoke($16, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3316 +assert_return(() => invoke($16, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3317 +assert_return(() => invoke($16, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3318 +assert_return(() => invoke($16, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3319 +assert_return(() => invoke($16, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3320 +assert_return(() => invoke($16, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3321 +assert_return(() => invoke($16, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3322 +assert_return(() => invoke($16, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3323 +assert_return(() => invoke($16, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3324 +assert_return(() => invoke($16, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3325 +assert_return(() => invoke($16, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3326 +assert_return(() => invoke($16, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3327 +assert_return(() => invoke($16, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3328 +assert_return(() => invoke($16, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3329 +assert_return(() => invoke($16, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3330 +assert_return(() => invoke($16, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3331 +assert_return(() => invoke($16, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3332 +assert_return(() => invoke($16, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3333 +assert_return(() => invoke($16, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3334 +assert_return(() => invoke($16, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3335 +assert_return(() => invoke($16, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3336 +assert_return(() => invoke($16, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3337 +assert_return(() => invoke($16, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3338 +assert_return(() => invoke($16, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3339 +assert_return(() => invoke($16, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3340 +assert_return(() => invoke($16, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3341 +assert_return(() => invoke($16, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3342 +assert_return(() => invoke($16, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3343 +assert_return(() => invoke($16, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3344 +assert_return(() => invoke($16, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3345 +assert_return(() => invoke($16, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3346 +assert_return(() => invoke($16, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3347 +assert_return(() => invoke($16, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3348 +assert_return(() => invoke($16, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3349 +assert_return(() => invoke($16, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3350 +assert_return(() => invoke($16, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3351 +assert_return(() => invoke($16, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3352 +assert_return(() => invoke($16, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3353 +assert_return(() => invoke($16, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3354 +assert_return(() => invoke($16, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3355 +assert_return(() => invoke($16, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3356 +assert_return(() => invoke($16, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3357 +assert_return(() => invoke($16, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3358 +assert_return(() => invoke($16, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3359 +assert_return(() => invoke($16, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3360 +assert_return(() => invoke($16, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3361 +assert_return(() => invoke($16, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3362 +assert_return(() => invoke($16, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3363 +assert_return(() => invoke($16, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3364 +assert_return(() => invoke($16, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3365 +assert_return(() => invoke($16, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3366 +assert_return(() => invoke($16, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3367 +assert_return(() => invoke($16, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3368 +assert_return(() => invoke($16, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3369 +assert_return(() => invoke($16, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3370 +assert_return(() => invoke($16, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3371 +assert_return(() => invoke($16, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3372 +assert_return(() => invoke($16, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3373 +assert_return(() => invoke($16, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3374 +assert_return(() => invoke($16, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3375 +assert_return(() => invoke($16, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3376 +assert_return(() => invoke($16, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3377 +assert_return(() => invoke($16, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3378 +assert_return(() => invoke($16, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3379 +assert_return(() => invoke($16, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3380 +assert_return(() => invoke($16, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3381 +assert_return(() => invoke($16, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3382 +assert_return(() => invoke($16, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3383 +assert_return(() => invoke($16, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3384 +assert_return(() => invoke($16, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3385 +assert_return(() => invoke($16, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3386 +assert_return(() => invoke($16, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3387 +assert_return(() => invoke($16, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3388 +assert_return(() => invoke($16, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3389 +assert_return(() => invoke($16, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3390 +assert_return(() => invoke($16, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3391 +assert_return(() => invoke($16, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3392 +assert_return(() => invoke($16, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3393 +assert_return(() => invoke($16, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3394 +assert_return(() => invoke($16, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3395 +assert_return(() => invoke($16, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3396 +assert_return(() => invoke($16, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3397 +assert_return(() => invoke($16, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3398 +assert_return(() => invoke($16, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3399 +assert_return(() => invoke($16, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3400 +assert_return(() => invoke($16, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3401 +assert_return(() => invoke($16, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3402 +assert_return(() => invoke($16, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3403 +assert_return(() => invoke($16, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3404 +assert_return(() => invoke($16, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3405 +assert_return(() => invoke($16, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3406 +assert_return(() => invoke($16, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3407 +assert_return(() => invoke($16, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3408 +assert_return(() => invoke($16, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3409 +assert_return(() => invoke($16, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3410 +assert_return(() => invoke($16, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3411 +assert_return(() => invoke($16, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3412 +assert_return(() => invoke($16, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3413 +assert_return(() => invoke($16, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3414 +assert_return(() => invoke($16, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3415 +assert_return(() => invoke($16, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3416 +assert_return(() => invoke($16, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3417 +assert_return(() => invoke($16, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3418 +assert_return(() => invoke($16, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3419 +assert_return(() => invoke($16, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3420 +assert_return(() => invoke($16, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3421 +assert_return(() => invoke($16, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3422 +assert_return(() => invoke($16, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3423 +assert_return(() => invoke($16, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3424 +assert_return(() => invoke($16, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3425 +assert_return(() => invoke($16, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3426 +assert_return(() => invoke($16, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3427 +assert_return(() => invoke($16, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3428 +assert_return(() => invoke($16, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3429 +assert_return(() => invoke($16, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3430 +assert_return(() => invoke($16, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3431 +assert_return(() => invoke($16, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3432 +assert_return(() => invoke($16, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3433 +assert_return(() => invoke($16, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3434 +assert_return(() => invoke($16, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3435 +assert_return(() => invoke($16, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3436 +assert_return(() => invoke($16, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3437 +assert_return(() => invoke($16, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3438 +assert_return(() => invoke($16, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3439 +assert_return(() => invoke($16, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3440 +assert_return(() => invoke($16, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3441 +assert_return(() => invoke($16, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3442 +assert_return(() => invoke($16, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3443 +assert_return(() => invoke($16, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3444 +assert_return(() => invoke($16, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3445 +assert_return(() => invoke($16, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3446 +assert_return(() => invoke($16, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3447 +assert_return(() => invoke($16, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3448 +assert_return(() => invoke($16, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3449 +assert_return(() => invoke($16, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3450 +assert_return(() => invoke($16, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3451 +assert_return(() => invoke($16, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3452 +assert_return(() => invoke($16, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3453 +assert_return(() => invoke($16, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3454 +assert_return(() => invoke($16, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3455 +assert_return(() => invoke($16, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3456 +assert_return(() => invoke($16, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3457 +assert_return(() => invoke($16, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3458 +assert_return(() => invoke($16, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3459 +assert_return(() => invoke($16, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3460 +assert_return(() => invoke($16, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3461 +assert_return(() => invoke($16, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3462 +assert_return(() => invoke($16, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3463 +assert_return(() => invoke($16, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3464 +assert_return(() => invoke($16, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3465 +assert_return(() => invoke($16, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3466 +assert_return(() => invoke($16, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3467 +assert_return(() => invoke($16, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3468 +assert_return(() => invoke($16, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3469 +assert_return(() => invoke($16, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3470 +assert_return(() => invoke($16, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3471 +assert_return(() => invoke($16, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3472 +assert_return(() => invoke($16, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3473 +assert_return(() => invoke($16, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3474 +assert_return(() => invoke($16, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3475 +assert_return(() => invoke($16, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3476 +assert_return(() => invoke($16, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3477 +assert_return(() => invoke($16, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3478 +assert_return(() => invoke($16, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3479 +assert_return(() => invoke($16, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3480 +assert_return(() => invoke($16, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3481 +assert_return(() => invoke($16, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3482 +assert_return(() => invoke($16, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3483 +assert_return(() => invoke($16, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3484 +assert_return(() => invoke($16, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3485 +assert_return(() => invoke($16, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3486 +assert_return(() => invoke($16, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3487 +assert_return(() => invoke($16, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3488 +assert_return(() => invoke($16, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3489 +assert_return(() => invoke($16, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3490 +assert_return(() => invoke($16, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3491 +assert_return(() => invoke($16, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3492 +assert_return(() => invoke($16, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3493 +assert_return(() => invoke($16, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3494 +assert_return(() => invoke($16, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3495 +assert_return(() => invoke($16, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3496 +assert_return(() => invoke($16, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3497 +assert_return(() => invoke($16, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3498 +assert_return(() => invoke($16, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3499 +assert_return(() => invoke($16, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3500 +assert_return(() => invoke($16, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3501 +assert_return(() => invoke($16, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3502 +assert_return(() => invoke($16, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3503 +assert_return(() => invoke($16, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3504 +assert_return(() => invoke($16, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3505 +assert_return(() => invoke($16, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3506 +assert_return(() => invoke($16, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3507 +assert_return(() => invoke($16, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3508 +assert_return(() => invoke($16, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3509 +assert_return(() => invoke($16, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3510 +assert_return(() => invoke($16, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3511 +assert_return(() => invoke($16, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3512 +assert_return(() => invoke($16, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3513 +assert_return(() => invoke($16, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3514 +assert_return(() => invoke($16, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3515 +assert_return(() => invoke($16, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3516 +assert_return(() => invoke($16, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3517 +assert_return(() => invoke($16, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3518 +assert_return(() => invoke($16, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3519 +assert_return(() => invoke($16, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3520 +assert_return(() => invoke($16, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3521 +assert_return(() => invoke($16, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3522 +assert_return(() => invoke($16, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3523 +assert_return(() => invoke($16, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3524 +assert_return(() => invoke($16, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3525 +assert_return(() => invoke($16, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3526 +assert_return(() => invoke($16, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3527 +assert_return(() => invoke($16, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3528 +assert_return(() => invoke($16, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3529 +assert_return(() => invoke($16, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3530 +assert_return(() => invoke($16, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3531 +assert_return(() => invoke($16, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3532 +assert_return(() => invoke($16, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3533 +assert_return(() => invoke($16, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3534 +assert_return(() => invoke($16, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3535 +assert_return(() => invoke($16, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3536 +assert_return(() => invoke($16, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3537 +assert_return(() => invoke($16, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3538 +assert_return(() => invoke($16, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3539 +assert_return(() => invoke($16, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3540 +assert_return(() => invoke($16, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3541 +assert_return(() => invoke($16, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3542 +assert_return(() => invoke($16, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3543 +assert_return(() => invoke($16, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3544 +assert_return(() => invoke($16, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3545 +assert_return(() => invoke($16, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3546 +assert_return(() => invoke($16, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3547 +assert_return(() => invoke($16, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3548 +assert_return(() => invoke($16, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3549 +assert_return(() => invoke($16, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3550 +assert_return(() => invoke($16, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3551 +assert_return(() => invoke($16, `load8_u`, [61490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3552 +assert_return(() => invoke($16, `load8_u`, [61689]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3553 +assert_return(() => invoke($16, `load8_u`, [61888]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3554 +assert_return(() => invoke($16, `load8_u`, [62087]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3555 +assert_return(() => invoke($16, `load8_u`, [62286]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3556 +assert_return(() => invoke($16, `load8_u`, [62485]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3557 +assert_return(() => invoke($16, `load8_u`, [62684]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3558 +assert_return(() => invoke($16, `load8_u`, [62883]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3559 +assert_return(() => invoke($16, `load8_u`, [63082]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3560 +assert_return(() => invoke($16, `load8_u`, [63281]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3561 +assert_return(() => invoke($16, `load8_u`, [63480]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3562 +assert_return(() => invoke($16, `load8_u`, [63679]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3563 +assert_return(() => invoke($16, `load8_u`, [63878]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3564 +assert_return(() => invoke($16, `load8_u`, [64077]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3565 +assert_return(() => invoke($16, `load8_u`, [64276]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3566 +assert_return(() => invoke($16, `load8_u`, [64475]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3567 +assert_return(() => invoke($16, `load8_u`, [64674]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3568 +assert_return(() => invoke($16, `load8_u`, [64873]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3569 +assert_return(() => invoke($16, `load8_u`, [65072]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3570 +assert_return(() => invoke($16, `load8_u`, [65271]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3571 +assert_return(() => invoke($16, `load8_u`, [65470]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3572 +assert_return(() => invoke($16, `load8_u`, [65516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3573 +assert_return(() => invoke($16, `load8_u`, [65517]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:3574 +assert_return(() => invoke($16, `load8_u`, [65518]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:3575 +assert_return(() => invoke($16, `load8_u`, [65519]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:3576 +assert_return(() => invoke($16, `load8_u`, [65520]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:3577 +assert_return(() => invoke($16, `load8_u`, [65521]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:3578 +assert_return(() => invoke($16, `load8_u`, [65522]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:3579 +assert_return(() => invoke($16, `load8_u`, [65523]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:3580 +assert_return(() => invoke($16, `load8_u`, [65524]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:3581 +assert_return(() => invoke($16, `load8_u`, [65525]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:3582 +assert_return(() => invoke($16, `load8_u`, [65526]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:3583 +assert_return(() => invoke($16, `load8_u`, [65527]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:3584 +assert_return(() => invoke($16, `load8_u`, [65528]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:3585 +assert_return(() => invoke($16, `load8_u`, [65529]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:3586 +assert_return(() => invoke($16, `load8_u`, [65530]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:3587 +assert_return(() => invoke($16, `load8_u`, [65531]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:3588 +assert_return(() => invoke($16, `load8_u`, [65532]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:3589 +assert_return(() => invoke($16, `load8_u`, [65533]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:3590 +assert_return(() => invoke($16, `load8_u`, [65534]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:3591 +assert_return(() => invoke($16, `load8_u`, [65535]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:3593 +let $17 = instantiate(`(module + (memory (export "mem") 1 ) + (data (i32.const 65516) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:3601 +assert_trap(() => invoke($17, `run`, [0, 65516, -4096]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:3604 +assert_return(() => invoke($17, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3605 +assert_return(() => invoke($17, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3606 +assert_return(() => invoke($17, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3607 +assert_return(() => invoke($17, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3608 +assert_return(() => invoke($17, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3609 +assert_return(() => invoke($17, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3610 +assert_return(() => invoke($17, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3611 +assert_return(() => invoke($17, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3612 +assert_return(() => invoke($17, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3613 +assert_return(() => invoke($17, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3614 +assert_return(() => invoke($17, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3615 +assert_return(() => invoke($17, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3616 +assert_return(() => invoke($17, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3617 +assert_return(() => invoke($17, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3618 +assert_return(() => invoke($17, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3619 +assert_return(() => invoke($17, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3620 +assert_return(() => invoke($17, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3621 +assert_return(() => invoke($17, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3622 +assert_return(() => invoke($17, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3623 +assert_return(() => invoke($17, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3624 +assert_return(() => invoke($17, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3625 +assert_return(() => invoke($17, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3626 +assert_return(() => invoke($17, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3627 +assert_return(() => invoke($17, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3628 +assert_return(() => invoke($17, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3629 +assert_return(() => invoke($17, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3630 +assert_return(() => invoke($17, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3631 +assert_return(() => invoke($17, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3632 +assert_return(() => invoke($17, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3633 +assert_return(() => invoke($17, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3634 +assert_return(() => invoke($17, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3635 +assert_return(() => invoke($17, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3636 +assert_return(() => invoke($17, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3637 +assert_return(() => invoke($17, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3638 +assert_return(() => invoke($17, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3639 +assert_return(() => invoke($17, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3640 +assert_return(() => invoke($17, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3641 +assert_return(() => invoke($17, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3642 +assert_return(() => invoke($17, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3643 +assert_return(() => invoke($17, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3644 +assert_return(() => invoke($17, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3645 +assert_return(() => invoke($17, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3646 +assert_return(() => invoke($17, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3647 +assert_return(() => invoke($17, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3648 +assert_return(() => invoke($17, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3649 +assert_return(() => invoke($17, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3650 +assert_return(() => invoke($17, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3651 +assert_return(() => invoke($17, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3652 +assert_return(() => invoke($17, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3653 +assert_return(() => invoke($17, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3654 +assert_return(() => invoke($17, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3655 +assert_return(() => invoke($17, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3656 +assert_return(() => invoke($17, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3657 +assert_return(() => invoke($17, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3658 +assert_return(() => invoke($17, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3659 +assert_return(() => invoke($17, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3660 +assert_return(() => invoke($17, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3661 +assert_return(() => invoke($17, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3662 +assert_return(() => invoke($17, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3663 +assert_return(() => invoke($17, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3664 +assert_return(() => invoke($17, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3665 +assert_return(() => invoke($17, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3666 +assert_return(() => invoke($17, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3667 +assert_return(() => invoke($17, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3668 +assert_return(() => invoke($17, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3669 +assert_return(() => invoke($17, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3670 +assert_return(() => invoke($17, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3671 +assert_return(() => invoke($17, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3672 +assert_return(() => invoke($17, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3673 +assert_return(() => invoke($17, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3674 +assert_return(() => invoke($17, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3675 +assert_return(() => invoke($17, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3676 +assert_return(() => invoke($17, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3677 +assert_return(() => invoke($17, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3678 +assert_return(() => invoke($17, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3679 +assert_return(() => invoke($17, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3680 +assert_return(() => invoke($17, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3681 +assert_return(() => invoke($17, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3682 +assert_return(() => invoke($17, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3683 +assert_return(() => invoke($17, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3684 +assert_return(() => invoke($17, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3685 +assert_return(() => invoke($17, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3686 +assert_return(() => invoke($17, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3687 +assert_return(() => invoke($17, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3688 +assert_return(() => invoke($17, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3689 +assert_return(() => invoke($17, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3690 +assert_return(() => invoke($17, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3691 +assert_return(() => invoke($17, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3692 +assert_return(() => invoke($17, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3693 +assert_return(() => invoke($17, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3694 +assert_return(() => invoke($17, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3695 +assert_return(() => invoke($17, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3696 +assert_return(() => invoke($17, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3697 +assert_return(() => invoke($17, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3698 +assert_return(() => invoke($17, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3699 +assert_return(() => invoke($17, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3700 +assert_return(() => invoke($17, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3701 +assert_return(() => invoke($17, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3702 +assert_return(() => invoke($17, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3703 +assert_return(() => invoke($17, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3704 +assert_return(() => invoke($17, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3705 +assert_return(() => invoke($17, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3706 +assert_return(() => invoke($17, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3707 +assert_return(() => invoke($17, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3708 +assert_return(() => invoke($17, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3709 +assert_return(() => invoke($17, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3710 +assert_return(() => invoke($17, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3711 +assert_return(() => invoke($17, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3712 +assert_return(() => invoke($17, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3713 +assert_return(() => invoke($17, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3714 +assert_return(() => invoke($17, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3715 +assert_return(() => invoke($17, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3716 +assert_return(() => invoke($17, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3717 +assert_return(() => invoke($17, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3718 +assert_return(() => invoke($17, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3719 +assert_return(() => invoke($17, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3720 +assert_return(() => invoke($17, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3721 +assert_return(() => invoke($17, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3722 +assert_return(() => invoke($17, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3723 +assert_return(() => invoke($17, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3724 +assert_return(() => invoke($17, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3725 +assert_return(() => invoke($17, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3726 +assert_return(() => invoke($17, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3727 +assert_return(() => invoke($17, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3728 +assert_return(() => invoke($17, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3729 +assert_return(() => invoke($17, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3730 +assert_return(() => invoke($17, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3731 +assert_return(() => invoke($17, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3732 +assert_return(() => invoke($17, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3733 +assert_return(() => invoke($17, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3734 +assert_return(() => invoke($17, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3735 +assert_return(() => invoke($17, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3736 +assert_return(() => invoke($17, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3737 +assert_return(() => invoke($17, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3738 +assert_return(() => invoke($17, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3739 +assert_return(() => invoke($17, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3740 +assert_return(() => invoke($17, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3741 +assert_return(() => invoke($17, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3742 +assert_return(() => invoke($17, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3743 +assert_return(() => invoke($17, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3744 +assert_return(() => invoke($17, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3745 +assert_return(() => invoke($17, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3746 +assert_return(() => invoke($17, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3747 +assert_return(() => invoke($17, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3748 +assert_return(() => invoke($17, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3749 +assert_return(() => invoke($17, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3750 +assert_return(() => invoke($17, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3751 +assert_return(() => invoke($17, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3752 +assert_return(() => invoke($17, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3753 +assert_return(() => invoke($17, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3754 +assert_return(() => invoke($17, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3755 +assert_return(() => invoke($17, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3756 +assert_return(() => invoke($17, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3757 +assert_return(() => invoke($17, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3758 +assert_return(() => invoke($17, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3759 +assert_return(() => invoke($17, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3760 +assert_return(() => invoke($17, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3761 +assert_return(() => invoke($17, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3762 +assert_return(() => invoke($17, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3763 +assert_return(() => invoke($17, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3764 +assert_return(() => invoke($17, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3765 +assert_return(() => invoke($17, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3766 +assert_return(() => invoke($17, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3767 +assert_return(() => invoke($17, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3768 +assert_return(() => invoke($17, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3769 +assert_return(() => invoke($17, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3770 +assert_return(() => invoke($17, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3771 +assert_return(() => invoke($17, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3772 +assert_return(() => invoke($17, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3773 +assert_return(() => invoke($17, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3774 +assert_return(() => invoke($17, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3775 +assert_return(() => invoke($17, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3776 +assert_return(() => invoke($17, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3777 +assert_return(() => invoke($17, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3778 +assert_return(() => invoke($17, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3779 +assert_return(() => invoke($17, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3780 +assert_return(() => invoke($17, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3781 +assert_return(() => invoke($17, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3782 +assert_return(() => invoke($17, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3783 +assert_return(() => invoke($17, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3784 +assert_return(() => invoke($17, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3785 +assert_return(() => invoke($17, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3786 +assert_return(() => invoke($17, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3787 +assert_return(() => invoke($17, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3788 +assert_return(() => invoke($17, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3789 +assert_return(() => invoke($17, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3790 +assert_return(() => invoke($17, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3791 +assert_return(() => invoke($17, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3792 +assert_return(() => invoke($17, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3793 +assert_return(() => invoke($17, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3794 +assert_return(() => invoke($17, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3795 +assert_return(() => invoke($17, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3796 +assert_return(() => invoke($17, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3797 +assert_return(() => invoke($17, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3798 +assert_return(() => invoke($17, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3799 +assert_return(() => invoke($17, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3800 +assert_return(() => invoke($17, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3801 +assert_return(() => invoke($17, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3802 +assert_return(() => invoke($17, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3803 +assert_return(() => invoke($17, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3804 +assert_return(() => invoke($17, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3805 +assert_return(() => invoke($17, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3806 +assert_return(() => invoke($17, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3807 +assert_return(() => invoke($17, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3808 +assert_return(() => invoke($17, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3809 +assert_return(() => invoke($17, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3810 +assert_return(() => invoke($17, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3811 +assert_return(() => invoke($17, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3812 +assert_return(() => invoke($17, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3813 +assert_return(() => invoke($17, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3814 +assert_return(() => invoke($17, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3815 +assert_return(() => invoke($17, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3816 +assert_return(() => invoke($17, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3817 +assert_return(() => invoke($17, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3818 +assert_return(() => invoke($17, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3819 +assert_return(() => invoke($17, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3820 +assert_return(() => invoke($17, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3821 +assert_return(() => invoke($17, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3822 +assert_return(() => invoke($17, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3823 +assert_return(() => invoke($17, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3824 +assert_return(() => invoke($17, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3825 +assert_return(() => invoke($17, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3826 +assert_return(() => invoke($17, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3827 +assert_return(() => invoke($17, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3828 +assert_return(() => invoke($17, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3829 +assert_return(() => invoke($17, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3830 +assert_return(() => invoke($17, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3831 +assert_return(() => invoke($17, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3832 +assert_return(() => invoke($17, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3833 +assert_return(() => invoke($17, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3834 +assert_return(() => invoke($17, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3835 +assert_return(() => invoke($17, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3836 +assert_return(() => invoke($17, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3837 +assert_return(() => invoke($17, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3838 +assert_return(() => invoke($17, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3839 +assert_return(() => invoke($17, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3840 +assert_return(() => invoke($17, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3841 +assert_return(() => invoke($17, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3842 +assert_return(() => invoke($17, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3843 +assert_return(() => invoke($17, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3844 +assert_return(() => invoke($17, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3845 +assert_return(() => invoke($17, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3846 +assert_return(() => invoke($17, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3847 +assert_return(() => invoke($17, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3848 +assert_return(() => invoke($17, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3849 +assert_return(() => invoke($17, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3850 +assert_return(() => invoke($17, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3851 +assert_return(() => invoke($17, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3852 +assert_return(() => invoke($17, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3853 +assert_return(() => invoke($17, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3854 +assert_return(() => invoke($17, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3855 +assert_return(() => invoke($17, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3856 +assert_return(() => invoke($17, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3857 +assert_return(() => invoke($17, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3858 +assert_return(() => invoke($17, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3859 +assert_return(() => invoke($17, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3860 +assert_return(() => invoke($17, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3861 +assert_return(() => invoke($17, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3862 +assert_return(() => invoke($17, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3863 +assert_return(() => invoke($17, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3864 +assert_return(() => invoke($17, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3865 +assert_return(() => invoke($17, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3866 +assert_return(() => invoke($17, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3867 +assert_return(() => invoke($17, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3868 +assert_return(() => invoke($17, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3869 +assert_return(() => invoke($17, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3870 +assert_return(() => invoke($17, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3871 +assert_return(() => invoke($17, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3872 +assert_return(() => invoke($17, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3873 +assert_return(() => invoke($17, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3874 +assert_return(() => invoke($17, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3875 +assert_return(() => invoke($17, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3876 +assert_return(() => invoke($17, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3877 +assert_return(() => invoke($17, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3878 +assert_return(() => invoke($17, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3879 +assert_return(() => invoke($17, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3880 +assert_return(() => invoke($17, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3881 +assert_return(() => invoke($17, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3882 +assert_return(() => invoke($17, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3883 +assert_return(() => invoke($17, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3884 +assert_return(() => invoke($17, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3885 +assert_return(() => invoke($17, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3886 +assert_return(() => invoke($17, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3887 +assert_return(() => invoke($17, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3888 +assert_return(() => invoke($17, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3889 +assert_return(() => invoke($17, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3890 +assert_return(() => invoke($17, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3891 +assert_return(() => invoke($17, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3892 +assert_return(() => invoke($17, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3893 +assert_return(() => invoke($17, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3894 +assert_return(() => invoke($17, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3895 +assert_return(() => invoke($17, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3896 +assert_return(() => invoke($17, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3897 +assert_return(() => invoke($17, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3898 +assert_return(() => invoke($17, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3899 +assert_return(() => invoke($17, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3900 +assert_return(() => invoke($17, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3901 +assert_return(() => invoke($17, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3902 +assert_return(() => invoke($17, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3903 +assert_return(() => invoke($17, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3904 +assert_return(() => invoke($17, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3905 +assert_return(() => invoke($17, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3906 +assert_return(() => invoke($17, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3907 +assert_return(() => invoke($17, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3908 +assert_return(() => invoke($17, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3909 +assert_return(() => invoke($17, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3910 +assert_return(() => invoke($17, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3911 +assert_return(() => invoke($17, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3912 +assert_return(() => invoke($17, `load8_u`, [61490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3913 +assert_return(() => invoke($17, `load8_u`, [61689]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3914 +assert_return(() => invoke($17, `load8_u`, [61888]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3915 +assert_return(() => invoke($17, `load8_u`, [62087]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3916 +assert_return(() => invoke($17, `load8_u`, [62286]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3917 +assert_return(() => invoke($17, `load8_u`, [62485]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3918 +assert_return(() => invoke($17, `load8_u`, [62684]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3919 +assert_return(() => invoke($17, `load8_u`, [62883]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3920 +assert_return(() => invoke($17, `load8_u`, [63082]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3921 +assert_return(() => invoke($17, `load8_u`, [63281]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3922 +assert_return(() => invoke($17, `load8_u`, [63480]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3923 +assert_return(() => invoke($17, `load8_u`, [63679]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3924 +assert_return(() => invoke($17, `load8_u`, [63878]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3925 +assert_return(() => invoke($17, `load8_u`, [64077]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3926 +assert_return(() => invoke($17, `load8_u`, [64276]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3927 +assert_return(() => invoke($17, `load8_u`, [64475]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3928 +assert_return(() => invoke($17, `load8_u`, [64674]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3929 +assert_return(() => invoke($17, `load8_u`, [64873]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3930 +assert_return(() => invoke($17, `load8_u`, [65072]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3931 +assert_return(() => invoke($17, `load8_u`, [65271]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3932 +assert_return(() => invoke($17, `load8_u`, [65470]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3933 +assert_return(() => invoke($17, `load8_u`, [65516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3934 +assert_return(() => invoke($17, `load8_u`, [65517]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:3935 +assert_return(() => invoke($17, `load8_u`, [65518]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:3936 +assert_return(() => invoke($17, `load8_u`, [65519]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:3937 +assert_return(() => invoke($17, `load8_u`, [65520]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:3938 +assert_return(() => invoke($17, `load8_u`, [65521]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:3939 +assert_return(() => invoke($17, `load8_u`, [65522]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:3940 +assert_return(() => invoke($17, `load8_u`, [65523]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:3941 +assert_return(() => invoke($17, `load8_u`, [65524]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:3942 +assert_return(() => invoke($17, `load8_u`, [65525]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:3943 +assert_return(() => invoke($17, `load8_u`, [65526]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:3944 +assert_return(() => invoke($17, `load8_u`, [65527]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:3945 +assert_return(() => invoke($17, `load8_u`, [65528]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:3946 +assert_return(() => invoke($17, `load8_u`, [65529]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:3947 +assert_return(() => invoke($17, `load8_u`, [65530]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:3948 +assert_return(() => invoke($17, `load8_u`, [65531]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:3949 +assert_return(() => invoke($17, `load8_u`, [65532]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:3950 +assert_return(() => invoke($17, `load8_u`, [65533]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:3951 +assert_return(() => invoke($17, `load8_u`, [65534]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:3952 +assert_return(() => invoke($17, `load8_u`, [65535]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:3954 +let $18 = instantiate(`(module + (memory (export "mem") 1 1 ) + (data (i32.const 61440) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\10\\11\\12\\13") + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (memory.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_copy.wast:3962 +assert_trap(() => invoke($18, `run`, [65516, 61440, -256]), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:3965 +assert_return(() => invoke($18, `load8_u`, [198]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3966 +assert_return(() => invoke($18, `load8_u`, [397]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3967 +assert_return(() => invoke($18, `load8_u`, [596]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3968 +assert_return(() => invoke($18, `load8_u`, [795]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3969 +assert_return(() => invoke($18, `load8_u`, [994]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3970 +assert_return(() => invoke($18, `load8_u`, [1193]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3971 +assert_return(() => invoke($18, `load8_u`, [1392]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3972 +assert_return(() => invoke($18, `load8_u`, [1591]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3973 +assert_return(() => invoke($18, `load8_u`, [1790]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3974 +assert_return(() => invoke($18, `load8_u`, [1989]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3975 +assert_return(() => invoke($18, `load8_u`, [2188]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3976 +assert_return(() => invoke($18, `load8_u`, [2387]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3977 +assert_return(() => invoke($18, `load8_u`, [2586]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3978 +assert_return(() => invoke($18, `load8_u`, [2785]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3979 +assert_return(() => invoke($18, `load8_u`, [2984]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3980 +assert_return(() => invoke($18, `load8_u`, [3183]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3981 +assert_return(() => invoke($18, `load8_u`, [3382]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3982 +assert_return(() => invoke($18, `load8_u`, [3581]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3983 +assert_return(() => invoke($18, `load8_u`, [3780]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3984 +assert_return(() => invoke($18, `load8_u`, [3979]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3985 +assert_return(() => invoke($18, `load8_u`, [4178]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3986 +assert_return(() => invoke($18, `load8_u`, [4377]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3987 +assert_return(() => invoke($18, `load8_u`, [4576]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3988 +assert_return(() => invoke($18, `load8_u`, [4775]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3989 +assert_return(() => invoke($18, `load8_u`, [4974]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3990 +assert_return(() => invoke($18, `load8_u`, [5173]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3991 +assert_return(() => invoke($18, `load8_u`, [5372]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3992 +assert_return(() => invoke($18, `load8_u`, [5571]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3993 +assert_return(() => invoke($18, `load8_u`, [5770]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3994 +assert_return(() => invoke($18, `load8_u`, [5969]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3995 +assert_return(() => invoke($18, `load8_u`, [6168]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3996 +assert_return(() => invoke($18, `load8_u`, [6367]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3997 +assert_return(() => invoke($18, `load8_u`, [6566]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3998 +assert_return(() => invoke($18, `load8_u`, [6765]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:3999 +assert_return(() => invoke($18, `load8_u`, [6964]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4000 +assert_return(() => invoke($18, `load8_u`, [7163]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4001 +assert_return(() => invoke($18, `load8_u`, [7362]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4002 +assert_return(() => invoke($18, `load8_u`, [7561]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4003 +assert_return(() => invoke($18, `load8_u`, [7760]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4004 +assert_return(() => invoke($18, `load8_u`, [7959]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4005 +assert_return(() => invoke($18, `load8_u`, [8158]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4006 +assert_return(() => invoke($18, `load8_u`, [8357]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4007 +assert_return(() => invoke($18, `load8_u`, [8556]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4008 +assert_return(() => invoke($18, `load8_u`, [8755]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4009 +assert_return(() => invoke($18, `load8_u`, [8954]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4010 +assert_return(() => invoke($18, `load8_u`, [9153]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4011 +assert_return(() => invoke($18, `load8_u`, [9352]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4012 +assert_return(() => invoke($18, `load8_u`, [9551]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4013 +assert_return(() => invoke($18, `load8_u`, [9750]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4014 +assert_return(() => invoke($18, `load8_u`, [9949]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4015 +assert_return(() => invoke($18, `load8_u`, [10148]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4016 +assert_return(() => invoke($18, `load8_u`, [10347]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4017 +assert_return(() => invoke($18, `load8_u`, [10546]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4018 +assert_return(() => invoke($18, `load8_u`, [10745]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4019 +assert_return(() => invoke($18, `load8_u`, [10944]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4020 +assert_return(() => invoke($18, `load8_u`, [11143]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4021 +assert_return(() => invoke($18, `load8_u`, [11342]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4022 +assert_return(() => invoke($18, `load8_u`, [11541]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4023 +assert_return(() => invoke($18, `load8_u`, [11740]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4024 +assert_return(() => invoke($18, `load8_u`, [11939]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4025 +assert_return(() => invoke($18, `load8_u`, [12138]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4026 +assert_return(() => invoke($18, `load8_u`, [12337]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4027 +assert_return(() => invoke($18, `load8_u`, [12536]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4028 +assert_return(() => invoke($18, `load8_u`, [12735]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4029 +assert_return(() => invoke($18, `load8_u`, [12934]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4030 +assert_return(() => invoke($18, `load8_u`, [13133]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4031 +assert_return(() => invoke($18, `load8_u`, [13332]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4032 +assert_return(() => invoke($18, `load8_u`, [13531]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4033 +assert_return(() => invoke($18, `load8_u`, [13730]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4034 +assert_return(() => invoke($18, `load8_u`, [13929]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4035 +assert_return(() => invoke($18, `load8_u`, [14128]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4036 +assert_return(() => invoke($18, `load8_u`, [14327]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4037 +assert_return(() => invoke($18, `load8_u`, [14526]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4038 +assert_return(() => invoke($18, `load8_u`, [14725]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4039 +assert_return(() => invoke($18, `load8_u`, [14924]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4040 +assert_return(() => invoke($18, `load8_u`, [15123]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4041 +assert_return(() => invoke($18, `load8_u`, [15322]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4042 +assert_return(() => invoke($18, `load8_u`, [15521]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4043 +assert_return(() => invoke($18, `load8_u`, [15720]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4044 +assert_return(() => invoke($18, `load8_u`, [15919]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4045 +assert_return(() => invoke($18, `load8_u`, [16118]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4046 +assert_return(() => invoke($18, `load8_u`, [16317]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4047 +assert_return(() => invoke($18, `load8_u`, [16516]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4048 +assert_return(() => invoke($18, `load8_u`, [16715]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4049 +assert_return(() => invoke($18, `load8_u`, [16914]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4050 +assert_return(() => invoke($18, `load8_u`, [17113]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4051 +assert_return(() => invoke($18, `load8_u`, [17312]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4052 +assert_return(() => invoke($18, `load8_u`, [17511]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4053 +assert_return(() => invoke($18, `load8_u`, [17710]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4054 +assert_return(() => invoke($18, `load8_u`, [17909]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4055 +assert_return(() => invoke($18, `load8_u`, [18108]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4056 +assert_return(() => invoke($18, `load8_u`, [18307]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4057 +assert_return(() => invoke($18, `load8_u`, [18506]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4058 +assert_return(() => invoke($18, `load8_u`, [18705]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4059 +assert_return(() => invoke($18, `load8_u`, [18904]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4060 +assert_return(() => invoke($18, `load8_u`, [19103]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4061 +assert_return(() => invoke($18, `load8_u`, [19302]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4062 +assert_return(() => invoke($18, `load8_u`, [19501]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4063 +assert_return(() => invoke($18, `load8_u`, [19700]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4064 +assert_return(() => invoke($18, `load8_u`, [19899]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4065 +assert_return(() => invoke($18, `load8_u`, [20098]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4066 +assert_return(() => invoke($18, `load8_u`, [20297]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4067 +assert_return(() => invoke($18, `load8_u`, [20496]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4068 +assert_return(() => invoke($18, `load8_u`, [20695]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4069 +assert_return(() => invoke($18, `load8_u`, [20894]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4070 +assert_return(() => invoke($18, `load8_u`, [21093]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4071 +assert_return(() => invoke($18, `load8_u`, [21292]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4072 +assert_return(() => invoke($18, `load8_u`, [21491]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4073 +assert_return(() => invoke($18, `load8_u`, [21690]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4074 +assert_return(() => invoke($18, `load8_u`, [21889]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4075 +assert_return(() => invoke($18, `load8_u`, [22088]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4076 +assert_return(() => invoke($18, `load8_u`, [22287]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4077 +assert_return(() => invoke($18, `load8_u`, [22486]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4078 +assert_return(() => invoke($18, `load8_u`, [22685]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4079 +assert_return(() => invoke($18, `load8_u`, [22884]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4080 +assert_return(() => invoke($18, `load8_u`, [23083]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4081 +assert_return(() => invoke($18, `load8_u`, [23282]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4082 +assert_return(() => invoke($18, `load8_u`, [23481]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4083 +assert_return(() => invoke($18, `load8_u`, [23680]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4084 +assert_return(() => invoke($18, `load8_u`, [23879]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4085 +assert_return(() => invoke($18, `load8_u`, [24078]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4086 +assert_return(() => invoke($18, `load8_u`, [24277]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4087 +assert_return(() => invoke($18, `load8_u`, [24476]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4088 +assert_return(() => invoke($18, `load8_u`, [24675]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4089 +assert_return(() => invoke($18, `load8_u`, [24874]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4090 +assert_return(() => invoke($18, `load8_u`, [25073]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4091 +assert_return(() => invoke($18, `load8_u`, [25272]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4092 +assert_return(() => invoke($18, `load8_u`, [25471]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4093 +assert_return(() => invoke($18, `load8_u`, [25670]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4094 +assert_return(() => invoke($18, `load8_u`, [25869]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4095 +assert_return(() => invoke($18, `load8_u`, [26068]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4096 +assert_return(() => invoke($18, `load8_u`, [26267]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4097 +assert_return(() => invoke($18, `load8_u`, [26466]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4098 +assert_return(() => invoke($18, `load8_u`, [26665]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4099 +assert_return(() => invoke($18, `load8_u`, [26864]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4100 +assert_return(() => invoke($18, `load8_u`, [27063]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4101 +assert_return(() => invoke($18, `load8_u`, [27262]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4102 +assert_return(() => invoke($18, `load8_u`, [27461]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4103 +assert_return(() => invoke($18, `load8_u`, [27660]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4104 +assert_return(() => invoke($18, `load8_u`, [27859]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4105 +assert_return(() => invoke($18, `load8_u`, [28058]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4106 +assert_return(() => invoke($18, `load8_u`, [28257]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4107 +assert_return(() => invoke($18, `load8_u`, [28456]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4108 +assert_return(() => invoke($18, `load8_u`, [28655]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4109 +assert_return(() => invoke($18, `load8_u`, [28854]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4110 +assert_return(() => invoke($18, `load8_u`, [29053]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4111 +assert_return(() => invoke($18, `load8_u`, [29252]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4112 +assert_return(() => invoke($18, `load8_u`, [29451]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4113 +assert_return(() => invoke($18, `load8_u`, [29650]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4114 +assert_return(() => invoke($18, `load8_u`, [29849]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4115 +assert_return(() => invoke($18, `load8_u`, [30048]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4116 +assert_return(() => invoke($18, `load8_u`, [30247]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4117 +assert_return(() => invoke($18, `load8_u`, [30446]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4118 +assert_return(() => invoke($18, `load8_u`, [30645]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4119 +assert_return(() => invoke($18, `load8_u`, [30844]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4120 +assert_return(() => invoke($18, `load8_u`, [31043]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4121 +assert_return(() => invoke($18, `load8_u`, [31242]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4122 +assert_return(() => invoke($18, `load8_u`, [31441]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4123 +assert_return(() => invoke($18, `load8_u`, [31640]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4124 +assert_return(() => invoke($18, `load8_u`, [31839]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4125 +assert_return(() => invoke($18, `load8_u`, [32038]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4126 +assert_return(() => invoke($18, `load8_u`, [32237]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4127 +assert_return(() => invoke($18, `load8_u`, [32436]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4128 +assert_return(() => invoke($18, `load8_u`, [32635]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4129 +assert_return(() => invoke($18, `load8_u`, [32834]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4130 +assert_return(() => invoke($18, `load8_u`, [33033]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4131 +assert_return(() => invoke($18, `load8_u`, [33232]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4132 +assert_return(() => invoke($18, `load8_u`, [33431]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4133 +assert_return(() => invoke($18, `load8_u`, [33630]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4134 +assert_return(() => invoke($18, `load8_u`, [33829]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4135 +assert_return(() => invoke($18, `load8_u`, [34028]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4136 +assert_return(() => invoke($18, `load8_u`, [34227]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4137 +assert_return(() => invoke($18, `load8_u`, [34426]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4138 +assert_return(() => invoke($18, `load8_u`, [34625]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4139 +assert_return(() => invoke($18, `load8_u`, [34824]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4140 +assert_return(() => invoke($18, `load8_u`, [35023]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4141 +assert_return(() => invoke($18, `load8_u`, [35222]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4142 +assert_return(() => invoke($18, `load8_u`, [35421]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4143 +assert_return(() => invoke($18, `load8_u`, [35620]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4144 +assert_return(() => invoke($18, `load8_u`, [35819]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4145 +assert_return(() => invoke($18, `load8_u`, [36018]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4146 +assert_return(() => invoke($18, `load8_u`, [36217]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4147 +assert_return(() => invoke($18, `load8_u`, [36416]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4148 +assert_return(() => invoke($18, `load8_u`, [36615]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4149 +assert_return(() => invoke($18, `load8_u`, [36814]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4150 +assert_return(() => invoke($18, `load8_u`, [37013]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4151 +assert_return(() => invoke($18, `load8_u`, [37212]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4152 +assert_return(() => invoke($18, `load8_u`, [37411]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4153 +assert_return(() => invoke($18, `load8_u`, [37610]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4154 +assert_return(() => invoke($18, `load8_u`, [37809]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4155 +assert_return(() => invoke($18, `load8_u`, [38008]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4156 +assert_return(() => invoke($18, `load8_u`, [38207]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4157 +assert_return(() => invoke($18, `load8_u`, [38406]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4158 +assert_return(() => invoke($18, `load8_u`, [38605]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4159 +assert_return(() => invoke($18, `load8_u`, [38804]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4160 +assert_return(() => invoke($18, `load8_u`, [39003]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4161 +assert_return(() => invoke($18, `load8_u`, [39202]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4162 +assert_return(() => invoke($18, `load8_u`, [39401]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4163 +assert_return(() => invoke($18, `load8_u`, [39600]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4164 +assert_return(() => invoke($18, `load8_u`, [39799]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4165 +assert_return(() => invoke($18, `load8_u`, [39998]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4166 +assert_return(() => invoke($18, `load8_u`, [40197]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4167 +assert_return(() => invoke($18, `load8_u`, [40396]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4168 +assert_return(() => invoke($18, `load8_u`, [40595]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4169 +assert_return(() => invoke($18, `load8_u`, [40794]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4170 +assert_return(() => invoke($18, `load8_u`, [40993]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4171 +assert_return(() => invoke($18, `load8_u`, [41192]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4172 +assert_return(() => invoke($18, `load8_u`, [41391]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4173 +assert_return(() => invoke($18, `load8_u`, [41590]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4174 +assert_return(() => invoke($18, `load8_u`, [41789]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4175 +assert_return(() => invoke($18, `load8_u`, [41988]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4176 +assert_return(() => invoke($18, `load8_u`, [42187]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4177 +assert_return(() => invoke($18, `load8_u`, [42386]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4178 +assert_return(() => invoke($18, `load8_u`, [42585]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4179 +assert_return(() => invoke($18, `load8_u`, [42784]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4180 +assert_return(() => invoke($18, `load8_u`, [42983]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4181 +assert_return(() => invoke($18, `load8_u`, [43182]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4182 +assert_return(() => invoke($18, `load8_u`, [43381]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4183 +assert_return(() => invoke($18, `load8_u`, [43580]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4184 +assert_return(() => invoke($18, `load8_u`, [43779]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4185 +assert_return(() => invoke($18, `load8_u`, [43978]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4186 +assert_return(() => invoke($18, `load8_u`, [44177]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4187 +assert_return(() => invoke($18, `load8_u`, [44376]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4188 +assert_return(() => invoke($18, `load8_u`, [44575]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4189 +assert_return(() => invoke($18, `load8_u`, [44774]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4190 +assert_return(() => invoke($18, `load8_u`, [44973]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4191 +assert_return(() => invoke($18, `load8_u`, [45172]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4192 +assert_return(() => invoke($18, `load8_u`, [45371]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4193 +assert_return(() => invoke($18, `load8_u`, [45570]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4194 +assert_return(() => invoke($18, `load8_u`, [45769]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4195 +assert_return(() => invoke($18, `load8_u`, [45968]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4196 +assert_return(() => invoke($18, `load8_u`, [46167]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4197 +assert_return(() => invoke($18, `load8_u`, [46366]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4198 +assert_return(() => invoke($18, `load8_u`, [46565]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4199 +assert_return(() => invoke($18, `load8_u`, [46764]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4200 +assert_return(() => invoke($18, `load8_u`, [46963]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4201 +assert_return(() => invoke($18, `load8_u`, [47162]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4202 +assert_return(() => invoke($18, `load8_u`, [47361]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4203 +assert_return(() => invoke($18, `load8_u`, [47560]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4204 +assert_return(() => invoke($18, `load8_u`, [47759]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4205 +assert_return(() => invoke($18, `load8_u`, [47958]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4206 +assert_return(() => invoke($18, `load8_u`, [48157]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4207 +assert_return(() => invoke($18, `load8_u`, [48356]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4208 +assert_return(() => invoke($18, `load8_u`, [48555]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4209 +assert_return(() => invoke($18, `load8_u`, [48754]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4210 +assert_return(() => invoke($18, `load8_u`, [48953]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4211 +assert_return(() => invoke($18, `load8_u`, [49152]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4212 +assert_return(() => invoke($18, `load8_u`, [49351]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4213 +assert_return(() => invoke($18, `load8_u`, [49550]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4214 +assert_return(() => invoke($18, `load8_u`, [49749]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4215 +assert_return(() => invoke($18, `load8_u`, [49948]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4216 +assert_return(() => invoke($18, `load8_u`, [50147]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4217 +assert_return(() => invoke($18, `load8_u`, [50346]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4218 +assert_return(() => invoke($18, `load8_u`, [50545]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4219 +assert_return(() => invoke($18, `load8_u`, [50744]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4220 +assert_return(() => invoke($18, `load8_u`, [50943]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4221 +assert_return(() => invoke($18, `load8_u`, [51142]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4222 +assert_return(() => invoke($18, `load8_u`, [51341]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4223 +assert_return(() => invoke($18, `load8_u`, [51540]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4224 +assert_return(() => invoke($18, `load8_u`, [51739]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4225 +assert_return(() => invoke($18, `load8_u`, [51938]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4226 +assert_return(() => invoke($18, `load8_u`, [52137]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4227 +assert_return(() => invoke($18, `load8_u`, [52336]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4228 +assert_return(() => invoke($18, `load8_u`, [52535]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4229 +assert_return(() => invoke($18, `load8_u`, [52734]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4230 +assert_return(() => invoke($18, `load8_u`, [52933]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4231 +assert_return(() => invoke($18, `load8_u`, [53132]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4232 +assert_return(() => invoke($18, `load8_u`, [53331]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4233 +assert_return(() => invoke($18, `load8_u`, [53530]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4234 +assert_return(() => invoke($18, `load8_u`, [53729]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4235 +assert_return(() => invoke($18, `load8_u`, [53928]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4236 +assert_return(() => invoke($18, `load8_u`, [54127]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4237 +assert_return(() => invoke($18, `load8_u`, [54326]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4238 +assert_return(() => invoke($18, `load8_u`, [54525]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4239 +assert_return(() => invoke($18, `load8_u`, [54724]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4240 +assert_return(() => invoke($18, `load8_u`, [54923]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4241 +assert_return(() => invoke($18, `load8_u`, [55122]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4242 +assert_return(() => invoke($18, `load8_u`, [55321]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4243 +assert_return(() => invoke($18, `load8_u`, [55520]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4244 +assert_return(() => invoke($18, `load8_u`, [55719]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4245 +assert_return(() => invoke($18, `load8_u`, [55918]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4246 +assert_return(() => invoke($18, `load8_u`, [56117]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4247 +assert_return(() => invoke($18, `load8_u`, [56316]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4248 +assert_return(() => invoke($18, `load8_u`, [56515]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4249 +assert_return(() => invoke($18, `load8_u`, [56714]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4250 +assert_return(() => invoke($18, `load8_u`, [56913]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4251 +assert_return(() => invoke($18, `load8_u`, [57112]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4252 +assert_return(() => invoke($18, `load8_u`, [57311]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4253 +assert_return(() => invoke($18, `load8_u`, [57510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4254 +assert_return(() => invoke($18, `load8_u`, [57709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4255 +assert_return(() => invoke($18, `load8_u`, [57908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4256 +assert_return(() => invoke($18, `load8_u`, [58107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4257 +assert_return(() => invoke($18, `load8_u`, [58306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4258 +assert_return(() => invoke($18, `load8_u`, [58505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4259 +assert_return(() => invoke($18, `load8_u`, [58704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4260 +assert_return(() => invoke($18, `load8_u`, [58903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4261 +assert_return(() => invoke($18, `load8_u`, [59102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4262 +assert_return(() => invoke($18, `load8_u`, [59301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4263 +assert_return(() => invoke($18, `load8_u`, [59500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4264 +assert_return(() => invoke($18, `load8_u`, [59699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4265 +assert_return(() => invoke($18, `load8_u`, [59898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4266 +assert_return(() => invoke($18, `load8_u`, [60097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4267 +assert_return(() => invoke($18, `load8_u`, [60296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4268 +assert_return(() => invoke($18, `load8_u`, [60495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4269 +assert_return(() => invoke($18, `load8_u`, [60694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4270 +assert_return(() => invoke($18, `load8_u`, [60893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4271 +assert_return(() => invoke($18, `load8_u`, [61092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4272 +assert_return(() => invoke($18, `load8_u`, [61291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4273 +assert_return(() => invoke($18, `load8_u`, [61440]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4274 +assert_return(() => invoke($18, `load8_u`, [61441]), [value("i32", 1)]); + +// ./test/core/memory_copy.wast:4275 +assert_return(() => invoke($18, `load8_u`, [61442]), [value("i32", 2)]); + +// ./test/core/memory_copy.wast:4276 +assert_return(() => invoke($18, `load8_u`, [61443]), [value("i32", 3)]); + +// ./test/core/memory_copy.wast:4277 +assert_return(() => invoke($18, `load8_u`, [61444]), [value("i32", 4)]); + +// ./test/core/memory_copy.wast:4278 +assert_return(() => invoke($18, `load8_u`, [61445]), [value("i32", 5)]); + +// ./test/core/memory_copy.wast:4279 +assert_return(() => invoke($18, `load8_u`, [61446]), [value("i32", 6)]); + +// ./test/core/memory_copy.wast:4280 +assert_return(() => invoke($18, `load8_u`, [61447]), [value("i32", 7)]); + +// ./test/core/memory_copy.wast:4281 +assert_return(() => invoke($18, `load8_u`, [61448]), [value("i32", 8)]); + +// ./test/core/memory_copy.wast:4282 +assert_return(() => invoke($18, `load8_u`, [61449]), [value("i32", 9)]); + +// ./test/core/memory_copy.wast:4283 +assert_return(() => invoke($18, `load8_u`, [61450]), [value("i32", 10)]); + +// ./test/core/memory_copy.wast:4284 +assert_return(() => invoke($18, `load8_u`, [61451]), [value("i32", 11)]); + +// ./test/core/memory_copy.wast:4285 +assert_return(() => invoke($18, `load8_u`, [61452]), [value("i32", 12)]); + +// ./test/core/memory_copy.wast:4286 +assert_return(() => invoke($18, `load8_u`, [61453]), [value("i32", 13)]); + +// ./test/core/memory_copy.wast:4287 +assert_return(() => invoke($18, `load8_u`, [61454]), [value("i32", 14)]); + +// ./test/core/memory_copy.wast:4288 +assert_return(() => invoke($18, `load8_u`, [61455]), [value("i32", 15)]); + +// ./test/core/memory_copy.wast:4289 +assert_return(() => invoke($18, `load8_u`, [61456]), [value("i32", 16)]); + +// ./test/core/memory_copy.wast:4290 +assert_return(() => invoke($18, `load8_u`, [61457]), [value("i32", 17)]); + +// ./test/core/memory_copy.wast:4291 +assert_return(() => invoke($18, `load8_u`, [61458]), [value("i32", 18)]); + +// ./test/core/memory_copy.wast:4292 +assert_return(() => invoke($18, `load8_u`, [61459]), [value("i32", 19)]); + +// ./test/core/memory_copy.wast:4293 +assert_return(() => invoke($18, `load8_u`, [61510]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4294 +assert_return(() => invoke($18, `load8_u`, [61709]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4295 +assert_return(() => invoke($18, `load8_u`, [61908]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4296 +assert_return(() => invoke($18, `load8_u`, [62107]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4297 +assert_return(() => invoke($18, `load8_u`, [62306]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4298 +assert_return(() => invoke($18, `load8_u`, [62505]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4299 +assert_return(() => invoke($18, `load8_u`, [62704]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4300 +assert_return(() => invoke($18, `load8_u`, [62903]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4301 +assert_return(() => invoke($18, `load8_u`, [63102]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4302 +assert_return(() => invoke($18, `load8_u`, [63301]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4303 +assert_return(() => invoke($18, `load8_u`, [63500]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4304 +assert_return(() => invoke($18, `load8_u`, [63699]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4305 +assert_return(() => invoke($18, `load8_u`, [63898]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4306 +assert_return(() => invoke($18, `load8_u`, [64097]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4307 +assert_return(() => invoke($18, `load8_u`, [64296]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4308 +assert_return(() => invoke($18, `load8_u`, [64495]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4309 +assert_return(() => invoke($18, `load8_u`, [64694]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4310 +assert_return(() => invoke($18, `load8_u`, [64893]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4311 +assert_return(() => invoke($18, `load8_u`, [65092]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4312 +assert_return(() => invoke($18, `load8_u`, [65291]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4313 +assert_return(() => invoke($18, `load8_u`, [65490]), [value("i32", 0)]); + +// ./test/core/memory_copy.wast:4315 +assert_invalid( + () => instantiate(`(module + (func (export "testfn") + (memory.copy (i32.const 10) (i32.const 20) (i32.const 30))))`), + `unknown memory 0`, +); + +// ./test/core/memory_copy.wast:4321 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (i32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4328 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (i32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4335 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (i32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4342 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (f32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4349 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (f32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4356 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (f32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4363 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (f32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4370 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (i64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4377 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (i64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4384 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (i64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4391 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (i64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4398 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (f64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4405 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (f64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4412 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (f64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4419 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i32.const 10) (f64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4426 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (i32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4433 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (i32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4440 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (i32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4447 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (i32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4454 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (f32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4461 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (f32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4468 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (f32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4475 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (f32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4482 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (i64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4489 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (i64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4496 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (i64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4503 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (i64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4510 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (f64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4517 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (f64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4524 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (f64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4531 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f32.const 10) (f64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4538 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (i32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4545 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (i32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4552 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (i32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4559 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (i32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4566 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (f32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4573 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (f32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4580 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (f32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4587 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (f32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4594 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (i64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4601 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (i64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4608 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (i64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4615 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (i64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4622 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (f64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4629 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (f64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4636 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (f64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4643 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (i64.const 10) (f64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4650 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (i32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4657 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (i32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4664 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (i32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4671 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (i32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4678 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (f32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4685 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (f32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4692 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (f32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4699 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (f32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4706 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (i64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4713 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (i64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4720 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (i64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4727 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (i64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4734 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (f64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4741 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (f64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4748 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (f64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4755 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.copy (f64.const 10) (f64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_copy.wast:4763 +let $19 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.fill (i32.const 10) (i32.const 0x55) (i32.const 10)) + (memory.copy (i32.const 9) (i32.const 10) (i32.const 5))) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) +)`); + +// ./test/core/memory_copy.wast:4780 +invoke($19, `test`, []); + +// ./test/core/memory_copy.wast:4782 +assert_return(() => invoke($19, `checkRange`, [0, 9, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:4784 +assert_return(() => invoke($19, `checkRange`, [9, 20, 85]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:4786 +assert_return(() => invoke($19, `checkRange`, [20, 65536, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:4789 +let $20 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.fill (i32.const 10) (i32.const 0x55) (i32.const 10)) + (memory.copy (i32.const 16) (i32.const 15) (i32.const 5))) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) +)`); + +// ./test/core/memory_copy.wast:4806 +invoke($20, `test`, []); + +// ./test/core/memory_copy.wast:4808 +assert_return(() => invoke($20, `checkRange`, [0, 10, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:4810 +assert_return(() => invoke($20, `checkRange`, [10, 21, 85]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:4812 +assert_return(() => invoke($20, `checkRange`, [21, 65536, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:4815 +let $21 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0xFF00) (i32.const 0x8000) (i32.const 257))))`); + +// ./test/core/memory_copy.wast:4819 +assert_trap(() => invoke($21, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:4821 +let $22 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0xFFFFFF00) (i32.const 0x4000) (i32.const 257))))`); + +// ./test/core/memory_copy.wast:4825 +assert_trap(() => invoke($22, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:4827 +let $23 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0x8000) (i32.const 0xFF00) (i32.const 257))))`); + +// ./test/core/memory_copy.wast:4831 +assert_trap(() => invoke($23, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:4833 +let $24 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0x4000) (i32.const 0xFFFFFF00) (i32.const 257))))`); + +// ./test/core/memory_copy.wast:4837 +assert_trap(() => invoke($24, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:4839 +let $25 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.fill (i32.const 0x0000) (i32.const 0x55) (i32.const 0x8000)) + (memory.fill (i32.const 0x8000) (i32.const 0xAA) (i32.const 0x8000)) + (memory.copy (i32.const 0x9000) (i32.const 0x7000) (i32.const 0))) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) +)`); + +// ./test/core/memory_copy.wast:4857 +invoke($25, `test`, []); + +// ./test/core/memory_copy.wast:4859 +assert_return(() => invoke($25, `checkRange`, [0, 32768, 85]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:4861 +assert_return(() => invoke($25, `checkRange`, [32768, 65536, 170]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:4863 +let $26 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0x10000) (i32.const 0x7000) (i32.const 0))))`); + +// ./test/core/memory_copy.wast:4867 +invoke($26, `test`, []); + +// ./test/core/memory_copy.wast:4869 +let $27 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0x20000) (i32.const 0x7000) (i32.const 0))))`); + +// ./test/core/memory_copy.wast:4873 +assert_trap(() => invoke($27, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:4875 +let $28 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0x9000) (i32.const 0x10000) (i32.const 0))))`); + +// ./test/core/memory_copy.wast:4879 +invoke($28, `test`, []); + +// ./test/core/memory_copy.wast:4881 +let $29 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0x9000) (i32.const 0x20000) (i32.const 0))))`); + +// ./test/core/memory_copy.wast:4885 +assert_trap(() => invoke($29, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:4887 +let $30 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0x10000) (i32.const 0x10000) (i32.const 0))))`); + +// ./test/core/memory_copy.wast:4891 +invoke($30, `test`, []); + +// ./test/core/memory_copy.wast:4893 +let $31 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.copy (i32.const 0x20000) (i32.const 0x20000) (i32.const 0))))`); + +// ./test/core/memory_copy.wast:4897 +assert_trap(() => invoke($31, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_copy.wast:4899 +let $32 = instantiate(`(module + (memory 1 1) + (func (export "test") + (memory.fill (i32.const 17767) (i32.const 1) (i32.const 1344)) + (memory.fill (i32.const 39017) (i32.const 2) (i32.const 1055)) + (memory.fill (i32.const 56401) (i32.const 3) (i32.const 988)) + (memory.fill (i32.const 37962) (i32.const 4) (i32.const 322)) + (memory.fill (i32.const 7977) (i32.const 5) (i32.const 1994)) + (memory.fill (i32.const 22714) (i32.const 6) (i32.const 3036)) + (memory.fill (i32.const 16882) (i32.const 7) (i32.const 2372)) + (memory.fill (i32.const 43491) (i32.const 8) (i32.const 835)) + (memory.fill (i32.const 124) (i32.const 9) (i32.const 1393)) + (memory.fill (i32.const 2132) (i32.const 10) (i32.const 2758)) + (memory.fill (i32.const 8987) (i32.const 11) (i32.const 3098)) + (memory.fill (i32.const 52711) (i32.const 12) (i32.const 741)) + (memory.fill (i32.const 3958) (i32.const 13) (i32.const 2823)) + (memory.fill (i32.const 49715) (i32.const 14) (i32.const 1280)) + (memory.fill (i32.const 50377) (i32.const 15) (i32.const 1466)) + (memory.fill (i32.const 20493) (i32.const 16) (i32.const 3158)) + (memory.fill (i32.const 47665) (i32.const 17) (i32.const 544)) + (memory.fill (i32.const 12451) (i32.const 18) (i32.const 2669)) + (memory.fill (i32.const 24869) (i32.const 19) (i32.const 2651)) + (memory.fill (i32.const 45317) (i32.const 20) (i32.const 1570)) + (memory.fill (i32.const 43096) (i32.const 21) (i32.const 1691)) + (memory.fill (i32.const 33886) (i32.const 22) (i32.const 646)) + (memory.fill (i32.const 48555) (i32.const 23) (i32.const 1858)) + (memory.fill (i32.const 53453) (i32.const 24) (i32.const 2657)) + (memory.fill (i32.const 30363) (i32.const 25) (i32.const 981)) + (memory.fill (i32.const 9300) (i32.const 26) (i32.const 1807)) + (memory.fill (i32.const 50190) (i32.const 27) (i32.const 487)) + (memory.fill (i32.const 62753) (i32.const 28) (i32.const 530)) + (memory.fill (i32.const 36316) (i32.const 29) (i32.const 943)) + (memory.fill (i32.const 6768) (i32.const 30) (i32.const 381)) + (memory.fill (i32.const 51262) (i32.const 31) (i32.const 3089)) + (memory.fill (i32.const 49729) (i32.const 32) (i32.const 658)) + (memory.fill (i32.const 44540) (i32.const 33) (i32.const 1702)) + (memory.fill (i32.const 33342) (i32.const 34) (i32.const 1092)) + (memory.fill (i32.const 50814) (i32.const 35) (i32.const 1410)) + (memory.fill (i32.const 47594) (i32.const 36) (i32.const 2204)) + (memory.fill (i32.const 54123) (i32.const 37) (i32.const 2394)) + (memory.fill (i32.const 55183) (i32.const 38) (i32.const 250)) + (memory.fill (i32.const 22620) (i32.const 39) (i32.const 2097)) + (memory.fill (i32.const 17132) (i32.const 40) (i32.const 3264)) + (memory.fill (i32.const 54331) (i32.const 41) (i32.const 3299)) + (memory.fill (i32.const 39474) (i32.const 42) (i32.const 2796)) + (memory.fill (i32.const 36156) (i32.const 43) (i32.const 2070)) + (memory.fill (i32.const 35308) (i32.const 44) (i32.const 2763)) + (memory.fill (i32.const 32731) (i32.const 45) (i32.const 312)) + (memory.fill (i32.const 63746) (i32.const 46) (i32.const 192)) + (memory.fill (i32.const 30974) (i32.const 47) (i32.const 596)) + (memory.fill (i32.const 16635) (i32.const 48) (i32.const 501)) + (memory.fill (i32.const 57002) (i32.const 49) (i32.const 686)) + (memory.fill (i32.const 34299) (i32.const 50) (i32.const 385)) + (memory.fill (i32.const 60881) (i32.const 51) (i32.const 903)) + (memory.fill (i32.const 61445) (i32.const 52) (i32.const 2390)) + (memory.fill (i32.const 46972) (i32.const 53) (i32.const 1441)) + (memory.fill (i32.const 25973) (i32.const 54) (i32.const 3162)) + (memory.fill (i32.const 5566) (i32.const 55) (i32.const 2135)) + (memory.fill (i32.const 35977) (i32.const 56) (i32.const 519)) + (memory.fill (i32.const 44892) (i32.const 57) (i32.const 3280)) + (memory.fill (i32.const 46760) (i32.const 58) (i32.const 1678)) + (memory.fill (i32.const 46607) (i32.const 59) (i32.const 3168)) + (memory.fill (i32.const 22449) (i32.const 60) (i32.const 1441)) + (memory.fill (i32.const 58609) (i32.const 61) (i32.const 663)) + (memory.fill (i32.const 32261) (i32.const 62) (i32.const 1671)) + (memory.fill (i32.const 3063) (i32.const 63) (i32.const 721)) + (memory.fill (i32.const 34025) (i32.const 64) (i32.const 84)) + (memory.fill (i32.const 33338) (i32.const 65) (i32.const 2029)) + (memory.fill (i32.const 36810) (i32.const 66) (i32.const 29)) + (memory.fill (i32.const 19147) (i32.const 67) (i32.const 3034)) + (memory.fill (i32.const 12616) (i32.const 68) (i32.const 1043)) + (memory.fill (i32.const 18276) (i32.const 69) (i32.const 3324)) + (memory.fill (i32.const 4639) (i32.const 70) (i32.const 1091)) + (memory.fill (i32.const 16158) (i32.const 71) (i32.const 1997)) + (memory.fill (i32.const 18204) (i32.const 72) (i32.const 2259)) + (memory.fill (i32.const 50532) (i32.const 73) (i32.const 3189)) + (memory.fill (i32.const 11028) (i32.const 74) (i32.const 1968)) + (memory.fill (i32.const 15962) (i32.const 75) (i32.const 1455)) + (memory.fill (i32.const 45406) (i32.const 76) (i32.const 1177)) + (memory.fill (i32.const 54137) (i32.const 77) (i32.const 1568)) + (memory.fill (i32.const 33083) (i32.const 78) (i32.const 1642)) + (memory.fill (i32.const 61028) (i32.const 79) (i32.const 3284)) + (memory.fill (i32.const 51729) (i32.const 80) (i32.const 223)) + (memory.fill (i32.const 4361) (i32.const 81) (i32.const 2171)) + (memory.fill (i32.const 57514) (i32.const 82) (i32.const 1322)) + (memory.fill (i32.const 55724) (i32.const 83) (i32.const 2648)) + (memory.fill (i32.const 24091) (i32.const 84) (i32.const 1045)) + (memory.fill (i32.const 43183) (i32.const 85) (i32.const 3097)) + (memory.fill (i32.const 32307) (i32.const 86) (i32.const 2796)) + (memory.fill (i32.const 3811) (i32.const 87) (i32.const 2010)) + (memory.fill (i32.const 54856) (i32.const 88) (i32.const 0)) + (memory.fill (i32.const 49941) (i32.const 89) (i32.const 2069)) + (memory.fill (i32.const 20411) (i32.const 90) (i32.const 2896)) + (memory.fill (i32.const 33826) (i32.const 91) (i32.const 192)) + (memory.fill (i32.const 9402) (i32.const 92) (i32.const 2195)) + (memory.fill (i32.const 12413) (i32.const 93) (i32.const 24)) + (memory.fill (i32.const 14091) (i32.const 94) (i32.const 577)) + (memory.fill (i32.const 44058) (i32.const 95) (i32.const 2089)) + (memory.fill (i32.const 36735) (i32.const 96) (i32.const 3436)) + (memory.fill (i32.const 23288) (i32.const 97) (i32.const 2765)) + (memory.fill (i32.const 6392) (i32.const 98) (i32.const 830)) + (memory.fill (i32.const 33307) (i32.const 99) (i32.const 1938)) + (memory.fill (i32.const 21941) (i32.const 100) (i32.const 2750)) + (memory.copy (i32.const 59214) (i32.const 54248) (i32.const 2098)) + (memory.copy (i32.const 63026) (i32.const 39224) (i32.const 230)) + (memory.copy (i32.const 51833) (i32.const 23629) (i32.const 2300)) + (memory.copy (i32.const 6708) (i32.const 23996) (i32.const 639)) + (memory.copy (i32.const 6990) (i32.const 33399) (i32.const 1097)) + (memory.copy (i32.const 19403) (i32.const 10348) (i32.const 3197)) + (memory.copy (i32.const 27308) (i32.const 54406) (i32.const 100)) + (memory.copy (i32.const 27221) (i32.const 43682) (i32.const 1717)) + (memory.copy (i32.const 60528) (i32.const 8629) (i32.const 119)) + (memory.copy (i32.const 5947) (i32.const 2308) (i32.const 658)) + (memory.copy (i32.const 4787) (i32.const 51631) (i32.const 2269)) + (memory.copy (i32.const 12617) (i32.const 19197) (i32.const 833)) + (memory.copy (i32.const 11854) (i32.const 46505) (i32.const 3300)) + (memory.copy (i32.const 11376) (i32.const 45012) (i32.const 2281)) + (memory.copy (i32.const 34186) (i32.const 6697) (i32.const 2572)) + (memory.copy (i32.const 4936) (i32.const 1690) (i32.const 1328)) + (memory.copy (i32.const 63164) (i32.const 7637) (i32.const 1670)) + (memory.copy (i32.const 44568) (i32.const 18344) (i32.const 33)) + (memory.copy (i32.const 43918) (i32.const 22348) (i32.const 1427)) + (memory.copy (i32.const 46637) (i32.const 49819) (i32.const 1434)) + (memory.copy (i32.const 63684) (i32.const 8755) (i32.const 834)) + (memory.copy (i32.const 33485) (i32.const 20131) (i32.const 3317)) + (memory.copy (i32.const 40575) (i32.const 54317) (i32.const 3201)) + (memory.copy (i32.const 25812) (i32.const 59254) (i32.const 2452)) + (memory.copy (i32.const 19678) (i32.const 56882) (i32.const 346)) + (memory.copy (i32.const 15852) (i32.const 35914) (i32.const 2430)) + (memory.copy (i32.const 11824) (i32.const 35574) (i32.const 300)) + (memory.copy (i32.const 59427) (i32.const 13957) (i32.const 3153)) + (memory.copy (i32.const 34299) (i32.const 60594) (i32.const 1281)) + (memory.copy (i32.const 8964) (i32.const 12276) (i32.const 943)) + (memory.copy (i32.const 2827) (i32.const 10425) (i32.const 1887)) + (memory.copy (i32.const 43194) (i32.const 43910) (i32.const 738)) + (memory.copy (i32.const 63038) (i32.const 18949) (i32.const 122)) + (memory.copy (i32.const 24044) (i32.const 44761) (i32.const 1755)) + (memory.copy (i32.const 22608) (i32.const 14755) (i32.const 702)) + (memory.copy (i32.const 11284) (i32.const 26579) (i32.const 1830)) + (memory.copy (i32.const 23092) (i32.const 20471) (i32.const 1064)) + (memory.copy (i32.const 57248) (i32.const 54770) (i32.const 2631)) + (memory.copy (i32.const 25492) (i32.const 1025) (i32.const 3113)) + (memory.copy (i32.const 49588) (i32.const 44220) (i32.const 975)) + (memory.copy (i32.const 28280) (i32.const 41722) (i32.const 2336)) + (memory.copy (i32.const 61289) (i32.const 230) (i32.const 2872)) + (memory.copy (i32.const 22480) (i32.const 52506) (i32.const 2197)) + (memory.copy (i32.const 40553) (i32.const 9578) (i32.const 1958)) + (memory.copy (i32.const 29004) (i32.const 20862) (i32.const 2186)) + (memory.copy (i32.const 53029) (i32.const 43955) (i32.const 1037)) + (memory.copy (i32.const 25476) (i32.const 35667) (i32.const 1650)) + (memory.copy (i32.const 58516) (i32.const 45819) (i32.const 1986)) + (memory.copy (i32.const 38297) (i32.const 5776) (i32.const 1955)) + (memory.copy (i32.const 28503) (i32.const 55364) (i32.const 2368)) + (memory.copy (i32.const 62619) (i32.const 18108) (i32.const 1356)) + (memory.copy (i32.const 50149) (i32.const 13861) (i32.const 382)) + (memory.copy (i32.const 16904) (i32.const 36341) (i32.const 1900)) + (memory.copy (i32.const 48098) (i32.const 11358) (i32.const 2807)) + (memory.copy (i32.const 28512) (i32.const 40362) (i32.const 323)) + (memory.copy (i32.const 35506) (i32.const 27856) (i32.const 1670)) + (memory.copy (i32.const 62970) (i32.const 53332) (i32.const 1341)) + (memory.copy (i32.const 14133) (i32.const 46312) (i32.const 644)) + (memory.copy (i32.const 29030) (i32.const 19074) (i32.const 496)) + (memory.copy (i32.const 44952) (i32.const 47577) (i32.const 2784)) + (memory.copy (i32.const 39559) (i32.const 44661) (i32.const 1350)) + (memory.copy (i32.const 10352) (i32.const 29274) (i32.const 1475)) + (memory.copy (i32.const 46911) (i32.const 46178) (i32.const 1467)) + (memory.copy (i32.const 4905) (i32.const 28740) (i32.const 1895)) + (memory.copy (i32.const 38012) (i32.const 57253) (i32.const 1751)) + (memory.copy (i32.const 26446) (i32.const 27223) (i32.const 1127)) + (memory.copy (i32.const 58835) (i32.const 24657) (i32.const 1063)) + (memory.copy (i32.const 61356) (i32.const 38790) (i32.const 766)) + (memory.copy (i32.const 44160) (i32.const 2284) (i32.const 1520)) + (memory.copy (i32.const 32740) (i32.const 47237) (i32.const 3014)) + (memory.copy (i32.const 11148) (i32.const 21260) (i32.const 1011)) + (memory.copy (i32.const 7665) (i32.const 31612) (i32.const 3034)) + (memory.copy (i32.const 18044) (i32.const 12987) (i32.const 3320)) + (memory.copy (i32.const 57306) (i32.const 55905) (i32.const 308)) + (memory.copy (i32.const 24675) (i32.const 16815) (i32.const 1155)) + (memory.copy (i32.const 19900) (i32.const 10115) (i32.const 722)) + (memory.copy (i32.const 2921) (i32.const 5935) (i32.const 2370)) + (memory.copy (i32.const 32255) (i32.const 50095) (i32.const 2926)) + (memory.copy (i32.const 15126) (i32.const 17299) (i32.const 2607)) + (memory.copy (i32.const 45575) (i32.const 28447) (i32.const 2045)) + (memory.copy (i32.const 55149) (i32.const 36113) (i32.const 2596)) + (memory.copy (i32.const 28461) (i32.const 54157) (i32.const 1168)) + (memory.copy (i32.const 47951) (i32.const 53385) (i32.const 3137)) + (memory.copy (i32.const 30646) (i32.const 45155) (i32.const 2649)) + (memory.copy (i32.const 5057) (i32.const 4295) (i32.const 52)) + (memory.copy (i32.const 6692) (i32.const 24195) (i32.const 441)) + (memory.copy (i32.const 32984) (i32.const 27117) (i32.const 3445)) + (memory.copy (i32.const 32530) (i32.const 59372) (i32.const 2785)) + (memory.copy (i32.const 34361) (i32.const 8962) (i32.const 2406)) + (memory.copy (i32.const 17893) (i32.const 54538) (i32.const 3381)) + (memory.copy (i32.const 22685) (i32.const 44151) (i32.const 136)) + (memory.copy (i32.const 59089) (i32.const 7077) (i32.const 1045)) + (memory.copy (i32.const 42945) (i32.const 55028) (i32.const 2389)) + (memory.copy (i32.const 44693) (i32.const 20138) (i32.const 877)) + (memory.copy (i32.const 36810) (i32.const 25196) (i32.const 3447)) + (memory.copy (i32.const 45742) (i32.const 31888) (i32.const 854)) + (memory.copy (i32.const 24236) (i32.const 31866) (i32.const 1377)) + (memory.copy (i32.const 33778) (i32.const 692) (i32.const 1594)) + (memory.copy (i32.const 60618) (i32.const 18585) (i32.const 2987)) + (memory.copy (i32.const 50370) (i32.const 41271) (i32.const 1406)) + ) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) +)`); + +// ./test/core/memory_copy.wast:5115 +invoke($32, `test`, []); + +// ./test/core/memory_copy.wast:5117 +assert_return(() => invoke($32, `checkRange`, [0, 124, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5119 +assert_return(() => invoke($32, `checkRange`, [124, 1517, 9]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5121 +assert_return(() => invoke($32, `checkRange`, [1517, 2132, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5123 +assert_return(() => invoke($32, `checkRange`, [2132, 2827, 10]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5125 +assert_return(() => invoke($32, `checkRange`, [2827, 2921, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5127 +assert_return(() => invoke($32, `checkRange`, [2921, 3538, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5129 +assert_return(() => invoke($32, `checkRange`, [3538, 3786, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5131 +assert_return(() => invoke($32, `checkRange`, [3786, 4042, 97]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5133 +assert_return(() => invoke($32, `checkRange`, [4042, 4651, 99]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5135 +assert_return(() => invoke($32, `checkRange`, [4651, 5057, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5137 +assert_return(() => invoke($32, `checkRange`, [5057, 5109, 99]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5139 +assert_return(() => invoke($32, `checkRange`, [5109, 5291, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5141 +assert_return(() => invoke($32, `checkRange`, [5291, 5524, 72]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5143 +assert_return(() => invoke($32, `checkRange`, [5524, 5691, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5145 +assert_return(() => invoke($32, `checkRange`, [5691, 6552, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5147 +assert_return(() => invoke($32, `checkRange`, [6552, 7133, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5149 +assert_return(() => invoke($32, `checkRange`, [7133, 7665, 99]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5151 +assert_return(() => invoke($32, `checkRange`, [7665, 8314, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5153 +assert_return(() => invoke($32, `checkRange`, [8314, 8360, 62]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5155 +assert_return(() => invoke($32, `checkRange`, [8360, 8793, 86]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5157 +assert_return(() => invoke($32, `checkRange`, [8793, 8979, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5159 +assert_return(() => invoke($32, `checkRange`, [8979, 9373, 79]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5161 +assert_return(() => invoke($32, `checkRange`, [9373, 9518, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5163 +assert_return(() => invoke($32, `checkRange`, [9518, 9934, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5165 +assert_return(() => invoke($32, `checkRange`, [9934, 10087, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5167 +assert_return(() => invoke($32, `checkRange`, [10087, 10206, 5]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5169 +assert_return(() => invoke($32, `checkRange`, [10206, 10230, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5171 +assert_return(() => invoke($32, `checkRange`, [10230, 10249, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5173 +assert_return(() => invoke($32, `checkRange`, [10249, 11148, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5175 +assert_return(() => invoke($32, `checkRange`, [11148, 11356, 74]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5177 +assert_return(() => invoke($32, `checkRange`, [11356, 11380, 93]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5179 +assert_return(() => invoke($32, `checkRange`, [11380, 11939, 74]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5181 +assert_return(() => invoke($32, `checkRange`, [11939, 12159, 68]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5183 +assert_return(() => invoke($32, `checkRange`, [12159, 12575, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5185 +assert_return(() => invoke($32, `checkRange`, [12575, 12969, 79]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5187 +assert_return(() => invoke($32, `checkRange`, [12969, 13114, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5189 +assert_return(() => invoke($32, `checkRange`, [13114, 14133, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5191 +assert_return(() => invoke($32, `checkRange`, [14133, 14404, 76]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5193 +assert_return(() => invoke($32, `checkRange`, [14404, 14428, 57]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5195 +assert_return(() => invoke($32, `checkRange`, [14428, 14458, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5197 +assert_return(() => invoke($32, `checkRange`, [14458, 14580, 32]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5199 +assert_return(() => invoke($32, `checkRange`, [14580, 14777, 89]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5201 +assert_return(() => invoke($32, `checkRange`, [14777, 15124, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5203 +assert_return(() => invoke($32, `checkRange`, [15124, 15126, 36]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5205 +assert_return(() => invoke($32, `checkRange`, [15126, 15192, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5207 +assert_return(() => invoke($32, `checkRange`, [15192, 15871, 96]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5209 +assert_return(() => invoke($32, `checkRange`, [15871, 15998, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5211 +assert_return(() => invoke($32, `checkRange`, [15998, 17017, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5213 +assert_return(() => invoke($32, `checkRange`, [17017, 17288, 76]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5215 +assert_return(() => invoke($32, `checkRange`, [17288, 17312, 57]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5217 +assert_return(() => invoke($32, `checkRange`, [17312, 17342, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5219 +assert_return(() => invoke($32, `checkRange`, [17342, 17464, 32]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5221 +assert_return(() => invoke($32, `checkRange`, [17464, 17661, 89]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5223 +assert_return(() => invoke($32, `checkRange`, [17661, 17727, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5225 +assert_return(() => invoke($32, `checkRange`, [17727, 17733, 5]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5227 +assert_return(() => invoke($32, `checkRange`, [17733, 17893, 96]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5229 +assert_return(() => invoke($32, `checkRange`, [17893, 18553, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5231 +assert_return(() => invoke($32, `checkRange`, [18553, 18744, 42]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5233 +assert_return(() => invoke($32, `checkRange`, [18744, 18801, 76]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5235 +assert_return(() => invoke($32, `checkRange`, [18801, 18825, 57]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5237 +assert_return(() => invoke($32, `checkRange`, [18825, 18876, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5239 +assert_return(() => invoke($32, `checkRange`, [18876, 18885, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5241 +assert_return(() => invoke($32, `checkRange`, [18885, 18904, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5243 +assert_return(() => invoke($32, `checkRange`, [18904, 19567, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5245 +assert_return(() => invoke($32, `checkRange`, [19567, 20403, 96]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5247 +assert_return(() => invoke($32, `checkRange`, [20403, 21274, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5249 +assert_return(() => invoke($32, `checkRange`, [21274, 21364, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5251 +assert_return(() => invoke($32, `checkRange`, [21364, 21468, 74]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5253 +assert_return(() => invoke($32, `checkRange`, [21468, 21492, 93]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5255 +assert_return(() => invoke($32, `checkRange`, [21492, 22051, 74]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5257 +assert_return(() => invoke($32, `checkRange`, [22051, 22480, 68]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5259 +assert_return(() => invoke($32, `checkRange`, [22480, 22685, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5261 +assert_return(() => invoke($32, `checkRange`, [22685, 22694, 68]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5263 +assert_return(() => invoke($32, `checkRange`, [22694, 22821, 10]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5265 +assert_return(() => invoke($32, `checkRange`, [22821, 22869, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5267 +assert_return(() => invoke($32, `checkRange`, [22869, 24107, 97]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5269 +assert_return(() => invoke($32, `checkRange`, [24107, 24111, 37]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5271 +assert_return(() => invoke($32, `checkRange`, [24111, 24236, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5273 +assert_return(() => invoke($32, `checkRange`, [24236, 24348, 72]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5275 +assert_return(() => invoke($32, `checkRange`, [24348, 24515, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5277 +assert_return(() => invoke($32, `checkRange`, [24515, 24900, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5279 +assert_return(() => invoke($32, `checkRange`, [24900, 25136, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5281 +assert_return(() => invoke($32, `checkRange`, [25136, 25182, 85]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5283 +assert_return(() => invoke($32, `checkRange`, [25182, 25426, 68]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5285 +assert_return(() => invoke($32, `checkRange`, [25426, 25613, 89]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5287 +assert_return(() => invoke($32, `checkRange`, [25613, 25830, 96]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5289 +assert_return(() => invoke($32, `checkRange`, [25830, 26446, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5291 +assert_return(() => invoke($32, `checkRange`, [26446, 26517, 10]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5293 +assert_return(() => invoke($32, `checkRange`, [26517, 27468, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5295 +assert_return(() => invoke($32, `checkRange`, [27468, 27503, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5297 +assert_return(() => invoke($32, `checkRange`, [27503, 27573, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5299 +assert_return(() => invoke($32, `checkRange`, [27573, 28245, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5301 +assert_return(() => invoke($32, `checkRange`, [28245, 28280, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5303 +assert_return(() => invoke($32, `checkRange`, [28280, 29502, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5305 +assert_return(() => invoke($32, `checkRange`, [29502, 29629, 42]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5307 +assert_return(() => invoke($32, `checkRange`, [29629, 30387, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5309 +assert_return(() => invoke($32, `checkRange`, [30387, 30646, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5311 +assert_return(() => invoke($32, `checkRange`, [30646, 31066, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5313 +assert_return(() => invoke($32, `checkRange`, [31066, 31131, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5315 +assert_return(() => invoke($32, `checkRange`, [31131, 31322, 42]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5317 +assert_return(() => invoke($32, `checkRange`, [31322, 31379, 76]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5319 +assert_return(() => invoke($32, `checkRange`, [31379, 31403, 57]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5321 +assert_return(() => invoke($32, `checkRange`, [31403, 31454, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5323 +assert_return(() => invoke($32, `checkRange`, [31454, 31463, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5325 +assert_return(() => invoke($32, `checkRange`, [31463, 31482, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5327 +assert_return(() => invoke($32, `checkRange`, [31482, 31649, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5329 +assert_return(() => invoke($32, `checkRange`, [31649, 31978, 72]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5331 +assert_return(() => invoke($32, `checkRange`, [31978, 32145, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5333 +assert_return(() => invoke($32, `checkRange`, [32145, 32530, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5335 +assert_return(() => invoke($32, `checkRange`, [32530, 32766, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5337 +assert_return(() => invoke($32, `checkRange`, [32766, 32812, 85]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5339 +assert_return(() => invoke($32, `checkRange`, [32812, 33056, 68]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5341 +assert_return(() => invoke($32, `checkRange`, [33056, 33660, 89]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5343 +assert_return(() => invoke($32, `checkRange`, [33660, 33752, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5345 +assert_return(() => invoke($32, `checkRange`, [33752, 33775, 36]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5347 +assert_return(() => invoke($32, `checkRange`, [33775, 33778, 32]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5349 +assert_return(() => invoke($32, `checkRange`, [33778, 34603, 9]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5351 +assert_return(() => invoke($32, `checkRange`, [34603, 35218, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5353 +assert_return(() => invoke($32, `checkRange`, [35218, 35372, 10]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5355 +assert_return(() => invoke($32, `checkRange`, [35372, 35486, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5357 +assert_return(() => invoke($32, `checkRange`, [35486, 35605, 5]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5359 +assert_return(() => invoke($32, `checkRange`, [35605, 35629, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5361 +assert_return(() => invoke($32, `checkRange`, [35629, 35648, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5363 +assert_return(() => invoke($32, `checkRange`, [35648, 36547, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5365 +assert_return(() => invoke($32, `checkRange`, [36547, 36755, 74]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5367 +assert_return(() => invoke($32, `checkRange`, [36755, 36767, 93]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5369 +assert_return(() => invoke($32, `checkRange`, [36767, 36810, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5371 +assert_return(() => invoke($32, `checkRange`, [36810, 36839, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5373 +assert_return(() => invoke($32, `checkRange`, [36839, 37444, 96]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5375 +assert_return(() => invoke($32, `checkRange`, [37444, 38060, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5377 +assert_return(() => invoke($32, `checkRange`, [38060, 38131, 10]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5379 +assert_return(() => invoke($32, `checkRange`, [38131, 39082, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5381 +assert_return(() => invoke($32, `checkRange`, [39082, 39117, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5383 +assert_return(() => invoke($32, `checkRange`, [39117, 39187, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5385 +assert_return(() => invoke($32, `checkRange`, [39187, 39859, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5387 +assert_return(() => invoke($32, `checkRange`, [39859, 39894, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5389 +assert_return(() => invoke($32, `checkRange`, [39894, 40257, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5391 +assert_return(() => invoke($32, `checkRange`, [40257, 40344, 89]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5393 +assert_return(() => invoke($32, `checkRange`, [40344, 40371, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5395 +assert_return(() => invoke($32, `checkRange`, [40371, 40804, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5397 +assert_return(() => invoke($32, `checkRange`, [40804, 40909, 5]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5399 +assert_return(() => invoke($32, `checkRange`, [40909, 42259, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5401 +assert_return(() => invoke($32, `checkRange`, [42259, 42511, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5403 +assert_return(() => invoke($32, `checkRange`, [42511, 42945, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5405 +assert_return(() => invoke($32, `checkRange`, [42945, 43115, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5407 +assert_return(() => invoke($32, `checkRange`, [43115, 43306, 42]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5409 +assert_return(() => invoke($32, `checkRange`, [43306, 43363, 76]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5411 +assert_return(() => invoke($32, `checkRange`, [43363, 43387, 57]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5413 +assert_return(() => invoke($32, `checkRange`, [43387, 43438, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5415 +assert_return(() => invoke($32, `checkRange`, [43438, 43447, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5417 +assert_return(() => invoke($32, `checkRange`, [43447, 43466, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5419 +assert_return(() => invoke($32, `checkRange`, [43466, 44129, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5421 +assert_return(() => invoke($32, `checkRange`, [44129, 44958, 96]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5423 +assert_return(() => invoke($32, `checkRange`, [44958, 45570, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5425 +assert_return(() => invoke($32, `checkRange`, [45570, 45575, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5427 +assert_return(() => invoke($32, `checkRange`, [45575, 45640, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5429 +assert_return(() => invoke($32, `checkRange`, [45640, 45742, 42]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5431 +assert_return(() => invoke($32, `checkRange`, [45742, 45832, 72]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5433 +assert_return(() => invoke($32, `checkRange`, [45832, 45999, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5435 +assert_return(() => invoke($32, `checkRange`, [45999, 46384, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5437 +assert_return(() => invoke($32, `checkRange`, [46384, 46596, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5439 +assert_return(() => invoke($32, `checkRange`, [46596, 46654, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5441 +assert_return(() => invoke($32, `checkRange`, [46654, 47515, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5443 +assert_return(() => invoke($32, `checkRange`, [47515, 47620, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5445 +assert_return(() => invoke($32, `checkRange`, [47620, 47817, 79]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5447 +assert_return(() => invoke($32, `checkRange`, [47817, 47951, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5449 +assert_return(() => invoke($32, `checkRange`, [47951, 48632, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5451 +assert_return(() => invoke($32, `checkRange`, [48632, 48699, 97]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5453 +assert_return(() => invoke($32, `checkRange`, [48699, 48703, 37]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5455 +assert_return(() => invoke($32, `checkRange`, [48703, 49764, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5457 +assert_return(() => invoke($32, `checkRange`, [49764, 49955, 42]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5459 +assert_return(() => invoke($32, `checkRange`, [49955, 50012, 76]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5461 +assert_return(() => invoke($32, `checkRange`, [50012, 50036, 57]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5463 +assert_return(() => invoke($32, `checkRange`, [50036, 50087, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5465 +assert_return(() => invoke($32, `checkRange`, [50087, 50096, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5467 +assert_return(() => invoke($32, `checkRange`, [50096, 50115, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5469 +assert_return(() => invoke($32, `checkRange`, [50115, 50370, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5471 +assert_return(() => invoke($32, `checkRange`, [50370, 51358, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5473 +assert_return(() => invoke($32, `checkRange`, [51358, 51610, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5475 +assert_return(() => invoke($32, `checkRange`, [51610, 51776, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5477 +assert_return(() => invoke($32, `checkRange`, [51776, 51833, 89]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5479 +assert_return(() => invoke($32, `checkRange`, [51833, 52895, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5481 +assert_return(() => invoke($32, `checkRange`, [52895, 53029, 97]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5483 +assert_return(() => invoke($32, `checkRange`, [53029, 53244, 68]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5485 +assert_return(() => invoke($32, `checkRange`, [53244, 54066, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5487 +assert_return(() => invoke($32, `checkRange`, [54066, 54133, 97]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5489 +assert_return(() => invoke($32, `checkRange`, [54133, 54137, 37]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5491 +assert_return(() => invoke($32, `checkRange`, [54137, 55198, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5493 +assert_return(() => invoke($32, `checkRange`, [55198, 55389, 42]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5495 +assert_return(() => invoke($32, `checkRange`, [55389, 55446, 76]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5497 +assert_return(() => invoke($32, `checkRange`, [55446, 55470, 57]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5499 +assert_return(() => invoke($32, `checkRange`, [55470, 55521, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5501 +assert_return(() => invoke($32, `checkRange`, [55521, 55530, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5503 +assert_return(() => invoke($32, `checkRange`, [55530, 55549, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5505 +assert_return(() => invoke($32, `checkRange`, [55549, 56212, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5507 +assert_return(() => invoke($32, `checkRange`, [56212, 57048, 96]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5509 +assert_return(() => invoke($32, `checkRange`, [57048, 58183, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5511 +assert_return(() => invoke($32, `checkRange`, [58183, 58202, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5513 +assert_return(() => invoke($32, `checkRange`, [58202, 58516, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5515 +assert_return(() => invoke($32, `checkRange`, [58516, 58835, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5517 +assert_return(() => invoke($32, `checkRange`, [58835, 58855, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5519 +assert_return(() => invoke($32, `checkRange`, [58855, 59089, 95]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5521 +assert_return(() => invoke($32, `checkRange`, [59089, 59145, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5523 +assert_return(() => invoke($32, `checkRange`, [59145, 59677, 99]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5525 +assert_return(() => invoke($32, `checkRange`, [59677, 60134, 0]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5527 +assert_return(() => invoke($32, `checkRange`, [60134, 60502, 89]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5529 +assert_return(() => invoke($32, `checkRange`, [60502, 60594, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5531 +assert_return(() => invoke($32, `checkRange`, [60594, 60617, 36]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5533 +assert_return(() => invoke($32, `checkRange`, [60617, 60618, 32]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5535 +assert_return(() => invoke($32, `checkRange`, [60618, 60777, 42]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5537 +assert_return(() => invoke($32, `checkRange`, [60777, 60834, 76]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5539 +assert_return(() => invoke($32, `checkRange`, [60834, 60858, 57]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5541 +assert_return(() => invoke($32, `checkRange`, [60858, 60909, 59]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5543 +assert_return(() => invoke($32, `checkRange`, [60909, 60918, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5545 +assert_return(() => invoke($32, `checkRange`, [60918, 60937, 41]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5547 +assert_return(() => invoke($32, `checkRange`, [60937, 61600, 83]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5549 +assert_return(() => invoke($32, `checkRange`, [61600, 62436, 96]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5551 +assert_return(() => invoke($32, `checkRange`, [62436, 63307, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5553 +assert_return(() => invoke($32, `checkRange`, [63307, 63397, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5555 +assert_return(() => invoke($32, `checkRange`, [63397, 63501, 74]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5557 +assert_return(() => invoke($32, `checkRange`, [63501, 63525, 93]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5559 +assert_return(() => invoke($32, `checkRange`, [63525, 63605, 74]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5561 +assert_return(() => invoke($32, `checkRange`, [63605, 63704, 100]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5563 +assert_return(() => invoke($32, `checkRange`, [63704, 63771, 97]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5565 +assert_return(() => invoke($32, `checkRange`, [63771, 63775, 37]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5567 +assert_return(() => invoke($32, `checkRange`, [63775, 64311, 77]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5569 +assert_return(() => invoke($32, `checkRange`, [64311, 64331, 26]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5571 +assert_return(() => invoke($32, `checkRange`, [64331, 64518, 92]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5573 +assert_return(() => invoke($32, `checkRange`, [64518, 64827, 11]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5575 +assert_return(() => invoke($32, `checkRange`, [64827, 64834, 26]), [value("i32", -1)]); + +// ./test/core/memory_copy.wast:5577 +assert_return(() => invoke($32, `checkRange`, [64834, 65536, 0]), [value("i32", -1)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/memory_fill.wast.js b/js/src/jit-test/tests/wasm/spec/spec/memory_fill.wast.js new file mode 100644 index 0000000000..f0a122fc66 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/memory_fill.wast.js @@ -0,0 +1,865 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_fill.wast + +// ./test/core/memory_fill.wast:6 +let $0 = instantiate(`(module + (memory 1 1) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "test") + (memory.fill (i32.const 0xFF00) (i32.const 0x55) (i32.const 256))))`); + +// ./test/core/memory_fill.wast:22 +invoke($0, `test`, []); + +// ./test/core/memory_fill.wast:24 +assert_return(() => invoke($0, `checkRange`, [0, 65280, 0]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:26 +assert_return(() => invoke($0, `checkRange`, [65280, 65536, 85]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:28 +let $1 = instantiate(`(module + (memory 1 1) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "test") + (memory.fill (i32.const 0xFF00) (i32.const 0x55) (i32.const 257))))`); + +// ./test/core/memory_fill.wast:44 +assert_trap(() => invoke($1, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_fill.wast:46 +let $2 = instantiate(`(module + (memory 1 1) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "test") + (memory.fill (i32.const 0xFFFFFF00) (i32.const 0x55) (i32.const 257))))`); + +// ./test/core/memory_fill.wast:62 +assert_trap(() => invoke($2, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_fill.wast:64 +let $3 = instantiate(`(module + (memory 1 1) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "test") + (memory.fill (i32.const 0x12) (i32.const 0x55) (i32.const 0))))`); + +// ./test/core/memory_fill.wast:80 +invoke($3, `test`, []); + +// ./test/core/memory_fill.wast:82 +assert_return(() => invoke($3, `checkRange`, [0, 65536, 0]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:84 +let $4 = instantiate(`(module + (memory 1 1) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "test") + (memory.fill (i32.const 0x10000) (i32.const 0x55) (i32.const 0))))`); + +// ./test/core/memory_fill.wast:100 +invoke($4, `test`, []); + +// ./test/core/memory_fill.wast:102 +let $5 = instantiate(`(module + (memory 1 1) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "test") + (memory.fill (i32.const 0x20000) (i32.const 0x55) (i32.const 0))))`); + +// ./test/core/memory_fill.wast:118 +assert_trap(() => invoke($5, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_fill.wast:120 +let $6 = instantiate(`(module + (memory 1 1) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "test") + (memory.fill (i32.const 0x1) (i32.const 0xAA) (i32.const 0xFFFE))))`); + +// ./test/core/memory_fill.wast:136 +invoke($6, `test`, []); + +// ./test/core/memory_fill.wast:138 +assert_return(() => invoke($6, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:140 +assert_return(() => invoke($6, `checkRange`, [1, 65535, 170]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:142 +assert_return(() => invoke($6, `checkRange`, [65535, 65536, 0]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:145 +let $7 = instantiate(`(module + (memory 1 1) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "test") + (memory.fill (i32.const 0x12) (i32.const 0x55) (i32.const 10)) + (memory.fill (i32.const 0x15) (i32.const 0xAA) (i32.const 4))))`); + +// ./test/core/memory_fill.wast:162 +invoke($7, `test`, []); + +// ./test/core/memory_fill.wast:164 +assert_return(() => invoke($7, `checkRange`, [0, 18, 0]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:166 +assert_return(() => invoke($7, `checkRange`, [18, 21, 85]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:168 +assert_return(() => invoke($7, `checkRange`, [21, 25, 170]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:170 +assert_return(() => invoke($7, `checkRange`, [25, 28, 85]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:172 +assert_return(() => invoke($7, `checkRange`, [28, 65536, 0]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:174 +assert_invalid( + () => instantiate(`(module + (func (export "testfn") + (memory.fill (i32.const 10) (i32.const 20) (i32.const 30))))`), + `unknown memory 0`, +); + +// ./test/core/memory_fill.wast:180 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (i32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:187 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (i32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:194 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (i32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:201 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (f32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:208 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (f32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:215 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (f32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:222 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (f32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:229 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (i64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:236 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (i64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:243 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (i64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:250 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (i64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:257 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (f64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:264 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (f64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:271 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (f64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:278 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i32.const 10) (f64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:285 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (i32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:292 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (i32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:299 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (i32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:306 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (i32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:313 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (f32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:320 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (f32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:327 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (f32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:334 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (f32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:341 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (i64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:348 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (i64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:355 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (i64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:362 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (i64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:369 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (f64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:376 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (f64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:383 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (f64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:390 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f32.const 10) (f64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:397 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (i32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:404 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (i32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:411 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (i32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:418 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (i32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:425 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (f32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:432 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (f32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:439 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (f32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:446 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (f32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:453 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (i64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:460 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (i64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:467 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (i64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:474 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (i64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:481 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (f64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:488 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (f64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:495 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (f64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:502 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (i64.const 10) (f64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:509 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (i32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:516 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (i32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:523 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (i32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:530 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (i32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:537 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (f32.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:544 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (f32.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:551 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (f32.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:558 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (f32.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:565 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (i64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:572 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (i64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:579 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (i64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:586 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (i64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:593 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (f64.const 20) (i32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:600 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (f64.const 20) (f32.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:607 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (f64.const 20) (i64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:614 +assert_invalid( + () => instantiate(`(module + (memory 1 1) + (func (export "testfn") + (memory.fill (f64.const 10) (f64.const 20) (f64.const 30))))`), + `type mismatch`, +); + +// ./test/core/memory_fill.wast:621 +let $8 = instantiate(`(module + (memory 1 1 ) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$val i32) (param $$len i32) + (memory.fill (local.get $$offs) (local.get $$val) (local.get $$len))))`); + +// ./test/core/memory_fill.wast:638 +assert_trap(() => invoke($8, `run`, [65280, 37, 512]), `out of bounds memory access`); + +// ./test/core/memory_fill.wast:641 +assert_return(() => invoke($8, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:643 +let $9 = instantiate(`(module + (memory 1 1 ) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$val i32) (param $$len i32) + (memory.fill (local.get $$offs) (local.get $$val) (local.get $$len))))`); + +// ./test/core/memory_fill.wast:660 +assert_trap(() => invoke($9, `run`, [65279, 37, 514]), `out of bounds memory access`); + +// ./test/core/memory_fill.wast:663 +assert_return(() => invoke($9, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_fill.wast:665 +let $10 = instantiate(`(module + (memory 1 1 ) + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$val i32) (param $$len i32) + (memory.fill (local.get $$offs) (local.get $$val) (local.get $$len))))`); + +// ./test/core/memory_fill.wast:682 +assert_trap(() => invoke($10, `run`, [65279, 37, -1]), `out of bounds memory access`); + +// ./test/core/memory_fill.wast:685 +assert_return(() => invoke($10, `checkRange`, [0, 1, 0]), [value("i32", -1)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/memory_grow.wast.js b/js/src/jit-test/tests/wasm/spec/spec/memory_grow.wast.js new file mode 100644 index 0000000000..fafa7007f4 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/memory_grow.wast.js @@ -0,0 +1,555 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_grow.wast + +// ./test/core/memory_grow.wast:1 +let $0 = instantiate(`(module + (memory 0) + + (func (export "load_at_zero") (result i32) (i32.load (i32.const 0))) + (func (export "store_at_zero") (i32.store (i32.const 0) (i32.const 2))) + + (func (export "load_at_page_size") (result i32) (i32.load (i32.const 0x10000))) + (func (export "store_at_page_size") (i32.store (i32.const 0x10000) (i32.const 3))) + + (func (export "grow") (param $$sz i32) (result i32) (memory.grow (local.get $$sz))) + (func (export "size") (result i32) (memory.size)) +)`); + +// ./test/core/memory_grow.wast:14 +assert_return(() => invoke($0, `size`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:15 +assert_trap(() => invoke($0, `store_at_zero`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:16 +assert_trap(() => invoke($0, `load_at_zero`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:17 +assert_trap(() => invoke($0, `store_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:18 +assert_trap(() => invoke($0, `load_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:19 +assert_return(() => invoke($0, `grow`, [1]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:20 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:21 +assert_return(() => invoke($0, `load_at_zero`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:22 +assert_return(() => invoke($0, `store_at_zero`, []), []); + +// ./test/core/memory_grow.wast:23 +assert_return(() => invoke($0, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:24 +assert_trap(() => invoke($0, `store_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:25 +assert_trap(() => invoke($0, `load_at_page_size`, []), `out of bounds memory access`); + +// ./test/core/memory_grow.wast:26 +assert_return(() => invoke($0, `grow`, [4]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:27 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:28 +assert_return(() => invoke($0, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:29 +assert_return(() => invoke($0, `store_at_zero`, []), []); + +// ./test/core/memory_grow.wast:30 +assert_return(() => invoke($0, `load_at_zero`, []), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:31 +assert_return(() => invoke($0, `load_at_page_size`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:32 +assert_return(() => invoke($0, `store_at_page_size`, []), []); + +// ./test/core/memory_grow.wast:33 +assert_return(() => invoke($0, `load_at_page_size`, []), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:36 +let $1 = instantiate(`(module + (memory 0) + (func (export "grow") (param i32) (result i32) (memory.grow (local.get 0))) +)`); + +// ./test/core/memory_grow.wast:41 +assert_return(() => invoke($1, `grow`, [0]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:42 +assert_return(() => invoke($1, `grow`, [1]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:43 +assert_return(() => invoke($1, `grow`, [0]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:44 +assert_return(() => invoke($1, `grow`, [2]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:45 +assert_return(() => invoke($1, `grow`, [800]), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:46 +assert_return(() => invoke($1, `grow`, [65536]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:47 +assert_return(() => invoke($1, `grow`, [64736]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:48 +assert_return(() => invoke($1, `grow`, [1]), [value("i32", 803)]); + +// ./test/core/memory_grow.wast:50 +let $2 = instantiate(`(module + (memory 0 10) + (func (export "grow") (param i32) (result i32) (memory.grow (local.get 0))) +)`); + +// ./test/core/memory_grow.wast:55 +assert_return(() => invoke($2, `grow`, [0]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:56 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:57 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:58 +assert_return(() => invoke($2, `grow`, [2]), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:59 +assert_return(() => invoke($2, `grow`, [6]), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:60 +assert_return(() => invoke($2, `grow`, [0]), [value("i32", 10)]); + +// ./test/core/memory_grow.wast:61 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:62 +assert_return(() => invoke($2, `grow`, [65536]), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:66 +let $3 = instantiate(`(module + (memory 1) + (func (export "grow") (param i32) (result i32) + (memory.grow (local.get 0)) + ) + (func (export "check-memory-zero") (param i32 i32) (result i32) + (local i32) + (local.set 2 (i32.const 1)) + (block + (loop + (local.set 2 (i32.load8_u (local.get 0))) + (br_if 1 (i32.ne (local.get 2) (i32.const 0))) + (br_if 1 (i32.ge_u (local.get 0) (local.get 1))) + (local.set 0 (i32.add (local.get 0) (i32.const 1))) + (br_if 0 (i32.le_u (local.get 0) (local.get 1))) + ) + ) + (local.get 2) + ) +)`); + +// ./test/core/memory_grow.wast:87 +assert_return(() => invoke($3, `check-memory-zero`, [0, 65535]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:88 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:89 +assert_return(() => invoke($3, `check-memory-zero`, [65536, 131071]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:90 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", 2)]); + +// ./test/core/memory_grow.wast:91 +assert_return(() => invoke($3, `check-memory-zero`, [131072, 196607]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:92 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", 3)]); + +// ./test/core/memory_grow.wast:93 +assert_return(() => invoke($3, `check-memory-zero`, [196608, 262143]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:94 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", 4)]); + +// ./test/core/memory_grow.wast:95 +assert_return(() => invoke($3, `check-memory-zero`, [262144, 327679]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:96 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", 5)]); + +// ./test/core/memory_grow.wast:97 +assert_return(() => invoke($3, `check-memory-zero`, [327680, 393215]), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:101 +let $4 = instantiate(`(module + (memory 1) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (memory.grow (i32.const 0)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (memory.grow (i32.const 0)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (memory.grow (i32.const 0)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (memory.grow (i32.const 0)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (memory.grow (i32.const 0)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (memory.grow (i32.const 0)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (memory.grow (i32.const 0))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i32) + (return (memory.grow (i32.const 0))) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (memory.grow (i32.const 0)) + (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) + (then (memory.grow (i32.const 0))) (else (i32.const 0)) + ) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 0) + (then (i32.const 0)) (else (memory.grow (i32.const 0))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (memory.grow (i32.const 0)) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (memory.grow (i32.const 0)) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (memory.grow (i32.const 0))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (call $$f (memory.grow (i32.const 0)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (result i32) + (call $$f (i32.const 1) (memory.grow (i32.const 0)) (i32.const 3)) + ) + (func (export "as-call-last") (result i32) + (call $$f (i32.const 1) (i32.const 2) (memory.grow (i32.const 0))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-first") (result i32) + (call_indirect (type $$sig) + (memory.grow (i32.const 0)) (i32.const 2) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (memory.grow (i32.const 0)) (i32.const 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (memory.grow (i32.const 0)) (i32.const 0) + ) + ) + (func (export "as-call_indirect-index") (result i32) + (call_indirect (type $$sig) + (i32.const 1) (i32.const 2) (i32.const 3) (memory.grow (i32.const 0)) + ) + ) + + (func (export "as-local.set-value") (local i32) + (local.set 0 (memory.grow (i32.const 0))) + ) + (func (export "as-local.tee-value") (result i32) (local i32) + (local.tee 0 (memory.grow (i32.const 0))) + ) + (global $$g (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (local i32) + (global.set $$g (memory.grow (i32.const 0))) + ) + + (func (export "as-load-address") (result i32) + (i32.load (memory.grow (i32.const 0))) + ) + (func (export "as-loadN-address") (result i32) + (i32.load8_s (memory.grow (i32.const 0))) + ) + + (func (export "as-store-address") + (i32.store (memory.grow (i32.const 0)) (i32.const 7)) + ) + (func (export "as-store-value") + (i32.store (i32.const 2) (memory.grow (i32.const 0))) + ) + + (func (export "as-storeN-address") + (i32.store8 (memory.grow (i32.const 0)) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i32.store16 (i32.const 2) (memory.grow (i32.const 0))) + ) + + (func (export "as-unary-operand") (result i32) + (i32.clz (memory.grow (i32.const 0))) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (memory.grow (i32.const 0)) (i32.const 10)) + ) + (func (export "as-binary-right") (result i32) + (i32.sub (i32.const 10) (memory.grow (i32.const 0))) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (memory.grow (i32.const 0))) + ) + + (func (export "as-compare-left") (result i32) + (i32.le_s (memory.grow (i32.const 0)) (i32.const 10)) + ) + (func (export "as-compare-right") (result i32) + (i32.ne (i32.const 10) (memory.grow (i32.const 0))) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (memory.grow (i32.const 0))) + ) +)`); + +// ./test/core/memory_grow.wast:259 +assert_return(() => invoke($4, `as-br-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:261 +assert_return(() => invoke($4, `as-br_if-cond`, []), []); + +// ./test/core/memory_grow.wast:262 +assert_return(() => invoke($4, `as-br_if-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:263 +assert_return(() => invoke($4, `as-br_if-value-cond`, []), [value("i32", 6)]); + +// ./test/core/memory_grow.wast:265 +assert_return(() => invoke($4, `as-br_table-index`, []), []); + +// ./test/core/memory_grow.wast:266 +assert_return(() => invoke($4, `as-br_table-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:267 +assert_return(() => invoke($4, `as-br_table-value-index`, []), [value("i32", 6)]); + +// ./test/core/memory_grow.wast:269 +assert_return(() => invoke($4, `as-return-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:271 +assert_return(() => invoke($4, `as-if-cond`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:272 +assert_return(() => invoke($4, `as-if-then`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:273 +assert_return(() => invoke($4, `as-if-else`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:275 +assert_return(() => invoke($4, `as-select-first`, [0, 1]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:276 +assert_return(() => invoke($4, `as-select-second`, [0, 0]), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:277 +assert_return(() => invoke($4, `as-select-cond`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:279 +assert_return(() => invoke($4, `as-call-first`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:280 +assert_return(() => invoke($4, `as-call-mid`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:281 +assert_return(() => invoke($4, `as-call-last`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:283 +assert_return(() => invoke($4, `as-call_indirect-first`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:284 +assert_return(() => invoke($4, `as-call_indirect-mid`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:285 +assert_return(() => invoke($4, `as-call_indirect-last`, []), [value("i32", -1)]); + +// ./test/core/memory_grow.wast:286 +assert_trap(() => invoke($4, `as-call_indirect-index`, []), `undefined element`); + +// ./test/core/memory_grow.wast:288 +assert_return(() => invoke($4, `as-local.set-value`, []), []); + +// ./test/core/memory_grow.wast:289 +assert_return(() => invoke($4, `as-local.tee-value`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:290 +assert_return(() => invoke($4, `as-global.set-value`, []), []); + +// ./test/core/memory_grow.wast:292 +assert_return(() => invoke($4, `as-load-address`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:293 +assert_return(() => invoke($4, `as-loadN-address`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:294 +assert_return(() => invoke($4, `as-store-address`, []), []); + +// ./test/core/memory_grow.wast:295 +assert_return(() => invoke($4, `as-store-value`, []), []); + +// ./test/core/memory_grow.wast:296 +assert_return(() => invoke($4, `as-storeN-address`, []), []); + +// ./test/core/memory_grow.wast:297 +assert_return(() => invoke($4, `as-storeN-value`, []), []); + +// ./test/core/memory_grow.wast:299 +assert_return(() => invoke($4, `as-unary-operand`, []), [value("i32", 31)]); + +// ./test/core/memory_grow.wast:301 +assert_return(() => invoke($4, `as-binary-left`, []), [value("i32", 11)]); + +// ./test/core/memory_grow.wast:302 +assert_return(() => invoke($4, `as-binary-right`, []), [value("i32", 9)]); + +// ./test/core/memory_grow.wast:304 +assert_return(() => invoke($4, `as-test-operand`, []), [value("i32", 0)]); + +// ./test/core/memory_grow.wast:306 +assert_return(() => invoke($4, `as-compare-left`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:307 +assert_return(() => invoke($4, `as-compare-right`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:309 +assert_return(() => invoke($4, `as-memory.grow-size`, []), [value("i32", 1)]); + +// ./test/core/memory_grow.wast:312 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-size-empty-vs-i32 (result i32) + (memory.grow) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:321 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-size-empty-vs-i32-in-block (result i32) + (i32.const 0) + (block (result i32) (memory.grow)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:331 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-size-empty-vs-i32-in-loop (result i32) + (i32.const 0) + (loop (result i32) (memory.grow)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:341 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-size-empty-vs-i32-in-then (result i32) + (i32.const 0) (i32.const 0) + (if (result i32) (then (memory.grow))) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:352 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-size-f32-vs-i32 (result i32) + (memory.grow (f32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:362 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-empty + (memory.grow (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_grow.wast:371 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-f32 (result f32) + (memory.grow (i32.const 0)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/memory_init.wast.js b/js/src/jit-test/tests/wasm/spec/spec/memory_init.wast.js new file mode 100644 index 0000000000..9885c42f81 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/memory_init.wast.js @@ -0,0 +1,1409 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_init.wast + +// ./test/core/memory_init.wast:6 +let $0 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data "\\02\\07\\01\\08") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (data "\\05\\09\\02\\07\\06") + (func (export "test") + (nop)) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_init.wast:17 +invoke($0, `test`, []); + +// ./test/core/memory_init.wast:19 +assert_return(() => invoke($0, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:20 +assert_return(() => invoke($0, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:21 +assert_return(() => invoke($0, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_init.wast:22 +assert_return(() => invoke($0, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:23 +assert_return(() => invoke($0, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_init.wast:24 +assert_return(() => invoke($0, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:25 +assert_return(() => invoke($0, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:26 +assert_return(() => invoke($0, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:27 +assert_return(() => invoke($0, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:28 +assert_return(() => invoke($0, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:29 +assert_return(() => invoke($0, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:30 +assert_return(() => invoke($0, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:31 +assert_return(() => invoke($0, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:32 +assert_return(() => invoke($0, `load8_u`, [13]), [value("i32", 5)]); + +// ./test/core/memory_init.wast:33 +assert_return(() => invoke($0, `load8_u`, [14]), [value("i32", 2)]); + +// ./test/core/memory_init.wast:34 +assert_return(() => invoke($0, `load8_u`, [15]), [value("i32", 3)]); + +// ./test/core/memory_init.wast:35 +assert_return(() => invoke($0, `load8_u`, [16]), [value("i32", 6)]); + +// ./test/core/memory_init.wast:36 +assert_return(() => invoke($0, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:37 +assert_return(() => invoke($0, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:38 +assert_return(() => invoke($0, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:39 +assert_return(() => invoke($0, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:40 +assert_return(() => invoke($0, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:41 +assert_return(() => invoke($0, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:42 +assert_return(() => invoke($0, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:43 +assert_return(() => invoke($0, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:44 +assert_return(() => invoke($0, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:45 +assert_return(() => invoke($0, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:46 +assert_return(() => invoke($0, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:47 +assert_return(() => invoke($0, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:48 +assert_return(() => invoke($0, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:50 +let $1 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data "\\02\\07\\01\\08") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (data "\\05\\09\\02\\07\\06") + (func (export "test") + (memory.init 1 (i32.const 7) (i32.const 0) (i32.const 4))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_init.wast:61 +invoke($1, `test`, []); + +// ./test/core/memory_init.wast:63 +assert_return(() => invoke($1, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:64 +assert_return(() => invoke($1, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:65 +assert_return(() => invoke($1, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_init.wast:66 +assert_return(() => invoke($1, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:67 +assert_return(() => invoke($1, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_init.wast:68 +assert_return(() => invoke($1, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:69 +assert_return(() => invoke($1, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:70 +assert_return(() => invoke($1, `load8_u`, [7]), [value("i32", 2)]); + +// ./test/core/memory_init.wast:71 +assert_return(() => invoke($1, `load8_u`, [8]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:72 +assert_return(() => invoke($1, `load8_u`, [9]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:73 +assert_return(() => invoke($1, `load8_u`, [10]), [value("i32", 8)]); + +// ./test/core/memory_init.wast:74 +assert_return(() => invoke($1, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:75 +assert_return(() => invoke($1, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:76 +assert_return(() => invoke($1, `load8_u`, [13]), [value("i32", 5)]); + +// ./test/core/memory_init.wast:77 +assert_return(() => invoke($1, `load8_u`, [14]), [value("i32", 2)]); + +// ./test/core/memory_init.wast:78 +assert_return(() => invoke($1, `load8_u`, [15]), [value("i32", 3)]); + +// ./test/core/memory_init.wast:79 +assert_return(() => invoke($1, `load8_u`, [16]), [value("i32", 6)]); + +// ./test/core/memory_init.wast:80 +assert_return(() => invoke($1, `load8_u`, [17]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:81 +assert_return(() => invoke($1, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:82 +assert_return(() => invoke($1, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:83 +assert_return(() => invoke($1, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:84 +assert_return(() => invoke($1, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:85 +assert_return(() => invoke($1, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:86 +assert_return(() => invoke($1, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:87 +assert_return(() => invoke($1, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:88 +assert_return(() => invoke($1, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:89 +assert_return(() => invoke($1, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:90 +assert_return(() => invoke($1, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:91 +assert_return(() => invoke($1, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:92 +assert_return(() => invoke($1, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:94 +let $2 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data "\\02\\07\\01\\08") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (data "\\05\\09\\02\\07\\06") + (func (export "test") + (memory.init 3 (i32.const 15) (i32.const 1) (i32.const 3))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_init.wast:105 +invoke($2, `test`, []); + +// ./test/core/memory_init.wast:107 +assert_return(() => invoke($2, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:108 +assert_return(() => invoke($2, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:109 +assert_return(() => invoke($2, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_init.wast:110 +assert_return(() => invoke($2, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:111 +assert_return(() => invoke($2, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_init.wast:112 +assert_return(() => invoke($2, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:113 +assert_return(() => invoke($2, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:114 +assert_return(() => invoke($2, `load8_u`, [7]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:115 +assert_return(() => invoke($2, `load8_u`, [8]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:116 +assert_return(() => invoke($2, `load8_u`, [9]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:117 +assert_return(() => invoke($2, `load8_u`, [10]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:118 +assert_return(() => invoke($2, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:119 +assert_return(() => invoke($2, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:120 +assert_return(() => invoke($2, `load8_u`, [13]), [value("i32", 5)]); + +// ./test/core/memory_init.wast:121 +assert_return(() => invoke($2, `load8_u`, [14]), [value("i32", 2)]); + +// ./test/core/memory_init.wast:122 +assert_return(() => invoke($2, `load8_u`, [15]), [value("i32", 9)]); + +// ./test/core/memory_init.wast:123 +assert_return(() => invoke($2, `load8_u`, [16]), [value("i32", 2)]); + +// ./test/core/memory_init.wast:124 +assert_return(() => invoke($2, `load8_u`, [17]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:125 +assert_return(() => invoke($2, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:126 +assert_return(() => invoke($2, `load8_u`, [19]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:127 +assert_return(() => invoke($2, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:128 +assert_return(() => invoke($2, `load8_u`, [21]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:129 +assert_return(() => invoke($2, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:130 +assert_return(() => invoke($2, `load8_u`, [23]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:131 +assert_return(() => invoke($2, `load8_u`, [24]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:132 +assert_return(() => invoke($2, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:133 +assert_return(() => invoke($2, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:134 +assert_return(() => invoke($2, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:135 +assert_return(() => invoke($2, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:136 +assert_return(() => invoke($2, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:138 +let $3 = instantiate(`(module + (memory (export "memory0") 1 1) + (data (i32.const 2) "\\03\\01\\04\\01") + (data "\\02\\07\\01\\08") + (data (i32.const 12) "\\07\\05\\02\\03\\06") + (data "\\05\\09\\02\\07\\06") + (func (export "test") + (memory.init 1 (i32.const 7) (i32.const 0) (i32.const 4)) + (data.drop 1) + (memory.init 3 (i32.const 15) (i32.const 1) (i32.const 3)) + (data.drop 3) + (memory.copy (i32.const 20) (i32.const 15) (i32.const 5)) + (memory.copy (i32.const 21) (i32.const 29) (i32.const 1)) + (memory.copy (i32.const 24) (i32.const 10) (i32.const 1)) + (memory.copy (i32.const 13) (i32.const 11) (i32.const 4)) + (memory.copy (i32.const 19) (i32.const 20) (i32.const 5))) + (func (export "load8_u") (param i32) (result i32) + (i32.load8_u (local.get 0))))`); + +// ./test/core/memory_init.wast:157 +invoke($3, `test`, []); + +// ./test/core/memory_init.wast:159 +assert_return(() => invoke($3, `load8_u`, [0]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:160 +assert_return(() => invoke($3, `load8_u`, [1]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:161 +assert_return(() => invoke($3, `load8_u`, [2]), [value("i32", 3)]); + +// ./test/core/memory_init.wast:162 +assert_return(() => invoke($3, `load8_u`, [3]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:163 +assert_return(() => invoke($3, `load8_u`, [4]), [value("i32", 4)]); + +// ./test/core/memory_init.wast:164 +assert_return(() => invoke($3, `load8_u`, [5]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:165 +assert_return(() => invoke($3, `load8_u`, [6]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:166 +assert_return(() => invoke($3, `load8_u`, [7]), [value("i32", 2)]); + +// ./test/core/memory_init.wast:167 +assert_return(() => invoke($3, `load8_u`, [8]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:168 +assert_return(() => invoke($3, `load8_u`, [9]), [value("i32", 1)]); + +// ./test/core/memory_init.wast:169 +assert_return(() => invoke($3, `load8_u`, [10]), [value("i32", 8)]); + +// ./test/core/memory_init.wast:170 +assert_return(() => invoke($3, `load8_u`, [11]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:171 +assert_return(() => invoke($3, `load8_u`, [12]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:172 +assert_return(() => invoke($3, `load8_u`, [13]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:173 +assert_return(() => invoke($3, `load8_u`, [14]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:174 +assert_return(() => invoke($3, `load8_u`, [15]), [value("i32", 5)]); + +// ./test/core/memory_init.wast:175 +assert_return(() => invoke($3, `load8_u`, [16]), [value("i32", 2)]); + +// ./test/core/memory_init.wast:176 +assert_return(() => invoke($3, `load8_u`, [17]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:177 +assert_return(() => invoke($3, `load8_u`, [18]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:178 +assert_return(() => invoke($3, `load8_u`, [19]), [value("i32", 9)]); + +// ./test/core/memory_init.wast:179 +assert_return(() => invoke($3, `load8_u`, [20]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:180 +assert_return(() => invoke($3, `load8_u`, [21]), [value("i32", 7)]); + +// ./test/core/memory_init.wast:181 +assert_return(() => invoke($3, `load8_u`, [22]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:182 +assert_return(() => invoke($3, `load8_u`, [23]), [value("i32", 8)]); + +// ./test/core/memory_init.wast:183 +assert_return(() => invoke($3, `load8_u`, [24]), [value("i32", 8)]); + +// ./test/core/memory_init.wast:184 +assert_return(() => invoke($3, `load8_u`, [25]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:185 +assert_return(() => invoke($3, `load8_u`, [26]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:186 +assert_return(() => invoke($3, `load8_u`, [27]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:187 +assert_return(() => invoke($3, `load8_u`, [28]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:188 +assert_return(() => invoke($3, `load8_u`, [29]), [value("i32", 0)]); + +// ./test/core/memory_init.wast:189 +assert_invalid( + () => instantiate(`(module + (func (export "test") + (data.drop 0)))`), + `unknown data segment`, +); + +// ./test/core/memory_init.wast:195 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (data.drop 4)))`), + `unknown data segment`, +); + +// ./test/core/memory_init.wast:203 +let $4 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (data.drop 0) + (data.drop 0)))`); + +// ./test/core/memory_init.wast:209 +invoke($4, `test`, []); + +// ./test/core/memory_init.wast:211 +let $5 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (data.drop 0) + (memory.init 0 (i32.const 1234) (i32.const 1) (i32.const 1))))`); + +// ./test/core/memory_init.wast:217 +assert_trap(() => invoke($5, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_init.wast:219 +let $6 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\37") + (func (export "test") + (memory.init 0 (i32.const 1234) (i32.const 1) (i32.const 1))))`); + +// ./test/core/memory_init.wast:224 +assert_trap(() => invoke($6, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_init.wast:226 +assert_invalid( + () => instantiate(`(module + (func (export "test") + (memory.init 1 (i32.const 1234) (i32.const 1) (i32.const 1))))`), + `unknown memory 0`, +); + +// ./test/core/memory_init.wast:232 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 1 (i32.const 1234) (i32.const 1) (i32.const 1))))`), + `unknown data segment 1`, +); + +// ./test/core/memory_init.wast:240 +let $7 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (i32.const 0) (i32.const 1)) + (memory.init 0 (i32.const 1) (i32.const 0) (i32.const 1))))`); + +// ./test/core/memory_init.wast:246 +invoke($7, `test`, []); + +// ./test/core/memory_init.wast:248 +let $8 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1234) (i32.const 0) (i32.const 5))))`); + +// ./test/core/memory_init.wast:253 +assert_trap(() => invoke($8, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_init.wast:255 +let $9 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1234) (i32.const 2) (i32.const 3))))`); + +// ./test/core/memory_init.wast:260 +assert_trap(() => invoke($9, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_init.wast:262 +let $10 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 0xFFFE) (i32.const 1) (i32.const 3))))`); + +// ./test/core/memory_init.wast:267 +assert_trap(() => invoke($10, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_init.wast:269 +let $11 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1234) (i32.const 4) (i32.const 0))))`); + +// ./test/core/memory_init.wast:274 +assert_trap(() => invoke($11, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_init.wast:276 +let $12 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1234) (i32.const 1) (i32.const 0))))`); + +// ./test/core/memory_init.wast:281 +invoke($12, `test`, []); + +// ./test/core/memory_init.wast:283 +let $13 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 0x10001) (i32.const 0) (i32.const 0))))`); + +// ./test/core/memory_init.wast:288 +assert_trap(() => invoke($13, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_init.wast:290 +let $14 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 0x10000) (i32.const 0) (i32.const 0))))`); + +// ./test/core/memory_init.wast:295 +invoke($14, `test`, []); + +// ./test/core/memory_init.wast:297 +let $15 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 0x10000) (i32.const 1) (i32.const 0))))`); + +// ./test/core/memory_init.wast:302 +invoke($15, `test`, []); + +// ./test/core/memory_init.wast:304 +let $16 = instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 0x10001) (i32.const 4) (i32.const 0))))`); + +// ./test/core/memory_init.wast:309 +assert_trap(() => invoke($16, `test`, []), `out of bounds memory access`); + +// ./test/core/memory_init.wast:311 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (i32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:319 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (i32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:327 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (i32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:335 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (f32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:343 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (f32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:351 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (f32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:359 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (f32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:367 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (i64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:375 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (i64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:383 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (i64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:391 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (i64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:399 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (f64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:407 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (f64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:415 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (f64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:423 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i32.const 1) (f64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:431 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (i32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:439 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (i32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:447 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (i32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:455 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (i32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:463 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (f32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:471 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (f32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:479 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (f32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:487 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (f32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:495 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (i64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:503 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (i64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:511 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (i64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:519 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (i64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:527 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (f64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:535 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (f64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:543 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (f64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:551 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f32.const 1) (f64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:559 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (i32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:567 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (i32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:575 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (i32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:583 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (i32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:591 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (f32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:599 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (f32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:607 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (f32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:615 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (f32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:623 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (i64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:631 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (i64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:639 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (i64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:647 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (i64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:655 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (f64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:663 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (f64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:671 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (f64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:679 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (i64.const 1) (f64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:687 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (i32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:695 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (i32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:703 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (i32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:711 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (i32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:719 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (f32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:727 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (f32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:735 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (f32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:743 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (f32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:751 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (i64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:759 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (i64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:767 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (i64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:775 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (i64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:783 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (f64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:791 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (f64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:799 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (f64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:807 +assert_invalid( + () => instantiate(`(module + (memory 1) + (data "\\37") + (func (export "test") + (memory.init 0 (f64.const 1) (f64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/memory_init.wast:815 +let $17 = instantiate(`(module + (memory 1 1 ) + (data "\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42") + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$len i32) + (memory.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/memory_init.wast:833 +assert_trap(() => invoke($17, `run`, [65528, 16]), `out of bounds memory access`); + +// ./test/core/memory_init.wast:836 +assert_return(() => invoke($17, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_init.wast:838 +let $18 = instantiate(`(module + (memory 1 1 ) + (data "\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42") + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$len i32) + (memory.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/memory_init.wast:856 +assert_trap(() => invoke($18, `run`, [65527, 16]), `out of bounds memory access`); + +// ./test/core/memory_init.wast:859 +assert_return(() => invoke($18, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_init.wast:861 +let $19 = instantiate(`(module + (memory 1 1 ) + (data "\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42") + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$len i32) + (memory.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/memory_init.wast:879 +assert_trap(() => invoke($19, `run`, [65472, 30]), `out of bounds memory access`); + +// ./test/core/memory_init.wast:882 +assert_return(() => invoke($19, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_init.wast:884 +let $20 = instantiate(`(module + (memory 1 1 ) + (data "\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42") + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$len i32) + (memory.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/memory_init.wast:902 +assert_trap(() => invoke($20, `run`, [65473, 31]), `out of bounds memory access`); + +// ./test/core/memory_init.wast:905 +assert_return(() => invoke($20, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_init.wast:907 +let $21 = instantiate(`(module + (memory 1 ) + (data "\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42") + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$len i32) + (memory.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/memory_init.wast:925 +assert_trap(() => invoke($21, `run`, [65528, -256]), `out of bounds memory access`); + +// ./test/core/memory_init.wast:928 +assert_return(() => invoke($21, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_init.wast:930 +let $22 = instantiate(`(module + (memory 1 ) + (data "\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42\\42") + + (func (export "checkRange") (param $$from i32) (param $$to i32) (param $$expected i32) (result i32) + (loop $$cont + (if (i32.eq (local.get $$from) (local.get $$to)) + (then + (return (i32.const -1)))) + (if (i32.eq (i32.load8_u (local.get $$from)) (local.get $$expected)) + (then + (local.set $$from (i32.add (local.get $$from) (i32.const 1))) + (br $$cont)))) + (return (local.get $$from))) + + (func (export "run") (param $$offs i32) (param $$len i32) + (memory.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/memory_init.wast:948 +assert_trap(() => invoke($22, `run`, [0, -4]), `out of bounds memory access`); + +// ./test/core/memory_init.wast:951 +assert_return(() => invoke($22, `checkRange`, [0, 1, 0]), [value("i32", -1)]); + +// ./test/core/memory_init.wast:954 +let $23 = instantiate(`(module + (memory 1) + ;; 65 data segments. 64 is the smallest positive number that is encoded + ;; differently as a signed LEB. + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") (data "") (data "") (data "") (data "") (data "") (data "") (data "") + (data "") + (func (memory.init 64 (i32.const 0) (i32.const 0) (i32.const 0))))`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/memory_redundancy.wast.js b/js/src/jit-test/tests/wasm/spec/spec/memory_redundancy.wast.js new file mode 100644 index 0000000000..cd2d894092 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/memory_redundancy.wast.js @@ -0,0 +1,95 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_redundancy.wast + +// ./test/core/memory_redundancy.wast:5 +let $0 = instantiate(`(module + (memory 1 1) + + (func (export "zero_everything") + (i32.store (i32.const 0) (i32.const 0)) + (i32.store (i32.const 4) (i32.const 0)) + (i32.store (i32.const 8) (i32.const 0)) + (i32.store (i32.const 12) (i32.const 0)) + ) + + (func (export "test_store_to_load") (result i32) + (i32.store (i32.const 8) (i32.const 0)) + (f32.store (i32.const 5) (f32.const -0.0)) + (i32.load (i32.const 8)) + ) + + (func (export "test_redundant_load") (result i32) + (local $$t i32) + (local $$s i32) + (local.set $$t (i32.load (i32.const 8))) + (i32.store (i32.const 5) (i32.const 0x80000000)) + (local.set $$s (i32.load (i32.const 8))) + (i32.add (local.get $$t) (local.get $$s)) + ) + + (func (export "test_dead_store") (result f32) + (local $$t f32) + (i32.store (i32.const 8) (i32.const 0x23232323)) + (local.set $$t (f32.load (i32.const 11))) + (i32.store (i32.const 8) (i32.const 0)) + (local.get $$t) + ) + + ;; A function named "malloc" which implementations nonetheless shouldn't + ;; assume behaves like C malloc. + (func $$malloc (export "malloc") + (param $$size i32) + (result i32) + (i32.const 16) + ) + + ;; Call malloc twice, but unlike C malloc, we don't get non-aliasing pointers. + (func (export "malloc_aliasing") + (result i32) + (local $$x i32) + (local $$y i32) + (local.set $$x (call $$malloc (i32.const 4))) + (local.set $$y (call $$malloc (i32.const 4))) + (i32.store (local.get $$x) (i32.const 42)) + (i32.store (local.get $$y) (i32.const 43)) + (i32.load (local.get $$x)) + ) +)`); + +// ./test/core/memory_redundancy.wast:59 +assert_return(() => invoke($0, `test_store_to_load`, []), [value("i32", 128)]); + +// ./test/core/memory_redundancy.wast:60 +invoke($0, `zero_everything`, []); + +// ./test/core/memory_redundancy.wast:61 +assert_return(() => invoke($0, `test_redundant_load`, []), [value("i32", 128)]); + +// ./test/core/memory_redundancy.wast:62 +invoke($0, `zero_everything`, []); + +// ./test/core/memory_redundancy.wast:63 +assert_return( + () => invoke($0, `test_dead_store`, []), + [value("f32", 0.000000000000000000000000000000000000000000049)], +); + +// ./test/core/memory_redundancy.wast:64 +invoke($0, `zero_everything`, []); + +// ./test/core/memory_redundancy.wast:65 +assert_return(() => invoke($0, `malloc_aliasing`, []), [value("i32", 43)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/memory_size.wast.js b/js/src/jit-test/tests/wasm/spec/spec/memory_size.wast.js new file mode 100644 index 0000000000..0ce58ebddf --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/memory_size.wast.js @@ -0,0 +1,174 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/memory_size.wast + +// ./test/core/memory_size.wast:1 +let $0 = instantiate(`(module + (memory 0) + (func (export "size") (result i32) (memory.size)) + (func (export "grow") (param $$sz i32) (drop (memory.grow (local.get $$sz)))) +)`); + +// ./test/core/memory_size.wast:7 +assert_return(() => invoke($0, `size`, []), [value("i32", 0)]); + +// ./test/core/memory_size.wast:8 +assert_return(() => invoke($0, `grow`, [1]), []); + +// ./test/core/memory_size.wast:9 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:10 +assert_return(() => invoke($0, `grow`, [4]), []); + +// ./test/core/memory_size.wast:11 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/memory_size.wast:12 +assert_return(() => invoke($0, `grow`, [0]), []); + +// ./test/core/memory_size.wast:13 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/memory_size.wast:15 +let $1 = instantiate(`(module + (memory 1) + (func (export "size") (result i32) (memory.size)) + (func (export "grow") (param $$sz i32) (drop (memory.grow (local.get $$sz)))) +)`); + +// ./test/core/memory_size.wast:21 +assert_return(() => invoke($1, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:22 +assert_return(() => invoke($1, `grow`, [1]), []); + +// ./test/core/memory_size.wast:23 +assert_return(() => invoke($1, `size`, []), [value("i32", 2)]); + +// ./test/core/memory_size.wast:24 +assert_return(() => invoke($1, `grow`, [4]), []); + +// ./test/core/memory_size.wast:25 +assert_return(() => invoke($1, `size`, []), [value("i32", 6)]); + +// ./test/core/memory_size.wast:26 +assert_return(() => invoke($1, `grow`, [0]), []); + +// ./test/core/memory_size.wast:27 +assert_return(() => invoke($1, `size`, []), [value("i32", 6)]); + +// ./test/core/memory_size.wast:29 +let $2 = instantiate(`(module + (memory 0 2) + (func (export "size") (result i32) (memory.size)) + (func (export "grow") (param $$sz i32) (drop (memory.grow (local.get $$sz)))) +)`); + +// ./test/core/memory_size.wast:35 +assert_return(() => invoke($2, `size`, []), [value("i32", 0)]); + +// ./test/core/memory_size.wast:36 +assert_return(() => invoke($2, `grow`, [3]), []); + +// ./test/core/memory_size.wast:37 +assert_return(() => invoke($2, `size`, []), [value("i32", 0)]); + +// ./test/core/memory_size.wast:38 +assert_return(() => invoke($2, `grow`, [1]), []); + +// ./test/core/memory_size.wast:39 +assert_return(() => invoke($2, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:40 +assert_return(() => invoke($2, `grow`, [0]), []); + +// ./test/core/memory_size.wast:41 +assert_return(() => invoke($2, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:42 +assert_return(() => invoke($2, `grow`, [4]), []); + +// ./test/core/memory_size.wast:43 +assert_return(() => invoke($2, `size`, []), [value("i32", 1)]); + +// ./test/core/memory_size.wast:44 +assert_return(() => invoke($2, `grow`, [1]), []); + +// ./test/core/memory_size.wast:45 +assert_return(() => invoke($2, `size`, []), [value("i32", 2)]); + +// ./test/core/memory_size.wast:47 +let $3 = instantiate(`(module + (memory 3 8) + (func (export "size") (result i32) (memory.size)) + (func (export "grow") (param $$sz i32) (drop (memory.grow (local.get $$sz)))) +)`); + +// ./test/core/memory_size.wast:53 +assert_return(() => invoke($3, `size`, []), [value("i32", 3)]); + +// ./test/core/memory_size.wast:54 +assert_return(() => invoke($3, `grow`, [1]), []); + +// ./test/core/memory_size.wast:55 +assert_return(() => invoke($3, `size`, []), [value("i32", 4)]); + +// ./test/core/memory_size.wast:56 +assert_return(() => invoke($3, `grow`, [3]), []); + +// ./test/core/memory_size.wast:57 +assert_return(() => invoke($3, `size`, []), [value("i32", 7)]); + +// ./test/core/memory_size.wast:58 +assert_return(() => invoke($3, `grow`, [0]), []); + +// ./test/core/memory_size.wast:59 +assert_return(() => invoke($3, `size`, []), [value("i32", 7)]); + +// ./test/core/memory_size.wast:60 +assert_return(() => invoke($3, `grow`, [2]), []); + +// ./test/core/memory_size.wast:61 +assert_return(() => invoke($3, `size`, []), [value("i32", 7)]); + +// ./test/core/memory_size.wast:62 +assert_return(() => invoke($3, `grow`, [1]), []); + +// ./test/core/memory_size.wast:63 +assert_return(() => invoke($3, `size`, []), [value("i32", 8)]); + +// ./test/core/memory_size.wast:68 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-empty + (memory.size) + ) + )`), + `type mismatch`, +); + +// ./test/core/memory_size.wast:77 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-result-i32-vs-f32 (result f32) + (memory.size) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/names.wast.js b/js/src/jit-test/tests/wasm/spec/spec/names.wast.js new file mode 100644 index 0000000000..9ae7902b03 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/names.wast.js @@ -0,0 +1,2158 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/names.wast + +// ./test/core/names.wast:4 +let $0 = instantiate(`(module + (func (export "foo") (result i32) (i32.const 0)) +)`); + +// ./test/core/names.wast:8 +assert_return(() => invoke($0, `foo`, []), [value("i32", 0)]); + +// ./test/core/names.wast:12 +let $1 = instantiate(`(module + (func (export "foo") (result i32) (i32.const 1)) +)`); + +// ./test/core/names.wast:16 +assert_return(() => invoke($1, `foo`, []), [value("i32", 1)]); + +// ./test/core/names.wast:19 +let $2 = instantiate(`(module + ;; Test that we can use the empty string as a symbol. + (func (export "") (result i32) (i32.const 0)) + + ;; Test that we can use names beginning with a digit. + (func (export "0") (result i32) (i32.const 1)) + + ;; Test that we can use names beginning with a dash. + (func (export "-0") (result i32) (i32.const 2)) + + ;; Test that we can use names beginning with an underscore. + (func (export "_") (result i32) (i32.const 3)) + + ;; Test that we can use names beginning with a dollar sign. + (func (export "$$") (result i32) (i32.const 4)) + + ;; Test that we can use names beginning with an at sign. + (func (export "@") (result i32) (i32.const 5)) + + ;; Test that we can use non-alphanumeric names. + (func (export "~!@#$$%^&*()_+\`-={}|[]\\\\:\\";'<>?,./ ") (result i32) (i32.const 6)) + + ;; Test that we can use names that have special meaning in JS. + (func (export "NaN") (result i32) (i32.const 7)) + (func (export "Infinity") (result i32) (i32.const 8)) + (func (export "if") (result i32) (i32.const 9)) + + ;; Test that we can use common libc names without conflict. + (func (export "malloc") (result i32) (i32.const 10)) + + ;; Test that we can use some libc hidden names without conflict. + (func (export "_malloc") (result i32) (i32.const 11)) + (func (export "__malloc") (result i32) (i32.const 12)) + + ;; Test that names are case-sensitive. + (func (export "a") (result i32) (i32.const 13)) + (func (export "A") (result i32) (i32.const 14)) + + ;; Test that UTF-8 BOM code points can appear in identifiers. + (func (export "\u{feff}") (result i32) (i32.const 15)) + + ;; Test that Unicode normalization is not applied. These function names + ;; contain different codepoints which normalize to the same thing under + ;; NFC or NFD. + (func (export "\u{c5}") (result i32) (i32.const 16)) + (func (export "A\u{30a}") (result i32) (i32.const 17)) + (func (export "\u{212b}") (result i32) (i32.const 18)) + + ;; Test that Unicode compatibility normalization is not applied. These + ;; function names contain different codepoints which normalize to the + ;; same thing under NFKC or NFKD. + (func (export "\u{fb03}") (result i32) (i32.const 19)) + (func (export "f\u{fb01}") (result i32) (i32.const 20)) + (func (export "ffi") (result i32) (i32.const 21)) + + ;; Test the C0 control codes. + (func (export "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f") (result i32) (i32.const 22)) + (func (export "\\10\\11\\12\\13\\14\\15\\16\\17\\18\\19\\1a\\1b\\1c\\1d\\1e\\1f") (result i32) (i32.const 23)) + ;; Test miscellaneous control codes. + (func (export " \\7f") (result i32) (i32.const 24)) + ;; Test the C1 control codes. + (func (export "\\c2\\80\\c2\\81\\c2\\82\\c2\\83\\c2\\84\\c2\\85\\c2\\86\\c2\\87\\c2\\88\\c2\\89\\c2\\8a\\c2\\8b\\c2\\8c\\c2\\8d\\c2\\8e\\c2\\8f") (result i32) (i32.const 25)) + (func (export "\\c2\\90\\c2\\91\\c2\\92\\c2\\93\\c2\\94\\c2\\95\\c2\\96\\c2\\97\\c2\\98\\c2\\99\\c2\\9a\\c2\\9b\\c2\\9c\\c2\\9d\\c2\\9e\\c2\\9f") (result i32) (i32.const 26)) + ;; Test the Unicode Specials. + (func (export "\\ef\\bf\\b0\\ef\\bf\\b1\\ef\\bf\\b2\\ef\\bf\\b3\\ef\\bf\\b4\\ef\\bf\\b5\\ef\\bf\\b6\\ef\\bf\\b7") (result i32) (i32.const 27)) + (func (export "\\ef\\bf\\b8\\ef\\bf\\b9\\ef\\bf\\ba\\ef\\bf\\bb\\ef\\bf\\bc\\ef\\bf\\bd\\ef\\bf\\be\\ef\\bf\\bf") (result i32) (i32.const 28)) + + ;; Test that the control pictures are distinct from the control codes they + ;; depict. These correspond to the C0 and miscellaneous control code tests + ;; above. + (func (export "\u{2400}\u{2401}\u{2402}\u{2403}\u{2404}\u{2405}\u{2406}\u{2407}\u{2408}\u{2409}\u{240a}\u{240b}\u{240c}\u{240d}\u{240e}\u{240f}") (result i32) (i32.const 29)) + (func (export "\u{2410}\u{2411}\u{2412}\u{2413}\u{2414}\u{2415}\u{2416}\u{2417}\u{2418}\u{2419}\u{241a}\u{241b}\u{241c}\u{241d}\u{241e}\u{241f}") (result i32) (i32.const 30)) + (func (export "\u{2420}\u{2421}") (result i32) (i32.const 31)) + + ;; Test the Unicode Specials in non-escaped form (excluding U+FFFE and + ;; U+FFFF, so that generic tools don't detect this file as non-UTF-8). + (func (export "\u{fff0}\u{fff1}\u{fff2}\u{fff3}\u{fff4}\u{fff5}\u{fff6}\u{fff7}\u{fff8}\u{fff9}\u{fffa}\u{fffb}\u{fffc}\u{fffd}") (result i32) (i32.const 32)) + + ;; Test a bare ZWJ code point. + (func (export "\u{200d}") (result i32) (i32.const 33)) + ;; Test a bare ZWNJ code point. + (func (export "\u{200c}") (result i32) (i32.const 34)) + + ;; Test various bare joiner code points. + (func (export "\u{34f}") (result i32) (i32.const 35)) + (func (export "\u{2060}") (result i32) (i32.const 36)) + (func (export "\u{2d7f}") (result i32) (i32.const 37)) + (func (export "\u{1107f}") (result i32) (i32.const 38)) + (func (export "\u{180e}") (result i32) (i32.const 39)) + + ;; Test various interesting code points: reverse BOM, zero-width space, + ;; no-break space, soft hyphen, word joiner, ogham space mark, + ;; right-to-left override, left-to-right override. + (func (export "\u{ffef}\u{200b}\u{a0}\u{ad}\u{2060}\u{1680}\u{202e}\u{202d}") (result i32) (i32.const 40)) + + ;; Test more interesting code points: left-to-right mark, right-to-left mark, + ;; non-breaking hyphen, line separator, paragraph separator, + ;; left-to-right embedding, right-to-left embedding, + ;; pop directional formatting, narrow no-break space, left-to-right isolate, + ;; right-to-left isolate, first strong isolate, pop directional isolate. + (func (export "\u{200e}\u{200f}\u{2011}\u{2028}\u{2029}\u{202a}\u{202b}\u{202c}\u{202f}\u{2066}\u{2067}\u{2068}\u{2069}") (result i32) (i32.const 41)) + + ;; Test some deprecated code points: inhibit symmetric swapping, + ;; activate symmetric swapping, inhibit arabic form shaping, + ;; activate arabic form shaping, national digit shapes, nominal digit shapes. + (func (export "\u{206a}\u{206b}\u{206c}\u{206d}\u{206e}\u{206f}") (result i32) (i32.const 42)) + + ;; Test "invisible" operator code points. + (func (export "\u{2061}\u{2062}\u{2063}\u{2064}") (result i32) (i32.const 43)) + + ;; Test that code points outside the BMP are supported. + (func (export "\u{10000}\u{dffff}\u{10ffff}") (result i32) (i32.const 44)) + + ;; Test that WebAssembly implementations cope in the presence of Zalgo. + (func (export "Z\u{30f}\u{346}\u{306}\u{35b}\u{34c}\u{334}\u{358}\u{35e}\u{347}\u{32b}\u{325}\u{32a}\u{353}\u{348}\u{354}\u{34e}\u{317}\u{31e}\u{33a}\u{32f}\u{331}\u{31e}\u{319}\u{331}\u{31c}\u{316}\u{320}a\u{357}\u{368}\u{30e}\u{304}\u{306}\u{357}\u{33f}\u{361}\u{35f}\u{340}\u{336}\u{341}\u{325}\u{330}\u{333}\u{32d}\u{359}\u{332}\u{331}\u{339}\u{31d}\u{34e}\u{33c}l\u{344}\u{34a}\u{31a}\u{357}\u{366}\u{344}\u{36b}\u{307}\u{341}\u{336}\u{337}\u{349}\u{329}\u{339}\u{32b}\u{31d}\u{356}\u{345}\u{319}\u{332}\u{33c}\u{347}\u{35a}\u{34d}\u{32e}\u{34e}\u{325}\u{345}\u{31e}g\u{343}\u{310}\u{305}\u{36e}\u{314}\u{310}\u{30e}\u{302}\u{30f}\u{33e}\u{34a}\u{30d}\u{34b}\u{34a}\u{367}\u{301}\u{306}\u{366}\u{35e}\u{336}\u{355}\u{354}\u{35a}\u{329}o\u{34b}\u{314}\u{350}\u{36a}\u{369}\u{321}\u{34f}\u{322}\u{327}\u{341}\u{32b}\u{319}\u{324}\u{32e}\u{356}\u{359}\u{353}\u{33a}\u{31c}\u{329}\u{33c}\u{318}\u{320}") (result i32) (i32.const 45)) + + ;; Test Hangul filler code points. + (func (export "\u{115f}\u{1160}\u{3164}\u{ffa0}") (result i32) (i32.const 46)) + + ;; Test variation selectors (which are also ID_Continue code points). + (func (export "\u{fe00}") (result i32) (i32.const 47)) + (func (export "\u{fe04}") (result i32) (i32.const 48)) + (func (export "\u{e0100}") (result i32) (i32.const 49)) + (func (export "\u{e01ef}") (result i32) (i32.const 50)) + + ;; Test an uncombined combining code point. + (func (export "\u{308}") (result i32) (i32.const 51)) + + ;; Test that numerous different present and historical representations of the + ;; "newline" concept are distinct. Tests largely inspired by: + ;; https://en.wikipedia.org/wiki/Newline#Representations + ;; https://en.wikipedia.org/wiki/Newline#Unicode and + ;; https://en.wikipedia.org/wiki/Newline#Reverse_and_partial_line_feeds + (func (export "\\0a") (result i32) (i32.const 52)) + (func (export "\u{2424}") (result i32) (i32.const 53)) + (func (export "\u{2028}") (result i32) (i32.const 54)) + (func (export "\\0d") (result i32) (i32.const 55)) + (func (export "\\0d\\0a") (result i32) (i32.const 56)) + (func (export "\\0a\\0d") (result i32) (i32.const 57)) + (func (export "\\1e") (result i32) (i32.const 58)) + (func (export "\\0b") (result i32) (i32.const 59)) + (func (export "\\0c") (result i32) (i32.const 60)) + (func (export "\\c2\\85") (result i32) (i32.const 61)) + (func (export "\u{2029}") (result i32) (i32.const 62)) + (func (export "\u{2026}") (result i32) (i32.const 63)) + (func (export "\u{23ce}") (result i32) (i32.const 64)) + (func (export "\\c2\\8b") (result i32) (i32.const 65)) + (func (export "\\c2\\8c") (result i32) (i32.const 66)) + (func (export "\\c2\\8d") (result i32) (i32.const 67)) + (func (export "\u{21b5}") (result i32) (i32.const 68)) + (func (export "\u{21a9}") (result i32) (i32.const 69)) + (func (export "\u{2324}") (result i32) (i32.const 70)) + (func (export "\u{2936}") (result i32) (i32.const 71)) + (func (export "\u{21b2}") (result i32) (i32.const 72)) + (func (export "\u{2ba8}") (result i32) (i32.const 73)) + (func (export "\u{2bb0}") (result i32) (i32.const 74)) + + ;; Test that non-characters are not replaced by the replacement character. + (func (export "\u{fffd}") (result i32) (i32.const 75)) + (func (export "\\ef\\b7\\90") (result i32) (i32.const 76)) + (func (export "\\ef\\b7\\91") (result i32) (i32.const 77)) + (func (export "\\ef\\b7\\92") (result i32) (i32.const 78)) + (func (export "\\ef\\b7\\93") (result i32) (i32.const 79)) + (func (export "\\ef\\b7\\94") (result i32) (i32.const 80)) + (func (export "\\ef\\b7\\95") (result i32) (i32.const 81)) + (func (export "\\ef\\b7\\96") (result i32) (i32.const 82)) + (func (export "\\ef\\b7\\97") (result i32) (i32.const 83)) + (func (export "\\ef\\b7\\98") (result i32) (i32.const 84)) + (func (export "\\ef\\b7\\99") (result i32) (i32.const 85)) + (func (export "\\ef\\b7\\9a") (result i32) (i32.const 86)) + (func (export "\\ef\\b7\\9b") (result i32) (i32.const 87)) + (func (export "\\ef\\b7\\9c") (result i32) (i32.const 88)) + (func (export "\\ef\\b7\\9d") (result i32) (i32.const 89)) + (func (export "\\ef\\b7\\9e") (result i32) (i32.const 90)) + (func (export "\\ef\\b7\\9f") (result i32) (i32.const 91)) + (func (export "\\ef\\b7\\a0") (result i32) (i32.const 92)) + (func (export "\\ef\\b7\\a1") (result i32) (i32.const 93)) + (func (export "\\ef\\b7\\a2") (result i32) (i32.const 94)) + (func (export "\\ef\\b7\\a3") (result i32) (i32.const 95)) + (func (export "\\ef\\b7\\a4") (result i32) (i32.const 96)) + (func (export "\\ef\\b7\\a5") (result i32) (i32.const 97)) + (func (export "\\ef\\b7\\a6") (result i32) (i32.const 98)) + (func (export "\\ef\\b7\\a7") (result i32) (i32.const 99)) + (func (export "\\ef\\b7\\a8") (result i32) (i32.const 100)) + (func (export "\\ef\\b7\\a9") (result i32) (i32.const 101)) + (func (export "\\ef\\b7\\aa") (result i32) (i32.const 102)) + (func (export "\\ef\\b7\\ab") (result i32) (i32.const 103)) + (func (export "\\ef\\b7\\ac") (result i32) (i32.const 104)) + (func (export "\\ef\\b7\\ad") (result i32) (i32.const 105)) + (func (export "\\ef\\b7\\ae") (result i32) (i32.const 106)) + (func (export "\\ef\\b7\\af") (result i32) (i32.const 107)) + (func (export "\\ef\\bf\\be") (result i32) (i32.const 108)) + (func (export "\\ef\\bf\\bf") (result i32) (i32.const 109)) + (func (export "\\f0\\9f\\bf\\be") (result i32) (i32.const 110)) + (func (export "\\f0\\9f\\bf\\bf") (result i32) (i32.const 111)) + (func (export "\\f0\\af\\bf\\be") (result i32) (i32.const 112)) + (func (export "\\f0\\af\\bf\\bf") (result i32) (i32.const 113)) + (func (export "\\f0\\bf\\bf\\be") (result i32) (i32.const 114)) + (func (export "\\f0\\bf\\bf\\bf") (result i32) (i32.const 115)) + (func (export "\\f1\\8f\\bf\\be") (result i32) (i32.const 116)) + (func (export "\\f1\\8f\\bf\\bf") (result i32) (i32.const 117)) + (func (export "\\f1\\9f\\bf\\be") (result i32) (i32.const 118)) + (func (export "\\f1\\9f\\bf\\bf") (result i32) (i32.const 119)) + (func (export "\\f1\\af\\bf\\be") (result i32) (i32.const 120)) + (func (export "\\f1\\af\\bf\\bf") (result i32) (i32.const 121)) + (func (export "\\f1\\bf\\bf\\be") (result i32) (i32.const 122)) + (func (export "\\f1\\bf\\bf\\bf") (result i32) (i32.const 123)) + (func (export "\\f2\\8f\\bf\\be") (result i32) (i32.const 124)) + (func (export "\\f2\\8f\\bf\\bf") (result i32) (i32.const 125)) + (func (export "\\f2\\9f\\bf\\be") (result i32) (i32.const 126)) + (func (export "\\f2\\9f\\bf\\bf") (result i32) (i32.const 127)) + (func (export "\\f2\\af\\bf\\be") (result i32) (i32.const 128)) + (func (export "\\f2\\af\\bf\\bf") (result i32) (i32.const 129)) + (func (export "\\f2\\bf\\bf\\be") (result i32) (i32.const 130)) + (func (export "\\f2\\bf\\bf\\bf") (result i32) (i32.const 131)) + (func (export "\\f3\\8f\\bf\\be") (result i32) (i32.const 132)) + (func (export "\\f3\\8f\\bf\\bf") (result i32) (i32.const 133)) + (func (export "\\f3\\9f\\bf\\be") (result i32) (i32.const 134)) + (func (export "\\f3\\9f\\bf\\bf") (result i32) (i32.const 135)) + (func (export "\\f3\\af\\bf\\be") (result i32) (i32.const 136)) + (func (export "\\f3\\af\\bf\\bf") (result i32) (i32.const 137)) + (func (export "\\f3\\bf\\bf\\be") (result i32) (i32.const 138)) + (func (export "\\f3\\bf\\bf\\bf") (result i32) (i32.const 139)) + (func (export "\\f4\\8f\\bf\\be") (result i32) (i32.const 140)) + (func (export "\\f4\\8f\\bf\\bf") (result i32) (i32.const 141)) + + ;; Test an interrobang with combining diacritical marks above. + ;; https://xkcd.com/1209/ + (func (export "\u{308}\u{203d}\u{308}\u{309}") (result i32) (i32.const 142)) + + ;; Test that RLM/LRM don't change the logical byte order. + (func (export "abc") (result i32) (i32.const 143)) + (func (export "\u{202d}abc") (result i32) (i32.const 144)) + (func (export "\u{202e}cba") (result i32) (i32.const 145)) + (func (export "\u{202d}abc\u{202e}") (result i32) (i32.const 146)) + (func (export "\u{202e}cba\u{202d}") (result i32) (i32.const 147)) + + ;; Test that Unicode font variations are preserved. + (func (export "\u{1d468}") (result i32) (i32.const 148)) + (func (export "\u{1d434}") (result i32) (i32.const 149)) + (func (export "\u{1d608}") (result i32) (i32.const 150)) + (func (export "\u{1d63c}") (result i32) (i32.const 151)) + (func (export "\u{1d400}") (result i32) (i32.const 152)) + (func (export "\u{1d4d0}") (result i32) (i32.const 153)) + (func (export "\u{1d56c}") (result i32) (i32.const 154)) + (func (export "\u{1d5d4}") (result i32) (i32.const 155)) + (func (export "\u{1d49c}") (result i32) (i32.const 156)) + (func (export "\u{1d504}") (result i32) (i32.const 157)) + (func (export "\u{1d538}") (result i32) (i32.const 158)) + (func (export "\u{1d5a0}") (result i32) (i32.const 159)) + (func (export "\u{1d670}") (result i32) (i32.const 160)) + (func (export "\u{1d00}") (result i32) (i32.const 161)) + + ;; Test that various additional letter variations are preserved. + ;; (U+0040, U+0061, U+0041, U+00C5, U+0041 U+030A, U+212B, and the font + ;; variations are covered above.) + (func (export "\u{1d2c}") (result i32) (i32.const 162)) + (func (export "\u{24b6}") (result i32) (i32.const 163)) + (func (export "\u{ff21}") (result i32) (i32.const 164)) + (func (export "\u{1f110}") (result i32) (i32.const 165)) + (func (export "\u{1f130}") (result i32) (i32.const 166)) + (func (export "\u{e0041}") (result i32) (i32.const 167)) + (func (export "U+0041") (result i32) (i32.const 168)) + (func (export "A\u{200b}") (result i32) (i32.const 169)) + (func (export "\u{410}") (result i32) (i32.const 170)) + (func (export "\u{a656}") (result i32) (i32.const 171)) + (func (export "\u{2dfc}") (result i32) (i32.const 172)) + (func (export "\u{2df6}") (result i32) (i32.const 173)) + (func (export "\u{2c6f}") (result i32) (i32.const 174)) + (func (export "\u{1f150}") (result i32) (i32.const 175)) + (func (export "\u{1f170}") (result i32) (i32.const 176)) + (func (export "\u{2c2d}") (result i32) (i32.const 177)) + (func (export "\u{10402}") (result i32) (i32.const 178)) + (func (export "\u{10408}") (result i32) (i32.const 179)) + (func (export "\u{104b0}") (result i32) (i32.const 180)) + (func (export "\u{c0}") (result i32) (i32.const 181)) + (func (export "\u{c1}") (result i32) (i32.const 182)) + (func (export "\u{c2}") (result i32) (i32.const 183)) + (func (export "\u{c3}") (result i32) (i32.const 184)) + (func (export "\u{c4}") (result i32) (i32.const 185)) + (func (export "\u{100}") (result i32) (i32.const 186)) + (func (export "\u{102}") (result i32) (i32.const 187)) + (func (export "\u{104}") (result i32) (i32.const 188)) + (func (export "\u{1cd}") (result i32) (i32.const 189)) + (func (export "\u{1de}") (result i32) (i32.const 190)) + (func (export "\u{1e0}") (result i32) (i32.const 191)) + (func (export "\u{1fa}") (result i32) (i32.const 192)) + (func (export "\u{200}") (result i32) (i32.const 193)) + (func (export "\u{202}") (result i32) (i32.const 194)) + (func (export "\u{226}") (result i32) (i32.const 195)) + (func (export "\u{23a}") (result i32) (i32.const 196)) + (func (export "\u{4d0}") (result i32) (i32.const 197)) + (func (export "\u{4d2}") (result i32) (i32.const 198)) + (func (export "\u{7ca}") (result i32) (i32.const 199)) + (func (export "\u{821}") (result i32) (i32.const 200)) + (func (export "\u{822}") (result i32) (i32.const 201)) + (func (export "\u{823}") (result i32) (i32.const 202)) + (func (export "\u{824}") (result i32) (i32.const 203)) + (func (export "\u{825}") (result i32) (i32.const 204)) + (func (export "\u{904}") (result i32) (i32.const 205)) + (func (export "\u{905}") (result i32) (i32.const 206)) + (func (export "\u{972}") (result i32) (i32.const 207)) + (func (export "\u{985}") (result i32) (i32.const 208)) + (func (export "\u{a05}") (result i32) (i32.const 209)) + (func (export "\u{a85}") (result i32) (i32.const 210)) + (func (export "\u{b05}") (result i32) (i32.const 211)) + (func (export "\u{b85}") (result i32) (i32.const 212)) + (func (export "\u{c05}") (result i32) (i32.const 213)) + (func (export "\u{c85}") (result i32) (i32.const 214)) + (func (export "\u{d05}") (result i32) (i32.const 215)) + (func (export "\u{e30}") (result i32) (i32.const 216)) + (func (export "\u{eb0}") (result i32) (i32.const 217)) + (func (export "\u{f01}") (result i32) (i32.const 218)) + (func (export "\u{f68}") (result i32) (i32.const 219)) + (func (export "\u{fb8}") (result i32) (i32.const 220)) + (func (export "\u{1021}") (result i32) (i32.const 221)) + (func (export "\u{1022}") (result i32) (i32.const 222)) + (func (export "\u{109c}") (result i32) (i32.const 223)) + (func (export "\u{1161}") (result i32) (i32.const 224)) + (func (export "\u{12a0}") (result i32) (i32.const 225)) + (func (export "\u{12d0}") (result i32) (i32.const 226)) + (func (export "\u{13a0}") (result i32) (i32.const 227)) + (func (export "\u{140a}") (result i32) (i32.const 228)) + (func (export "\u{15b3}") (result i32) (i32.const 229)) + (func (export "\u{16a8}") (result i32) (i32.const 230)) + (func (export "\u{16aa}") (result i32) (i32.const 231)) + (func (export "\u{16c6}") (result i32) (i32.const 232)) + (func (export "\u{1700}") (result i32) (i32.const 233)) + (func (export "\u{1720}") (result i32) (i32.const 234)) + (func (export "\u{1740}") (result i32) (i32.const 235)) + (func (export "\u{1760}") (result i32) (i32.const 236)) + (func (export "\u{1820}") (result i32) (i32.const 237)) + (func (export "\u{1887}") (result i32) (i32.const 238)) + (func (export "\u{1920}") (result i32) (i32.const 239)) + (func (export "\u{1963}") (result i32) (i32.const 240)) + (func (export "\u{1a15}") (result i32) (i32.const 241)) + (func (export "\u{1a4b}") (result i32) (i32.const 242)) + (func (export "\u{1a61}") (result i32) (i32.const 243)) + (func (export "\u{1b83}") (result i32) (i32.const 244)) + (func (export "\u{1bc0}") (result i32) (i32.const 245)) + (func (export "\u{1bc1}") (result i32) (i32.const 246)) + (func (export "\u{1c23}") (result i32) (i32.const 247)) + (func (export "\u{1e00}") (result i32) (i32.const 248)) + (func (export "\u{1ea0}") (result i32) (i32.const 249)) + (func (export "\u{1ea2}") (result i32) (i32.const 250)) + (func (export "\u{1ea4}") (result i32) (i32.const 251)) + (func (export "\u{1ea6}") (result i32) (i32.const 252)) + (func (export "\u{1ea8}") (result i32) (i32.const 253)) + (func (export "\u{1eaa}") (result i32) (i32.const 254)) + (func (export "\u{1eac}") (result i32) (i32.const 255)) + (func (export "\u{1eae}") (result i32) (i32.const 256)) + (func (export "\u{1eb0}") (result i32) (i32.const 257)) + (func (export "\u{1eb2}") (result i32) (i32.const 258)) + (func (export "\u{1eb4}") (result i32) (i32.const 259)) + (func (export "\u{1eb6}") (result i32) (i32.const 260)) + (func (export "\u{3042}") (result i32) (i32.const 261)) + (func (export "\u{30a2}") (result i32) (i32.const 262)) + (func (export "\u{311a}") (result i32) (i32.const 263)) + (func (export "\u{314f}") (result i32) (i32.const 264)) + (func (export "\u{320e}") (result i32) (i32.const 265)) + (func (export "\u{320f}") (result i32) (i32.const 266)) + (func (export "\u{3210}") (result i32) (i32.const 267)) + (func (export "\u{3211}") (result i32) (i32.const 268)) + (func (export "\u{3212}") (result i32) (i32.const 269)) + (func (export "\u{3213}") (result i32) (i32.const 270)) + (func (export "\u{3214}") (result i32) (i32.const 271)) + (func (export "\u{3215}") (result i32) (i32.const 272)) + (func (export "\u{3216}") (result i32) (i32.const 273)) + (func (export "\u{3217}") (result i32) (i32.const 274)) + (func (export "\u{3218}") (result i32) (i32.const 275)) + (func (export "\u{3219}") (result i32) (i32.const 276)) + (func (export "\u{321a}") (result i32) (i32.const 277)) + (func (export "\u{321b}") (result i32) (i32.const 278)) + (func (export "\u{326e}") (result i32) (i32.const 279)) + (func (export "\u{326f}") (result i32) (i32.const 280)) + (func (export "\u{3270}") (result i32) (i32.const 281)) + (func (export "\u{3271}") (result i32) (i32.const 282)) + (func (export "\u{3272}") (result i32) (i32.const 283)) + (func (export "\u{3273}") (result i32) (i32.const 284)) + (func (export "\u{3274}") (result i32) (i32.const 285)) + (func (export "\u{3275}") (result i32) (i32.const 286)) + (func (export "\u{3276}") (result i32) (i32.const 287)) + (func (export "\u{3277}") (result i32) (i32.const 288)) + (func (export "\u{3278}") (result i32) (i32.const 289)) + (func (export "\u{3279}") (result i32) (i32.const 290)) + (func (export "\u{327a}") (result i32) (i32.const 291)) + (func (export "\u{327b}") (result i32) (i32.const 292)) + (func (export "\u{32d0}") (result i32) (i32.const 293)) + (func (export "\u{a00a}") (result i32) (i32.const 294)) + (func (export "\u{a4ee}") (result i32) (i32.const 295)) + (func (export "\u{a549}") (result i32) (i32.const 296)) + (func (export "\u{a6a0}") (result i32) (i32.const 297)) + (func (export "\u{a800}") (result i32) (i32.const 298)) + (func (export "\u{a823}") (result i32) (i32.const 299)) + (func (export "\u{a85d}") (result i32) (i32.const 300)) + (func (export "\u{a882}") (result i32) (i32.const 301)) + (func (export "\u{a8ea}") (result i32) (i32.const 302)) + (func (export "\u{a922}") (result i32) (i32.const 303)) + (func (export "\u{a946}") (result i32) (i32.const 304)) + (func (export "\u{a984}") (result i32) (i32.const 305)) + (func (export "\u{aa00}") (result i32) (i32.const 306)) + (func (export "\u{ff71}") (result i32) (i32.const 307)) + (func (export "\u{ffc2}") (result i32) (i32.const 308)) + (func (export "\u{10000}") (result i32) (i32.const 309)) + (func (export "\u{10280}") (result i32) (i32.const 310)) + (func (export "\u{102a0}") (result i32) (i32.const 311)) + (func (export "\u{10300}") (result i32) (i32.const 312)) + (func (export "\u{103a0}") (result i32) (i32.const 313)) + (func (export "\u{10496}") (result i32) (i32.const 314)) + (func (export "\u{10500}") (result i32) (i32.const 315)) + (func (export "\u{10740}") (result i32) (i32.const 316)) + (func (export "\u{10800}") (result i32) (i32.const 317)) + (func (export "\u{10920}") (result i32) (i32.const 318)) + (func (export "\u{10980}") (result i32) (i32.const 319)) + (func (export "\u{109a0}") (result i32) (i32.const 320)) + (func (export "\u{10a00}") (result i32) (i32.const 321)) + (func (export "\u{10b00}") (result i32) (i32.const 322)) + (func (export "\u{10c00}") (result i32) (i32.const 323)) + (func (export "\u{10c01}") (result i32) (i32.const 324)) + (func (export "\u{10c80}") (result i32) (i32.const 325)) + (func (export "\u{11005}") (result i32) (i32.const 326)) + (func (export "\u{11083}") (result i32) (i32.const 327)) + (func (export "\u{11127}") (result i32) (i32.const 328)) + (func (export "\u{11150}") (result i32) (i32.const 329)) + (func (export "\u{11183}") (result i32) (i32.const 330)) + (func (export "\u{11200}") (result i32) (i32.const 331)) + (func (export "\u{11280}") (result i32) (i32.const 332)) + (func (export "\u{112b0}") (result i32) (i32.const 333)) + (func (export "\u{11305}") (result i32) (i32.const 334)) + (func (export "\u{11370}") (result i32) (i32.const 335)) + (func (export "\u{11400}") (result i32) (i32.const 336)) + (func (export "\u{11481}") (result i32) (i32.const 337)) + (func (export "\u{11580}") (result i32) (i32.const 338)) + (func (export "\u{11600}") (result i32) (i32.const 339)) + (func (export "\u{11680}") (result i32) (i32.const 340)) + (func (export "\u{11712}") (result i32) (i32.const 341)) + (func (export "\u{11720}") (result i32) (i32.const 342)) + (func (export "\u{118a1}") (result i32) (i32.const 343)) + (func (export "\u{11ad5}") (result i32) (i32.const 344)) + (func (export "\u{11c00}") (result i32) (i32.const 345)) + (func (export "\u{11c8f}") (result i32) (i32.const 346)) + (func (export "\u{11caf}") (result i32) (i32.const 347)) + (func (export "\u{12000}") (result i32) (i32.const 348)) + (func (export "\u{169d5}") (result i32) (i32.const 349)) + (func (export "\u{16a46}") (result i32) (i32.const 350)) + (func (export "\u{16ae7}") (result i32) (i32.const 351)) + (func (export "\u{16f54}") (result i32) (i32.const 352)) + (func (export "\u{1bc41}") (result i32) (i32.const 353)) + (func (export "\u{1bc64}") (result i32) (i32.const 354)) + (func (export "\u{1e823}") (result i32) (i32.const 355)) + (func (export "\u{1f1e6}") (result i32) (i32.const 356)) + (func (export "\u{2c6d}") (result i32) (i32.const 357)) + (func (export "\u{39b}") (result i32) (i32.const 358)) + (func (export "\u{2c70}") (result i32) (i32.const 359)) + (func (export "\u{aa}") (result i32) (i32.const 360)) + (func (export "\u{2200}") (result i32) (i32.const 361)) + (func (export "\u{20b3}") (result i32) (i32.const 362)) + (func (export "\u{10900}") (result i32) (i32.const 363)) + (func (export "\u{2c80}") (result i32) (i32.const 364)) + (func (export "\u{10330}") (result i32) (i32.const 365)) + (func (export "\u{386}") (result i32) (i32.const 366)) + (func (export "\u{391}") (result i32) (i32.const 367)) + (func (export "\u{1f08}") (result i32) (i32.const 368)) + (func (export "\u{1f09}") (result i32) (i32.const 369)) + (func (export "\u{1f0a}") (result i32) (i32.const 370)) + (func (export "\u{1f0b}") (result i32) (i32.const 371)) + (func (export "\u{1f0c}") (result i32) (i32.const 372)) + (func (export "\u{1f0d}") (result i32) (i32.const 373)) + (func (export "\u{1f0e}") (result i32) (i32.const 374)) + (func (export "\u{1f0f}") (result i32) (i32.const 375)) + (func (export "\u{1f88}") (result i32) (i32.const 376)) + (func (export "\u{1f89}") (result i32) (i32.const 377)) + (func (export "\u{1f8a}") (result i32) (i32.const 378)) + (func (export "\u{1f8b}") (result i32) (i32.const 379)) + (func (export "\u{1f8c}") (result i32) (i32.const 380)) + (func (export "\u{1f8d}") (result i32) (i32.const 381)) + (func (export "\u{1f8e}") (result i32) (i32.const 382)) + (func (export "\u{1f8f}") (result i32) (i32.const 383)) + (func (export "\u{1fb8}") (result i32) (i32.const 384)) + (func (export "\u{1fb9}") (result i32) (i32.const 385)) + (func (export "\u{1fba}") (result i32) (i32.const 386)) + (func (export "\u{1fbb}") (result i32) (i32.const 387)) + (func (export "\u{1fbc}") (result i32) (i32.const 388)) + (func (export "\u{1d6a8}") (result i32) (i32.const 389)) + (func (export "\u{1d6e2}") (result i32) (i32.const 390)) + (func (export "\u{1d71c}") (result i32) (i32.const 391)) + (func (export "\u{1d756}") (result i32) (i32.const 392)) + (func (export "\u{1d790}") (result i32) (i32.const 393)) + (func (export "\u{2376}") (result i32) (i32.const 394)) + (func (export "\u{237a}") (result i32) (i32.const 395)) + (func (export "\u{2a5c}") (result i32) (i32.const 396)) + (func (export "\u{15c5}") (result i32) (i32.const 397)) + (func (export "\u{13aa}") (result i32) (i32.const 398)) + + ;; Test unmatched "closing" and "opening" code points. + (func (export ")\u{2fa}\u{2fc}\u{145cf}\u{1d174}\u{1d176}\u{1d178}\u{1d17a}\u{207e}\u{208e}\u{2769}\u{276b}\u{27ef}\u{fd3f}\u{fe36}\u{fe5a}\u{ff09}\u{ff60}\u{e0029}\u{2773}\u{2775}\u{27e7}\u{27e9}\u{27eb}\u{27ed}\u{2988}\u{298a}\u{2996}\u{2e23}\u{2e25}\u{fe18}\u{fe38}\u{fe3a}\u{fe3c}\u{fe3e}\u{fe40}\u{fe42}\u{fe44}\u{fe48}\u{fe5c}\u{fe5e}\u{ff3d}\u{ff5d}\u{ff63}\u{e005d}\u{e007d}\u{bb}\u{2019}\u{201d}\u{203a}\u{276f}") (result i32) (i32.const 399)) + (func (export "(\u{2f9}\u{2fb}\u{145ce}\u{1d173}\u{1d175}\u{1d177}\u{1d179}\u{207d}\u{208d}\u{2768}\u{276a}\u{27ee}\u{fd3e}\u{fe35}\u{fe59}\u{ff08}\u{ff5f}\u{e0028}\u{2772}\u{2774}\u{27e6}\u{27e8}\u{27ea}\u{27ec}\u{2987}\u{2989}\u{2995}\u{2e22}\u{2e24}\u{fe17}\u{fe37}\u{fe39}\u{fe3b}\u{fe3d}\u{fe3f}\u{fe41}\u{fe43}\u{fe47}\u{fe5b}\u{fe5d}\u{ff3b}\u{ff5b}\u{ff62}\u{e005b}\u{e007b}\u{ab}\u{2018}\u{201c}\u{2039}\u{276e}") (result i32) (i32.const 400)) + (func (export "\u{1da8b}\u{1daa4}") (result i32) (i32.const 401)) + (func (export "\u{1da8b}") (result i32) (i32.const 402)) + + ;; Test that Unicode fraction normalization is not applied. + (func (export "\u{bd}") (result i32) (i32.const 403)) + (func (export "1\u{2044}2") (result i32) (i32.const 404)) + (func (export "1/2") (result i32) (i32.const 405)) + (func (export "\u{b73}") (result i32) (i32.const 406)) + (func (export "\u{d74}") (result i32) (i32.const 407)) + (func (export "\u{2cfd}") (result i32) (i32.const 408)) + (func (export "\u{a831}") (result i32) (i32.const 409)) + (func (export "\u{10141}") (result i32) (i32.const 410)) + (func (export "\u{10175}") (result i32) (i32.const 411)) + (func (export "\u{10176}") (result i32) (i32.const 412)) + (func (export "\u{109bd}") (result i32) (i32.const 413)) + (func (export "\u{10e7b}") (result i32) (i32.const 414)) + + ;; Test a full-width quote. + (func (export "\u{ff02}") (result i32) (i32.const 415)) + + ;; Test that different present and historical representations of the "delete" + ;; concept are distinct. + (func (export "\\7f") (result i32) (i32.const 416)) + (func (export "\\08") (result i32) (i32.const 417)) + (func (export "\u{232b}") (result i32) (i32.const 418)) + (func (export "\u{2326}") (result i32) (i32.const 419)) + (func (export "\u{2408}") (result i32) (i32.const 420)) + (func (export "\u{2421}") (result i32) (i32.const 421)) + (func (export "\u{1dfb}") (result i32) (i32.const 422)) + (func (export "\\0f") (result i32) (i32.const 423)) + (func (export "\u{2190}") (result i32) (i32.const 424)) + (func (export "\u{2327}") (result i32) (i32.const 425)) + (func (export "\u{2352}") (result i32) (i32.const 426)) + (func (export "\u{2354}") (result i32) (i32.const 427)) + (func (export "\u{2362}") (result i32) (i32.const 428)) + (func (export "\u{236b}") (result i32) (i32.const 429)) + + ;; Test that different representations of the "substitute" concept are + ;; distinct. (U+FFFD is covered above.) + (func (export "\\1a") (result i32) (i32.const 430)) + (func (export "\u{2426}") (result i32) (i32.const 431)) + (func (export "\u{241a}") (result i32) (i32.const 432)) + (func (export "\u{fffc}") (result i32) (i32.const 433)) + (func (export "?") (result i32) (i32.const 434)) + (func (export "\u{bf}") (result i32) (i32.const 435)) + (func (export "\u{1945}") (result i32) (i32.const 436)) + (func (export "\u{37e}") (result i32) (i32.const 437)) + (func (export "\u{55e}") (result i32) (i32.const 438)) + (func (export "\u{61f}") (result i32) (i32.const 439)) + (func (export "\u{1367}") (result i32) (i32.const 440)) + (func (export "\u{2047}") (result i32) (i32.const 441)) + (func (export "\u{2370}") (result i32) (i32.const 442)) + (func (export "\u{2753}") (result i32) (i32.const 443)) + (func (export "\u{2754}") (result i32) (i32.const 444)) + (func (export "\u{2cfa}") (result i32) (i32.const 445)) + (func (export "\u{2cfb}") (result i32) (i32.const 446)) + (func (export "\u{2e2e}") (result i32) (i32.const 447)) + (func (export "\u{3244}") (result i32) (i32.const 448)) + (func (export "\u{a60f}") (result i32) (i32.const 449)) + (func (export "\u{a6f7}") (result i32) (i32.const 450)) + (func (export "\u{fe16}") (result i32) (i32.const 451)) + (func (export "\u{fe56}") (result i32) (i32.const 452)) + (func (export "\u{ff1f}") (result i32) (i32.const 453)) + (func (export "\u{11143}") (result i32) (i32.const 454)) + (func (export "\u{1e95f}") (result i32) (i32.const 455)) + (func (export "\u{e003f}") (result i32) (i32.const 456)) + (func (export "\u{16844}") (result i32) (i32.const 457)) + (func (export "\u{2bd1}") (result i32) (i32.const 458)) + + ;; Test that different present and historical representations of the + ;; "paragraph" concept are distinct. (U+2029 is covered above). + (func (export "\u{b6}") (result i32) (i32.const 459)) + (func (export "\u{204b}") (result i32) (i32.const 460)) + (func (export "\u{700}") (result i32) (i32.const 461)) + (func (export "\u{10fb}") (result i32) (i32.const 462)) + (func (export "\u{1368}") (result i32) (i32.const 463)) + (func (export "\u{3037}") (result i32) (i32.const 464)) + (func (export "\u{2761}") (result i32) (i32.const 465)) + (func (export "\u{2e0f}") (result i32) (i32.const 466)) + (func (export "\u{2e10}") (result i32) (i32.const 467)) + (func (export "\u{2e11}") (result i32) (i32.const 468)) + (func (export "\u{2e0e}") (result i32) (i32.const 469)) + (func (export "\\14") (result i32) (i32.const 470)) ;; \u{b6} in CP437 + (func (export "\u{2619}") (result i32) (i32.const 471)) + (func (export "\u{2e3f}") (result i32) (i32.const 472)) + (func (export "\u{3007}") (result i32) (i32.const 473)) + (func (export "\u{e5b}") (result i32) (i32.const 474)) + + ;; Test an unusual character. + (func (export "\u{a66e}") (result i32) (i32.const 475)) + + ;; Test the three characters whose normalization forms under NFC, NFD, NFKC, + ;; and NFKD are all different. + ;; http://unicode.org/faq/normalization.html#6 + (func (export "\u{3d3}") (result i32) (i32.const 476)) + (func (export "\u{3d4}") (result i32) (i32.const 477)) + (func (export "\u{1e9b}") (result i32) (i32.const 478)) +)`); + +// ./test/core/names.wast:615 +assert_return(() => invoke($2, ``, []), [value("i32", 0)]); + +// ./test/core/names.wast:616 +assert_return(() => invoke($2, `0`, []), [value("i32", 1)]); + +// ./test/core/names.wast:617 +assert_return(() => invoke($2, `-0`, []), [value("i32", 2)]); + +// ./test/core/names.wast:618 +assert_return(() => invoke($2, `_`, []), [value("i32", 3)]); + +// ./test/core/names.wast:619 +assert_return(() => invoke($2, `$$`, []), [value("i32", 4)]); + +// ./test/core/names.wast:620 +assert_return(() => invoke($2, `@`, []), [value("i32", 5)]); + +// ./test/core/names.wast:621 +assert_return(() => invoke($2, `~!@#$$%^&*()_+\`-={}|[]\\:";'<>?,./ `, []), [value("i32", 6)]); + +// ./test/core/names.wast:622 +assert_return(() => invoke($2, `NaN`, []), [value("i32", 7)]); + +// ./test/core/names.wast:623 +assert_return(() => invoke($2, `Infinity`, []), [value("i32", 8)]); + +// ./test/core/names.wast:624 +assert_return(() => invoke($2, `if`, []), [value("i32", 9)]); + +// ./test/core/names.wast:625 +assert_return(() => invoke($2, `malloc`, []), [value("i32", 10)]); + +// ./test/core/names.wast:626 +assert_return(() => invoke($2, `_malloc`, []), [value("i32", 11)]); + +// ./test/core/names.wast:627 +assert_return(() => invoke($2, `__malloc`, []), [value("i32", 12)]); + +// ./test/core/names.wast:628 +assert_return(() => invoke($2, `a`, []), [value("i32", 13)]); + +// ./test/core/names.wast:629 +assert_return(() => invoke($2, `A`, []), [value("i32", 14)]); + +// ./test/core/names.wast:630 +assert_return(() => invoke($2, `\u{feff}`, []), [value("i32", 15)]); + +// ./test/core/names.wast:631 +assert_return(() => invoke($2, `\u{c5}`, []), [value("i32", 16)]); + +// ./test/core/names.wast:632 +assert_return(() => invoke($2, `A\u{30a}`, []), [value("i32", 17)]); + +// ./test/core/names.wast:633 +assert_return(() => invoke($2, `\u{212b}`, []), [value("i32", 18)]); + +// ./test/core/names.wast:634 +assert_return(() => invoke($2, `\u{fb03}`, []), [value("i32", 19)]); + +// ./test/core/names.wast:635 +assert_return(() => invoke($2, `f\u{fb01}`, []), [value("i32", 20)]); + +// ./test/core/names.wast:636 +assert_return(() => invoke($2, `ffi`, []), [value("i32", 21)]); + +// ./test/core/names.wast:637 +assert_return( + () => invoke($2, `\x00\x01\x02\x03\x04\x05\x06\x07\x08 +\x0b\x0c\x0d\x0e\x0f`, []), + [value("i32", 22)], +); + +// ./test/core/names.wast:638 +assert_return( + () => invoke($2, `\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f`, []), + [value("i32", 23)], +); + +// ./test/core/names.wast:639 +assert_return(() => invoke($2, ` \x7f`, []), [value("i32", 24)]); + +// ./test/core/names.wast:640 +assert_return( + () => invoke($2, + `\u{80}\u{81}\u{82}\u{83}\u{84}\u{85}\u{86}\u{87}\u{88}\u{89}\u{8a}\u{8b}\u{8c}\u{8d}\u{8e}\u{8f}`, + [], + ), + [value("i32", 25)], +); + +// ./test/core/names.wast:641 +assert_return( + () => invoke($2, + `\u{90}\u{91}\u{92}\u{93}\u{94}\u{95}\u{96}\u{97}\u{98}\u{99}\u{9a}\u{9b}\u{9c}\u{9d}\u{9e}\u{9f}`, + [], + ), + [value("i32", 26)], +); + +// ./test/core/names.wast:642 +assert_return( + () => invoke($2, `\u{fff0}\u{fff1}\u{fff2}\u{fff3}\u{fff4}\u{fff5}\u{fff6}\u{fff7}`, []), + [value("i32", 27)], +); + +// ./test/core/names.wast:643 +assert_return( + () => invoke($2, `\u{fff8}\u{fff9}\u{fffa}\u{fffb}\u{fffc}\u{fffd}\u{fffe}\u{ffff}`, []), + [value("i32", 28)], +); + +// ./test/core/names.wast:644 +assert_return( + () => invoke($2, + `\u{2400}\u{2401}\u{2402}\u{2403}\u{2404}\u{2405}\u{2406}\u{2407}\u{2408}\u{2409}\u{240a}\u{240b}\u{240c}\u{240d}\u{240e}\u{240f}`, + [], + ), + [value("i32", 29)], +); + +// ./test/core/names.wast:645 +assert_return( + () => invoke($2, + `\u{2410}\u{2411}\u{2412}\u{2413}\u{2414}\u{2415}\u{2416}\u{2417}\u{2418}\u{2419}\u{241a}\u{241b}\u{241c}\u{241d}\u{241e}\u{241f}`, + [], + ), + [value("i32", 30)], +); + +// ./test/core/names.wast:646 +assert_return(() => invoke($2, `\u{2420}\u{2421}`, []), [value("i32", 31)]); + +// ./test/core/names.wast:647 +assert_return( + () => invoke($2, + `\u{fff0}\u{fff1}\u{fff2}\u{fff3}\u{fff4}\u{fff5}\u{fff6}\u{fff7}\u{fff8}\u{fff9}\u{fffa}\u{fffb}\u{fffc}\u{fffd}`, + [], + ), + [value("i32", 32)], +); + +// ./test/core/names.wast:648 +assert_return(() => invoke($2, `\u{200d}`, []), [value("i32", 33)]); + +// ./test/core/names.wast:649 +assert_return(() => invoke($2, `\u{200c}`, []), [value("i32", 34)]); + +// ./test/core/names.wast:650 +assert_return(() => invoke($2, `\u{34f}`, []), [value("i32", 35)]); + +// ./test/core/names.wast:651 +assert_return(() => invoke($2, `\u{2060}`, []), [value("i32", 36)]); + +// ./test/core/names.wast:652 +assert_return(() => invoke($2, `\u{2d7f}`, []), [value("i32", 37)]); + +// ./test/core/names.wast:653 +assert_return(() => invoke($2, `\u{1107f}`, []), [value("i32", 38)]); + +// ./test/core/names.wast:654 +assert_return(() => invoke($2, `\u{180e}`, []), [value("i32", 39)]); + +// ./test/core/names.wast:655 +assert_return( + () => invoke($2, `\u{ffef}\u{200b}\u{a0}\u{ad}\u{2060}\u{1680}\u{202e}\u{202d}`, []), + [value("i32", 40)], +); + +// ./test/core/names.wast:656 +assert_return( + () => invoke($2, + `\u{200e}\u{200f}\u{2011}\u{2028}\u{2029}\u{202a}\u{202b}\u{202c}\u{202f}\u{2066}\u{2067}\u{2068}\u{2069}`, + [], + ), + [value("i32", 41)], +); + +// ./test/core/names.wast:657 +assert_return( + () => invoke($2, `\u{206a}\u{206b}\u{206c}\u{206d}\u{206e}\u{206f}`, []), + [value("i32", 42)], +); + +// ./test/core/names.wast:658 +assert_return(() => invoke($2, `\u{2061}\u{2062}\u{2063}\u{2064}`, []), [value("i32", 43)]); + +// ./test/core/names.wast:659 +assert_return(() => invoke($2, `\u{10000}\u{dffff}\u{10ffff}`, []), [value("i32", 44)]); + +// ./test/core/names.wast:660 +assert_return( + () => invoke($2, + `Z\u{30f}\u{346}\u{306}\u{35b}\u{34c}\u{334}\u{358}\u{35e}\u{347}\u{32b}\u{325}\u{32a}\u{353}\u{348}\u{354}\u{34e}\u{317}\u{31e}\u{33a}\u{32f}\u{331}\u{31e}\u{319}\u{331}\u{31c}\u{316}\u{320}a\u{357}\u{368}\u{30e}\u{304}\u{306}\u{357}\u{33f}\u{361}\u{35f}\u{340}\u{336}\u{341}\u{325}\u{330}\u{333}\u{32d}\u{359}\u{332}\u{331}\u{339}\u{31d}\u{34e}\u{33c}l\u{344}\u{34a}\u{31a}\u{357}\u{366}\u{344}\u{36b}\u{307}\u{341}\u{336}\u{337}\u{349}\u{329}\u{339}\u{32b}\u{31d}\u{356}\u{345}\u{319}\u{332}\u{33c}\u{347}\u{35a}\u{34d}\u{32e}\u{34e}\u{325}\u{345}\u{31e}g\u{343}\u{310}\u{305}\u{36e}\u{314}\u{310}\u{30e}\u{302}\u{30f}\u{33e}\u{34a}\u{30d}\u{34b}\u{34a}\u{367}\u{301}\u{306}\u{366}\u{35e}\u{336}\u{355}\u{354}\u{35a}\u{329}o\u{34b}\u{314}\u{350}\u{36a}\u{369}\u{321}\u{34f}\u{322}\u{327}\u{341}\u{32b}\u{319}\u{324}\u{32e}\u{356}\u{359}\u{353}\u{33a}\u{31c}\u{329}\u{33c}\u{318}\u{320}`, + [], + ), + [value("i32", 45)], +); + +// ./test/core/names.wast:661 +assert_return(() => invoke($2, `\u{115f}\u{1160}\u{3164}\u{ffa0}`, []), [value("i32", 46)]); + +// ./test/core/names.wast:662 +assert_return(() => invoke($2, `\u{fe00}`, []), [value("i32", 47)]); + +// ./test/core/names.wast:663 +assert_return(() => invoke($2, `\u{fe04}`, []), [value("i32", 48)]); + +// ./test/core/names.wast:664 +assert_return(() => invoke($2, `\u{e0100}`, []), [value("i32", 49)]); + +// ./test/core/names.wast:665 +assert_return(() => invoke($2, `\u{e01ef}`, []), [value("i32", 50)]); + +// ./test/core/names.wast:666 +assert_return(() => invoke($2, `\u{308}`, []), [value("i32", 51)]); + +// ./test/core/names.wast:667 +assert_return(() => invoke($2, ` +`, []), [value("i32", 52)]); + +// ./test/core/names.wast:668 +assert_return(() => invoke($2, `\u{2424}`, []), [value("i32", 53)]); + +// ./test/core/names.wast:669 +assert_return(() => invoke($2, `\u{2028}`, []), [value("i32", 54)]); + +// ./test/core/names.wast:670 +assert_return(() => invoke($2, `\x0d`, []), [value("i32", 55)]); + +// ./test/core/names.wast:671 +assert_return(() => invoke($2, `\x0d +`, []), [value("i32", 56)]); + +// ./test/core/names.wast:672 +assert_return(() => invoke($2, ` +\x0d`, []), [value("i32", 57)]); + +// ./test/core/names.wast:673 +assert_return(() => invoke($2, `\x1e`, []), [value("i32", 58)]); + +// ./test/core/names.wast:674 +assert_return(() => invoke($2, `\x0b`, []), [value("i32", 59)]); + +// ./test/core/names.wast:675 +assert_return(() => invoke($2, `\x0c`, []), [value("i32", 60)]); + +// ./test/core/names.wast:676 +assert_return(() => invoke($2, `\u{85}`, []), [value("i32", 61)]); + +// ./test/core/names.wast:677 +assert_return(() => invoke($2, `\u{2029}`, []), [value("i32", 62)]); + +// ./test/core/names.wast:678 +assert_return(() => invoke($2, `\u{2026}`, []), [value("i32", 63)]); + +// ./test/core/names.wast:679 +assert_return(() => invoke($2, `\u{23ce}`, []), [value("i32", 64)]); + +// ./test/core/names.wast:680 +assert_return(() => invoke($2, `\u{8b}`, []), [value("i32", 65)]); + +// ./test/core/names.wast:681 +assert_return(() => invoke($2, `\u{8c}`, []), [value("i32", 66)]); + +// ./test/core/names.wast:682 +assert_return(() => invoke($2, `\u{8d}`, []), [value("i32", 67)]); + +// ./test/core/names.wast:683 +assert_return(() => invoke($2, `\u{21b5}`, []), [value("i32", 68)]); + +// ./test/core/names.wast:684 +assert_return(() => invoke($2, `\u{21a9}`, []), [value("i32", 69)]); + +// ./test/core/names.wast:685 +assert_return(() => invoke($2, `\u{2324}`, []), [value("i32", 70)]); + +// ./test/core/names.wast:686 +assert_return(() => invoke($2, `\u{2936}`, []), [value("i32", 71)]); + +// ./test/core/names.wast:687 +assert_return(() => invoke($2, `\u{21b2}`, []), [value("i32", 72)]); + +// ./test/core/names.wast:688 +assert_return(() => invoke($2, `\u{2ba8}`, []), [value("i32", 73)]); + +// ./test/core/names.wast:689 +assert_return(() => invoke($2, `\u{2bb0}`, []), [value("i32", 74)]); + +// ./test/core/names.wast:690 +assert_return(() => invoke($2, `\u{fffd}`, []), [value("i32", 75)]); + +// ./test/core/names.wast:691 +assert_return(() => invoke($2, `\u{fdd0}`, []), [value("i32", 76)]); + +// ./test/core/names.wast:692 +assert_return(() => invoke($2, `\u{fdd1}`, []), [value("i32", 77)]); + +// ./test/core/names.wast:693 +assert_return(() => invoke($2, `\u{fdd2}`, []), [value("i32", 78)]); + +// ./test/core/names.wast:694 +assert_return(() => invoke($2, `\u{fdd3}`, []), [value("i32", 79)]); + +// ./test/core/names.wast:695 +assert_return(() => invoke($2, `\u{fdd4}`, []), [value("i32", 80)]); + +// ./test/core/names.wast:696 +assert_return(() => invoke($2, `\u{fdd5}`, []), [value("i32", 81)]); + +// ./test/core/names.wast:697 +assert_return(() => invoke($2, `\u{fdd6}`, []), [value("i32", 82)]); + +// ./test/core/names.wast:698 +assert_return(() => invoke($2, `\u{fdd7}`, []), [value("i32", 83)]); + +// ./test/core/names.wast:699 +assert_return(() => invoke($2, `\u{fdd8}`, []), [value("i32", 84)]); + +// ./test/core/names.wast:700 +assert_return(() => invoke($2, `\u{fdd9}`, []), [value("i32", 85)]); + +// ./test/core/names.wast:701 +assert_return(() => invoke($2, `\u{fdda}`, []), [value("i32", 86)]); + +// ./test/core/names.wast:702 +assert_return(() => invoke($2, `\u{fddb}`, []), [value("i32", 87)]); + +// ./test/core/names.wast:703 +assert_return(() => invoke($2, `\u{fddc}`, []), [value("i32", 88)]); + +// ./test/core/names.wast:704 +assert_return(() => invoke($2, `\u{fddd}`, []), [value("i32", 89)]); + +// ./test/core/names.wast:705 +assert_return(() => invoke($2, `\u{fdde}`, []), [value("i32", 90)]); + +// ./test/core/names.wast:706 +assert_return(() => invoke($2, `\u{fddf}`, []), [value("i32", 91)]); + +// ./test/core/names.wast:707 +assert_return(() => invoke($2, `\u{fde0}`, []), [value("i32", 92)]); + +// ./test/core/names.wast:708 +assert_return(() => invoke($2, `\u{fde1}`, []), [value("i32", 93)]); + +// ./test/core/names.wast:709 +assert_return(() => invoke($2, `\u{fde2}`, []), [value("i32", 94)]); + +// ./test/core/names.wast:710 +assert_return(() => invoke($2, `\u{fde3}`, []), [value("i32", 95)]); + +// ./test/core/names.wast:711 +assert_return(() => invoke($2, `\u{fde4}`, []), [value("i32", 96)]); + +// ./test/core/names.wast:712 +assert_return(() => invoke($2, `\u{fde5}`, []), [value("i32", 97)]); + +// ./test/core/names.wast:713 +assert_return(() => invoke($2, `\u{fde6}`, []), [value("i32", 98)]); + +// ./test/core/names.wast:714 +assert_return(() => invoke($2, `\u{fde7}`, []), [value("i32", 99)]); + +// ./test/core/names.wast:715 +assert_return(() => invoke($2, `\u{fde8}`, []), [value("i32", 100)]); + +// ./test/core/names.wast:716 +assert_return(() => invoke($2, `\u{fde9}`, []), [value("i32", 101)]); + +// ./test/core/names.wast:717 +assert_return(() => invoke($2, `\u{fdea}`, []), [value("i32", 102)]); + +// ./test/core/names.wast:718 +assert_return(() => invoke($2, `\u{fdeb}`, []), [value("i32", 103)]); + +// ./test/core/names.wast:719 +assert_return(() => invoke($2, `\u{fdec}`, []), [value("i32", 104)]); + +// ./test/core/names.wast:720 +assert_return(() => invoke($2, `\u{fded}`, []), [value("i32", 105)]); + +// ./test/core/names.wast:721 +assert_return(() => invoke($2, `\u{fdee}`, []), [value("i32", 106)]); + +// ./test/core/names.wast:722 +assert_return(() => invoke($2, `\u{fdef}`, []), [value("i32", 107)]); + +// ./test/core/names.wast:723 +assert_return(() => invoke($2, `\u{fffe}`, []), [value("i32", 108)]); + +// ./test/core/names.wast:724 +assert_return(() => invoke($2, `\u{ffff}`, []), [value("i32", 109)]); + +// ./test/core/names.wast:725 +assert_return(() => invoke($2, `\u{1fffe}`, []), [value("i32", 110)]); + +// ./test/core/names.wast:726 +assert_return(() => invoke($2, `\u{1ffff}`, []), [value("i32", 111)]); + +// ./test/core/names.wast:727 +assert_return(() => invoke($2, `\u{2fffe}`, []), [value("i32", 112)]); + +// ./test/core/names.wast:728 +assert_return(() => invoke($2, `\u{2ffff}`, []), [value("i32", 113)]); + +// ./test/core/names.wast:729 +assert_return(() => invoke($2, `\u{3fffe}`, []), [value("i32", 114)]); + +// ./test/core/names.wast:730 +assert_return(() => invoke($2, `\u{3ffff}`, []), [value("i32", 115)]); + +// ./test/core/names.wast:731 +assert_return(() => invoke($2, `\u{4fffe}`, []), [value("i32", 116)]); + +// ./test/core/names.wast:732 +assert_return(() => invoke($2, `\u{4ffff}`, []), [value("i32", 117)]); + +// ./test/core/names.wast:733 +assert_return(() => invoke($2, `\u{5fffe}`, []), [value("i32", 118)]); + +// ./test/core/names.wast:734 +assert_return(() => invoke($2, `\u{5ffff}`, []), [value("i32", 119)]); + +// ./test/core/names.wast:735 +assert_return(() => invoke($2, `\u{6fffe}`, []), [value("i32", 120)]); + +// ./test/core/names.wast:736 +assert_return(() => invoke($2, `\u{6ffff}`, []), [value("i32", 121)]); + +// ./test/core/names.wast:737 +assert_return(() => invoke($2, `\u{7fffe}`, []), [value("i32", 122)]); + +// ./test/core/names.wast:738 +assert_return(() => invoke($2, `\u{7ffff}`, []), [value("i32", 123)]); + +// ./test/core/names.wast:739 +assert_return(() => invoke($2, `\u{8fffe}`, []), [value("i32", 124)]); + +// ./test/core/names.wast:740 +assert_return(() => invoke($2, `\u{8ffff}`, []), [value("i32", 125)]); + +// ./test/core/names.wast:741 +assert_return(() => invoke($2, `\u{9fffe}`, []), [value("i32", 126)]); + +// ./test/core/names.wast:742 +assert_return(() => invoke($2, `\u{9ffff}`, []), [value("i32", 127)]); + +// ./test/core/names.wast:743 +assert_return(() => invoke($2, `\u{afffe}`, []), [value("i32", 128)]); + +// ./test/core/names.wast:744 +assert_return(() => invoke($2, `\u{affff}`, []), [value("i32", 129)]); + +// ./test/core/names.wast:745 +assert_return(() => invoke($2, `\u{bfffe}`, []), [value("i32", 130)]); + +// ./test/core/names.wast:746 +assert_return(() => invoke($2, `\u{bffff}`, []), [value("i32", 131)]); + +// ./test/core/names.wast:747 +assert_return(() => invoke($2, `\u{cfffe}`, []), [value("i32", 132)]); + +// ./test/core/names.wast:748 +assert_return(() => invoke($2, `\u{cffff}`, []), [value("i32", 133)]); + +// ./test/core/names.wast:749 +assert_return(() => invoke($2, `\u{dfffe}`, []), [value("i32", 134)]); + +// ./test/core/names.wast:750 +assert_return(() => invoke($2, `\u{dffff}`, []), [value("i32", 135)]); + +// ./test/core/names.wast:751 +assert_return(() => invoke($2, `\u{efffe}`, []), [value("i32", 136)]); + +// ./test/core/names.wast:752 +assert_return(() => invoke($2, `\u{effff}`, []), [value("i32", 137)]); + +// ./test/core/names.wast:753 +assert_return(() => invoke($2, `\u{ffffe}`, []), [value("i32", 138)]); + +// ./test/core/names.wast:754 +assert_return(() => invoke($2, `\u{fffff}`, []), [value("i32", 139)]); + +// ./test/core/names.wast:755 +assert_return(() => invoke($2, `\u{10fffe}`, []), [value("i32", 140)]); + +// ./test/core/names.wast:756 +assert_return(() => invoke($2, `\u{10ffff}`, []), [value("i32", 141)]); + +// ./test/core/names.wast:757 +assert_return(() => invoke($2, `\u{308}\u{203d}\u{308}\u{309}`, []), [value("i32", 142)]); + +// ./test/core/names.wast:758 +assert_return(() => invoke($2, `abc`, []), [value("i32", 143)]); + +// ./test/core/names.wast:759 +assert_return(() => invoke($2, `\u{202d}abc`, []), [value("i32", 144)]); + +// ./test/core/names.wast:760 +assert_return(() => invoke($2, `\u{202e}cba`, []), [value("i32", 145)]); + +// ./test/core/names.wast:761 +assert_return(() => invoke($2, `\u{202d}abc\u{202e}`, []), [value("i32", 146)]); + +// ./test/core/names.wast:762 +assert_return(() => invoke($2, `\u{202e}cba\u{202d}`, []), [value("i32", 147)]); + +// ./test/core/names.wast:763 +assert_return(() => invoke($2, `\u{1d468}`, []), [value("i32", 148)]); + +// ./test/core/names.wast:764 +assert_return(() => invoke($2, `\u{1d434}`, []), [value("i32", 149)]); + +// ./test/core/names.wast:765 +assert_return(() => invoke($2, `\u{1d608}`, []), [value("i32", 150)]); + +// ./test/core/names.wast:766 +assert_return(() => invoke($2, `\u{1d63c}`, []), [value("i32", 151)]); + +// ./test/core/names.wast:767 +assert_return(() => invoke($2, `\u{1d400}`, []), [value("i32", 152)]); + +// ./test/core/names.wast:768 +assert_return(() => invoke($2, `\u{1d4d0}`, []), [value("i32", 153)]); + +// ./test/core/names.wast:769 +assert_return(() => invoke($2, `\u{1d56c}`, []), [value("i32", 154)]); + +// ./test/core/names.wast:770 +assert_return(() => invoke($2, `\u{1d5d4}`, []), [value("i32", 155)]); + +// ./test/core/names.wast:771 +assert_return(() => invoke($2, `\u{1d49c}`, []), [value("i32", 156)]); + +// ./test/core/names.wast:772 +assert_return(() => invoke($2, `\u{1d504}`, []), [value("i32", 157)]); + +// ./test/core/names.wast:773 +assert_return(() => invoke($2, `\u{1d538}`, []), [value("i32", 158)]); + +// ./test/core/names.wast:774 +assert_return(() => invoke($2, `\u{1d5a0}`, []), [value("i32", 159)]); + +// ./test/core/names.wast:775 +assert_return(() => invoke($2, `\u{1d670}`, []), [value("i32", 160)]); + +// ./test/core/names.wast:776 +assert_return(() => invoke($2, `\u{1d00}`, []), [value("i32", 161)]); + +// ./test/core/names.wast:777 +assert_return(() => invoke($2, `\u{1d2c}`, []), [value("i32", 162)]); + +// ./test/core/names.wast:778 +assert_return(() => invoke($2, `\u{24b6}`, []), [value("i32", 163)]); + +// ./test/core/names.wast:779 +assert_return(() => invoke($2, `\u{ff21}`, []), [value("i32", 164)]); + +// ./test/core/names.wast:780 +assert_return(() => invoke($2, `\u{1f110}`, []), [value("i32", 165)]); + +// ./test/core/names.wast:781 +assert_return(() => invoke($2, `\u{1f130}`, []), [value("i32", 166)]); + +// ./test/core/names.wast:782 +assert_return(() => invoke($2, `\u{e0041}`, []), [value("i32", 167)]); + +// ./test/core/names.wast:783 +assert_return(() => invoke($2, `U+0041`, []), [value("i32", 168)]); + +// ./test/core/names.wast:784 +assert_return(() => invoke($2, `A\u{200b}`, []), [value("i32", 169)]); + +// ./test/core/names.wast:785 +assert_return(() => invoke($2, `\u{410}`, []), [value("i32", 170)]); + +// ./test/core/names.wast:786 +assert_return(() => invoke($2, `\u{a656}`, []), [value("i32", 171)]); + +// ./test/core/names.wast:787 +assert_return(() => invoke($2, `\u{2dfc}`, []), [value("i32", 172)]); + +// ./test/core/names.wast:788 +assert_return(() => invoke($2, `\u{2df6}`, []), [value("i32", 173)]); + +// ./test/core/names.wast:789 +assert_return(() => invoke($2, `\u{2c6f}`, []), [value("i32", 174)]); + +// ./test/core/names.wast:790 +assert_return(() => invoke($2, `\u{1f150}`, []), [value("i32", 175)]); + +// ./test/core/names.wast:791 +assert_return(() => invoke($2, `\u{1f170}`, []), [value("i32", 176)]); + +// ./test/core/names.wast:792 +assert_return(() => invoke($2, `\u{2c2d}`, []), [value("i32", 177)]); + +// ./test/core/names.wast:793 +assert_return(() => invoke($2, `\u{10402}`, []), [value("i32", 178)]); + +// ./test/core/names.wast:794 +assert_return(() => invoke($2, `\u{10408}`, []), [value("i32", 179)]); + +// ./test/core/names.wast:795 +assert_return(() => invoke($2, `\u{104b0}`, []), [value("i32", 180)]); + +// ./test/core/names.wast:796 +assert_return(() => invoke($2, `\u{c0}`, []), [value("i32", 181)]); + +// ./test/core/names.wast:797 +assert_return(() => invoke($2, `\u{c1}`, []), [value("i32", 182)]); + +// ./test/core/names.wast:798 +assert_return(() => invoke($2, `\u{c2}`, []), [value("i32", 183)]); + +// ./test/core/names.wast:799 +assert_return(() => invoke($2, `\u{c3}`, []), [value("i32", 184)]); + +// ./test/core/names.wast:800 +assert_return(() => invoke($2, `\u{c4}`, []), [value("i32", 185)]); + +// ./test/core/names.wast:801 +assert_return(() => invoke($2, `\u{100}`, []), [value("i32", 186)]); + +// ./test/core/names.wast:802 +assert_return(() => invoke($2, `\u{102}`, []), [value("i32", 187)]); + +// ./test/core/names.wast:803 +assert_return(() => invoke($2, `\u{104}`, []), [value("i32", 188)]); + +// ./test/core/names.wast:804 +assert_return(() => invoke($2, `\u{1cd}`, []), [value("i32", 189)]); + +// ./test/core/names.wast:805 +assert_return(() => invoke($2, `\u{1de}`, []), [value("i32", 190)]); + +// ./test/core/names.wast:806 +assert_return(() => invoke($2, `\u{1e0}`, []), [value("i32", 191)]); + +// ./test/core/names.wast:807 +assert_return(() => invoke($2, `\u{1fa}`, []), [value("i32", 192)]); + +// ./test/core/names.wast:808 +assert_return(() => invoke($2, `\u{200}`, []), [value("i32", 193)]); + +// ./test/core/names.wast:809 +assert_return(() => invoke($2, `\u{202}`, []), [value("i32", 194)]); + +// ./test/core/names.wast:810 +assert_return(() => invoke($2, `\u{226}`, []), [value("i32", 195)]); + +// ./test/core/names.wast:811 +assert_return(() => invoke($2, `\u{23a}`, []), [value("i32", 196)]); + +// ./test/core/names.wast:812 +assert_return(() => invoke($2, `\u{4d0}`, []), [value("i32", 197)]); + +// ./test/core/names.wast:813 +assert_return(() => invoke($2, `\u{4d2}`, []), [value("i32", 198)]); + +// ./test/core/names.wast:814 +assert_return(() => invoke($2, `\u{7ca}`, []), [value("i32", 199)]); + +// ./test/core/names.wast:815 +assert_return(() => invoke($2, `\u{821}`, []), [value("i32", 200)]); + +// ./test/core/names.wast:816 +assert_return(() => invoke($2, `\u{822}`, []), [value("i32", 201)]); + +// ./test/core/names.wast:817 +assert_return(() => invoke($2, `\u{823}`, []), [value("i32", 202)]); + +// ./test/core/names.wast:818 +assert_return(() => invoke($2, `\u{824}`, []), [value("i32", 203)]); + +// ./test/core/names.wast:819 +assert_return(() => invoke($2, `\u{825}`, []), [value("i32", 204)]); + +// ./test/core/names.wast:820 +assert_return(() => invoke($2, `\u{904}`, []), [value("i32", 205)]); + +// ./test/core/names.wast:821 +assert_return(() => invoke($2, `\u{905}`, []), [value("i32", 206)]); + +// ./test/core/names.wast:822 +assert_return(() => invoke($2, `\u{972}`, []), [value("i32", 207)]); + +// ./test/core/names.wast:823 +assert_return(() => invoke($2, `\u{985}`, []), [value("i32", 208)]); + +// ./test/core/names.wast:824 +assert_return(() => invoke($2, `\u{a05}`, []), [value("i32", 209)]); + +// ./test/core/names.wast:825 +assert_return(() => invoke($2, `\u{a85}`, []), [value("i32", 210)]); + +// ./test/core/names.wast:826 +assert_return(() => invoke($2, `\u{b05}`, []), [value("i32", 211)]); + +// ./test/core/names.wast:827 +assert_return(() => invoke($2, `\u{b85}`, []), [value("i32", 212)]); + +// ./test/core/names.wast:828 +assert_return(() => invoke($2, `\u{c05}`, []), [value("i32", 213)]); + +// ./test/core/names.wast:829 +assert_return(() => invoke($2, `\u{c85}`, []), [value("i32", 214)]); + +// ./test/core/names.wast:830 +assert_return(() => invoke($2, `\u{d05}`, []), [value("i32", 215)]); + +// ./test/core/names.wast:831 +assert_return(() => invoke($2, `\u{e30}`, []), [value("i32", 216)]); + +// ./test/core/names.wast:832 +assert_return(() => invoke($2, `\u{eb0}`, []), [value("i32", 217)]); + +// ./test/core/names.wast:833 +assert_return(() => invoke($2, `\u{f01}`, []), [value("i32", 218)]); + +// ./test/core/names.wast:834 +assert_return(() => invoke($2, `\u{f68}`, []), [value("i32", 219)]); + +// ./test/core/names.wast:835 +assert_return(() => invoke($2, `\u{fb8}`, []), [value("i32", 220)]); + +// ./test/core/names.wast:836 +assert_return(() => invoke($2, `\u{1021}`, []), [value("i32", 221)]); + +// ./test/core/names.wast:837 +assert_return(() => invoke($2, `\u{1022}`, []), [value("i32", 222)]); + +// ./test/core/names.wast:838 +assert_return(() => invoke($2, `\u{109c}`, []), [value("i32", 223)]); + +// ./test/core/names.wast:839 +assert_return(() => invoke($2, `\u{1161}`, []), [value("i32", 224)]); + +// ./test/core/names.wast:840 +assert_return(() => invoke($2, `\u{12a0}`, []), [value("i32", 225)]); + +// ./test/core/names.wast:841 +assert_return(() => invoke($2, `\u{12d0}`, []), [value("i32", 226)]); + +// ./test/core/names.wast:842 +assert_return(() => invoke($2, `\u{13a0}`, []), [value("i32", 227)]); + +// ./test/core/names.wast:843 +assert_return(() => invoke($2, `\u{140a}`, []), [value("i32", 228)]); + +// ./test/core/names.wast:844 +assert_return(() => invoke($2, `\u{15b3}`, []), [value("i32", 229)]); + +// ./test/core/names.wast:845 +assert_return(() => invoke($2, `\u{16a8}`, []), [value("i32", 230)]); + +// ./test/core/names.wast:846 +assert_return(() => invoke($2, `\u{16aa}`, []), [value("i32", 231)]); + +// ./test/core/names.wast:847 +assert_return(() => invoke($2, `\u{16c6}`, []), [value("i32", 232)]); + +// ./test/core/names.wast:848 +assert_return(() => invoke($2, `\u{1700}`, []), [value("i32", 233)]); + +// ./test/core/names.wast:849 +assert_return(() => invoke($2, `\u{1720}`, []), [value("i32", 234)]); + +// ./test/core/names.wast:850 +assert_return(() => invoke($2, `\u{1740}`, []), [value("i32", 235)]); + +// ./test/core/names.wast:851 +assert_return(() => invoke($2, `\u{1760}`, []), [value("i32", 236)]); + +// ./test/core/names.wast:852 +assert_return(() => invoke($2, `\u{1820}`, []), [value("i32", 237)]); + +// ./test/core/names.wast:853 +assert_return(() => invoke($2, `\u{1887}`, []), [value("i32", 238)]); + +// ./test/core/names.wast:854 +assert_return(() => invoke($2, `\u{1920}`, []), [value("i32", 239)]); + +// ./test/core/names.wast:855 +assert_return(() => invoke($2, `\u{1963}`, []), [value("i32", 240)]); + +// ./test/core/names.wast:856 +assert_return(() => invoke($2, `\u{1a15}`, []), [value("i32", 241)]); + +// ./test/core/names.wast:857 +assert_return(() => invoke($2, `\u{1a4b}`, []), [value("i32", 242)]); + +// ./test/core/names.wast:858 +assert_return(() => invoke($2, `\u{1a61}`, []), [value("i32", 243)]); + +// ./test/core/names.wast:859 +assert_return(() => invoke($2, `\u{1b83}`, []), [value("i32", 244)]); + +// ./test/core/names.wast:860 +assert_return(() => invoke($2, `\u{1bc0}`, []), [value("i32", 245)]); + +// ./test/core/names.wast:861 +assert_return(() => invoke($2, `\u{1bc1}`, []), [value("i32", 246)]); + +// ./test/core/names.wast:862 +assert_return(() => invoke($2, `\u{1c23}`, []), [value("i32", 247)]); + +// ./test/core/names.wast:863 +assert_return(() => invoke($2, `\u{1e00}`, []), [value("i32", 248)]); + +// ./test/core/names.wast:864 +assert_return(() => invoke($2, `\u{1ea0}`, []), [value("i32", 249)]); + +// ./test/core/names.wast:865 +assert_return(() => invoke($2, `\u{1ea2}`, []), [value("i32", 250)]); + +// ./test/core/names.wast:866 +assert_return(() => invoke($2, `\u{1ea4}`, []), [value("i32", 251)]); + +// ./test/core/names.wast:867 +assert_return(() => invoke($2, `\u{1ea6}`, []), [value("i32", 252)]); + +// ./test/core/names.wast:868 +assert_return(() => invoke($2, `\u{1ea8}`, []), [value("i32", 253)]); + +// ./test/core/names.wast:869 +assert_return(() => invoke($2, `\u{1eaa}`, []), [value("i32", 254)]); + +// ./test/core/names.wast:870 +assert_return(() => invoke($2, `\u{1eac}`, []), [value("i32", 255)]); + +// ./test/core/names.wast:871 +assert_return(() => invoke($2, `\u{1eae}`, []), [value("i32", 256)]); + +// ./test/core/names.wast:872 +assert_return(() => invoke($2, `\u{1eb0}`, []), [value("i32", 257)]); + +// ./test/core/names.wast:873 +assert_return(() => invoke($2, `\u{1eb2}`, []), [value("i32", 258)]); + +// ./test/core/names.wast:874 +assert_return(() => invoke($2, `\u{1eb4}`, []), [value("i32", 259)]); + +// ./test/core/names.wast:875 +assert_return(() => invoke($2, `\u{1eb6}`, []), [value("i32", 260)]); + +// ./test/core/names.wast:876 +assert_return(() => invoke($2, `\u{3042}`, []), [value("i32", 261)]); + +// ./test/core/names.wast:877 +assert_return(() => invoke($2, `\u{30a2}`, []), [value("i32", 262)]); + +// ./test/core/names.wast:878 +assert_return(() => invoke($2, `\u{311a}`, []), [value("i32", 263)]); + +// ./test/core/names.wast:879 +assert_return(() => invoke($2, `\u{314f}`, []), [value("i32", 264)]); + +// ./test/core/names.wast:880 +assert_return(() => invoke($2, `\u{320e}`, []), [value("i32", 265)]); + +// ./test/core/names.wast:881 +assert_return(() => invoke($2, `\u{320f}`, []), [value("i32", 266)]); + +// ./test/core/names.wast:882 +assert_return(() => invoke($2, `\u{3210}`, []), [value("i32", 267)]); + +// ./test/core/names.wast:883 +assert_return(() => invoke($2, `\u{3211}`, []), [value("i32", 268)]); + +// ./test/core/names.wast:884 +assert_return(() => invoke($2, `\u{3212}`, []), [value("i32", 269)]); + +// ./test/core/names.wast:885 +assert_return(() => invoke($2, `\u{3213}`, []), [value("i32", 270)]); + +// ./test/core/names.wast:886 +assert_return(() => invoke($2, `\u{3214}`, []), [value("i32", 271)]); + +// ./test/core/names.wast:887 +assert_return(() => invoke($2, `\u{3215}`, []), [value("i32", 272)]); + +// ./test/core/names.wast:888 +assert_return(() => invoke($2, `\u{3216}`, []), [value("i32", 273)]); + +// ./test/core/names.wast:889 +assert_return(() => invoke($2, `\u{3217}`, []), [value("i32", 274)]); + +// ./test/core/names.wast:890 +assert_return(() => invoke($2, `\u{3218}`, []), [value("i32", 275)]); + +// ./test/core/names.wast:891 +assert_return(() => invoke($2, `\u{3219}`, []), [value("i32", 276)]); + +// ./test/core/names.wast:892 +assert_return(() => invoke($2, `\u{321a}`, []), [value("i32", 277)]); + +// ./test/core/names.wast:893 +assert_return(() => invoke($2, `\u{321b}`, []), [value("i32", 278)]); + +// ./test/core/names.wast:894 +assert_return(() => invoke($2, `\u{326e}`, []), [value("i32", 279)]); + +// ./test/core/names.wast:895 +assert_return(() => invoke($2, `\u{326f}`, []), [value("i32", 280)]); + +// ./test/core/names.wast:896 +assert_return(() => invoke($2, `\u{3270}`, []), [value("i32", 281)]); + +// ./test/core/names.wast:897 +assert_return(() => invoke($2, `\u{3271}`, []), [value("i32", 282)]); + +// ./test/core/names.wast:898 +assert_return(() => invoke($2, `\u{3272}`, []), [value("i32", 283)]); + +// ./test/core/names.wast:899 +assert_return(() => invoke($2, `\u{3273}`, []), [value("i32", 284)]); + +// ./test/core/names.wast:900 +assert_return(() => invoke($2, `\u{3274}`, []), [value("i32", 285)]); + +// ./test/core/names.wast:901 +assert_return(() => invoke($2, `\u{3275}`, []), [value("i32", 286)]); + +// ./test/core/names.wast:902 +assert_return(() => invoke($2, `\u{3276}`, []), [value("i32", 287)]); + +// ./test/core/names.wast:903 +assert_return(() => invoke($2, `\u{3277}`, []), [value("i32", 288)]); + +// ./test/core/names.wast:904 +assert_return(() => invoke($2, `\u{3278}`, []), [value("i32", 289)]); + +// ./test/core/names.wast:905 +assert_return(() => invoke($2, `\u{3279}`, []), [value("i32", 290)]); + +// ./test/core/names.wast:906 +assert_return(() => invoke($2, `\u{327a}`, []), [value("i32", 291)]); + +// ./test/core/names.wast:907 +assert_return(() => invoke($2, `\u{327b}`, []), [value("i32", 292)]); + +// ./test/core/names.wast:908 +assert_return(() => invoke($2, `\u{32d0}`, []), [value("i32", 293)]); + +// ./test/core/names.wast:909 +assert_return(() => invoke($2, `\u{a00a}`, []), [value("i32", 294)]); + +// ./test/core/names.wast:910 +assert_return(() => invoke($2, `\u{a4ee}`, []), [value("i32", 295)]); + +// ./test/core/names.wast:911 +assert_return(() => invoke($2, `\u{a549}`, []), [value("i32", 296)]); + +// ./test/core/names.wast:912 +assert_return(() => invoke($2, `\u{a6a0}`, []), [value("i32", 297)]); + +// ./test/core/names.wast:913 +assert_return(() => invoke($2, `\u{a800}`, []), [value("i32", 298)]); + +// ./test/core/names.wast:914 +assert_return(() => invoke($2, `\u{a823}`, []), [value("i32", 299)]); + +// ./test/core/names.wast:915 +assert_return(() => invoke($2, `\u{a85d}`, []), [value("i32", 300)]); + +// ./test/core/names.wast:916 +assert_return(() => invoke($2, `\u{a882}`, []), [value("i32", 301)]); + +// ./test/core/names.wast:917 +assert_return(() => invoke($2, `\u{a8ea}`, []), [value("i32", 302)]); + +// ./test/core/names.wast:918 +assert_return(() => invoke($2, `\u{a922}`, []), [value("i32", 303)]); + +// ./test/core/names.wast:919 +assert_return(() => invoke($2, `\u{a946}`, []), [value("i32", 304)]); + +// ./test/core/names.wast:920 +assert_return(() => invoke($2, `\u{a984}`, []), [value("i32", 305)]); + +// ./test/core/names.wast:921 +assert_return(() => invoke($2, `\u{aa00}`, []), [value("i32", 306)]); + +// ./test/core/names.wast:922 +assert_return(() => invoke($2, `\u{ff71}`, []), [value("i32", 307)]); + +// ./test/core/names.wast:923 +assert_return(() => invoke($2, `\u{ffc2}`, []), [value("i32", 308)]); + +// ./test/core/names.wast:924 +assert_return(() => invoke($2, `\u{10000}`, []), [value("i32", 309)]); + +// ./test/core/names.wast:925 +assert_return(() => invoke($2, `\u{10280}`, []), [value("i32", 310)]); + +// ./test/core/names.wast:926 +assert_return(() => invoke($2, `\u{102a0}`, []), [value("i32", 311)]); + +// ./test/core/names.wast:927 +assert_return(() => invoke($2, `\u{10300}`, []), [value("i32", 312)]); + +// ./test/core/names.wast:928 +assert_return(() => invoke($2, `\u{103a0}`, []), [value("i32", 313)]); + +// ./test/core/names.wast:929 +assert_return(() => invoke($2, `\u{10496}`, []), [value("i32", 314)]); + +// ./test/core/names.wast:930 +assert_return(() => invoke($2, `\u{10500}`, []), [value("i32", 315)]); + +// ./test/core/names.wast:931 +assert_return(() => invoke($2, `\u{10740}`, []), [value("i32", 316)]); + +// ./test/core/names.wast:932 +assert_return(() => invoke($2, `\u{10800}`, []), [value("i32", 317)]); + +// ./test/core/names.wast:933 +assert_return(() => invoke($2, `\u{10920}`, []), [value("i32", 318)]); + +// ./test/core/names.wast:934 +assert_return(() => invoke($2, `\u{10980}`, []), [value("i32", 319)]); + +// ./test/core/names.wast:935 +assert_return(() => invoke($2, `\u{109a0}`, []), [value("i32", 320)]); + +// ./test/core/names.wast:936 +assert_return(() => invoke($2, `\u{10a00}`, []), [value("i32", 321)]); + +// ./test/core/names.wast:937 +assert_return(() => invoke($2, `\u{10b00}`, []), [value("i32", 322)]); + +// ./test/core/names.wast:938 +assert_return(() => invoke($2, `\u{10c00}`, []), [value("i32", 323)]); + +// ./test/core/names.wast:939 +assert_return(() => invoke($2, `\u{10c01}`, []), [value("i32", 324)]); + +// ./test/core/names.wast:940 +assert_return(() => invoke($2, `\u{10c80}`, []), [value("i32", 325)]); + +// ./test/core/names.wast:941 +assert_return(() => invoke($2, `\u{11005}`, []), [value("i32", 326)]); + +// ./test/core/names.wast:942 +assert_return(() => invoke($2, `\u{11083}`, []), [value("i32", 327)]); + +// ./test/core/names.wast:943 +assert_return(() => invoke($2, `\u{11127}`, []), [value("i32", 328)]); + +// ./test/core/names.wast:944 +assert_return(() => invoke($2, `\u{11150}`, []), [value("i32", 329)]); + +// ./test/core/names.wast:945 +assert_return(() => invoke($2, `\u{11183}`, []), [value("i32", 330)]); + +// ./test/core/names.wast:946 +assert_return(() => invoke($2, `\u{11200}`, []), [value("i32", 331)]); + +// ./test/core/names.wast:947 +assert_return(() => invoke($2, `\u{11280}`, []), [value("i32", 332)]); + +// ./test/core/names.wast:948 +assert_return(() => invoke($2, `\u{112b0}`, []), [value("i32", 333)]); + +// ./test/core/names.wast:949 +assert_return(() => invoke($2, `\u{11305}`, []), [value("i32", 334)]); + +// ./test/core/names.wast:950 +assert_return(() => invoke($2, `\u{11370}`, []), [value("i32", 335)]); + +// ./test/core/names.wast:951 +assert_return(() => invoke($2, `\u{11400}`, []), [value("i32", 336)]); + +// ./test/core/names.wast:952 +assert_return(() => invoke($2, `\u{11481}`, []), [value("i32", 337)]); + +// ./test/core/names.wast:953 +assert_return(() => invoke($2, `\u{11580}`, []), [value("i32", 338)]); + +// ./test/core/names.wast:954 +assert_return(() => invoke($2, `\u{11600}`, []), [value("i32", 339)]); + +// ./test/core/names.wast:955 +assert_return(() => invoke($2, `\u{11680}`, []), [value("i32", 340)]); + +// ./test/core/names.wast:956 +assert_return(() => invoke($2, `\u{11712}`, []), [value("i32", 341)]); + +// ./test/core/names.wast:957 +assert_return(() => invoke($2, `\u{11720}`, []), [value("i32", 342)]); + +// ./test/core/names.wast:958 +assert_return(() => invoke($2, `\u{118a1}`, []), [value("i32", 343)]); + +// ./test/core/names.wast:959 +assert_return(() => invoke($2, `\u{11ad5}`, []), [value("i32", 344)]); + +// ./test/core/names.wast:960 +assert_return(() => invoke($2, `\u{11c00}`, []), [value("i32", 345)]); + +// ./test/core/names.wast:961 +assert_return(() => invoke($2, `\u{11c8f}`, []), [value("i32", 346)]); + +// ./test/core/names.wast:962 +assert_return(() => invoke($2, `\u{11caf}`, []), [value("i32", 347)]); + +// ./test/core/names.wast:963 +assert_return(() => invoke($2, `\u{12000}`, []), [value("i32", 348)]); + +// ./test/core/names.wast:964 +assert_return(() => invoke($2, `\u{169d5}`, []), [value("i32", 349)]); + +// ./test/core/names.wast:965 +assert_return(() => invoke($2, `\u{16a46}`, []), [value("i32", 350)]); + +// ./test/core/names.wast:966 +assert_return(() => invoke($2, `\u{16ae7}`, []), [value("i32", 351)]); + +// ./test/core/names.wast:967 +assert_return(() => invoke($2, `\u{16f54}`, []), [value("i32", 352)]); + +// ./test/core/names.wast:968 +assert_return(() => invoke($2, `\u{1bc41}`, []), [value("i32", 353)]); + +// ./test/core/names.wast:969 +assert_return(() => invoke($2, `\u{1bc64}`, []), [value("i32", 354)]); + +// ./test/core/names.wast:970 +assert_return(() => invoke($2, `\u{1e823}`, []), [value("i32", 355)]); + +// ./test/core/names.wast:971 +assert_return(() => invoke($2, `\u{1f1e6}`, []), [value("i32", 356)]); + +// ./test/core/names.wast:972 +assert_return(() => invoke($2, `\u{2c6d}`, []), [value("i32", 357)]); + +// ./test/core/names.wast:973 +assert_return(() => invoke($2, `\u{39b}`, []), [value("i32", 358)]); + +// ./test/core/names.wast:974 +assert_return(() => invoke($2, `\u{2c70}`, []), [value("i32", 359)]); + +// ./test/core/names.wast:975 +assert_return(() => invoke($2, `\u{aa}`, []), [value("i32", 360)]); + +// ./test/core/names.wast:976 +assert_return(() => invoke($2, `\u{2200}`, []), [value("i32", 361)]); + +// ./test/core/names.wast:977 +assert_return(() => invoke($2, `\u{20b3}`, []), [value("i32", 362)]); + +// ./test/core/names.wast:978 +assert_return(() => invoke($2, `\u{10900}`, []), [value("i32", 363)]); + +// ./test/core/names.wast:979 +assert_return(() => invoke($2, `\u{2c80}`, []), [value("i32", 364)]); + +// ./test/core/names.wast:980 +assert_return(() => invoke($2, `\u{10330}`, []), [value("i32", 365)]); + +// ./test/core/names.wast:981 +assert_return(() => invoke($2, `\u{386}`, []), [value("i32", 366)]); + +// ./test/core/names.wast:982 +assert_return(() => invoke($2, `\u{391}`, []), [value("i32", 367)]); + +// ./test/core/names.wast:983 +assert_return(() => invoke($2, `\u{1f08}`, []), [value("i32", 368)]); + +// ./test/core/names.wast:984 +assert_return(() => invoke($2, `\u{1f09}`, []), [value("i32", 369)]); + +// ./test/core/names.wast:985 +assert_return(() => invoke($2, `\u{1f0a}`, []), [value("i32", 370)]); + +// ./test/core/names.wast:986 +assert_return(() => invoke($2, `\u{1f0b}`, []), [value("i32", 371)]); + +// ./test/core/names.wast:987 +assert_return(() => invoke($2, `\u{1f0c}`, []), [value("i32", 372)]); + +// ./test/core/names.wast:988 +assert_return(() => invoke($2, `\u{1f0d}`, []), [value("i32", 373)]); + +// ./test/core/names.wast:989 +assert_return(() => invoke($2, `\u{1f0e}`, []), [value("i32", 374)]); + +// ./test/core/names.wast:990 +assert_return(() => invoke($2, `\u{1f0f}`, []), [value("i32", 375)]); + +// ./test/core/names.wast:991 +assert_return(() => invoke($2, `\u{1f88}`, []), [value("i32", 376)]); + +// ./test/core/names.wast:992 +assert_return(() => invoke($2, `\u{1f89}`, []), [value("i32", 377)]); + +// ./test/core/names.wast:993 +assert_return(() => invoke($2, `\u{1f8a}`, []), [value("i32", 378)]); + +// ./test/core/names.wast:994 +assert_return(() => invoke($2, `\u{1f8b}`, []), [value("i32", 379)]); + +// ./test/core/names.wast:995 +assert_return(() => invoke($2, `\u{1f8c}`, []), [value("i32", 380)]); + +// ./test/core/names.wast:996 +assert_return(() => invoke($2, `\u{1f8d}`, []), [value("i32", 381)]); + +// ./test/core/names.wast:997 +assert_return(() => invoke($2, `\u{1f8e}`, []), [value("i32", 382)]); + +// ./test/core/names.wast:998 +assert_return(() => invoke($2, `\u{1f8f}`, []), [value("i32", 383)]); + +// ./test/core/names.wast:999 +assert_return(() => invoke($2, `\u{1fb8}`, []), [value("i32", 384)]); + +// ./test/core/names.wast:1000 +assert_return(() => invoke($2, `\u{1fb9}`, []), [value("i32", 385)]); + +// ./test/core/names.wast:1001 +assert_return(() => invoke($2, `\u{1fba}`, []), [value("i32", 386)]); + +// ./test/core/names.wast:1002 +assert_return(() => invoke($2, `\u{1fbb}`, []), [value("i32", 387)]); + +// ./test/core/names.wast:1003 +assert_return(() => invoke($2, `\u{1fbc}`, []), [value("i32", 388)]); + +// ./test/core/names.wast:1004 +assert_return(() => invoke($2, `\u{1d6a8}`, []), [value("i32", 389)]); + +// ./test/core/names.wast:1005 +assert_return(() => invoke($2, `\u{1d6e2}`, []), [value("i32", 390)]); + +// ./test/core/names.wast:1006 +assert_return(() => invoke($2, `\u{1d71c}`, []), [value("i32", 391)]); + +// ./test/core/names.wast:1007 +assert_return(() => invoke($2, `\u{1d756}`, []), [value("i32", 392)]); + +// ./test/core/names.wast:1008 +assert_return(() => invoke($2, `\u{1d790}`, []), [value("i32", 393)]); + +// ./test/core/names.wast:1009 +assert_return(() => invoke($2, `\u{2376}`, []), [value("i32", 394)]); + +// ./test/core/names.wast:1010 +assert_return(() => invoke($2, `\u{237a}`, []), [value("i32", 395)]); + +// ./test/core/names.wast:1011 +assert_return(() => invoke($2, `\u{2a5c}`, []), [value("i32", 396)]); + +// ./test/core/names.wast:1012 +assert_return(() => invoke($2, `\u{15c5}`, []), [value("i32", 397)]); + +// ./test/core/names.wast:1013 +assert_return(() => invoke($2, `\u{13aa}`, []), [value("i32", 398)]); + +// ./test/core/names.wast:1014 +assert_return( + () => invoke($2, + `)\u{2fa}\u{2fc}\u{145cf}\u{1d174}\u{1d176}\u{1d178}\u{1d17a}\u{207e}\u{208e}\u{2769}\u{276b}\u{27ef}\u{fd3f}\u{fe36}\u{fe5a}\u{ff09}\u{ff60}\u{e0029}\u{2773}\u{2775}\u{27e7}\u{27e9}\u{27eb}\u{27ed}\u{2988}\u{298a}\u{2996}\u{2e23}\u{2e25}\u{fe18}\u{fe38}\u{fe3a}\u{fe3c}\u{fe3e}\u{fe40}\u{fe42}\u{fe44}\u{fe48}\u{fe5c}\u{fe5e}\u{ff3d}\u{ff5d}\u{ff63}\u{e005d}\u{e007d}\u{bb}\u{2019}\u{201d}\u{203a}\u{276f}`, + [], + ), + [value("i32", 399)], +); + +// ./test/core/names.wast:1015 +assert_return( + () => invoke($2, + `(\u{2f9}\u{2fb}\u{145ce}\u{1d173}\u{1d175}\u{1d177}\u{1d179}\u{207d}\u{208d}\u{2768}\u{276a}\u{27ee}\u{fd3e}\u{fe35}\u{fe59}\u{ff08}\u{ff5f}\u{e0028}\u{2772}\u{2774}\u{27e6}\u{27e8}\u{27ea}\u{27ec}\u{2987}\u{2989}\u{2995}\u{2e22}\u{2e24}\u{fe17}\u{fe37}\u{fe39}\u{fe3b}\u{fe3d}\u{fe3f}\u{fe41}\u{fe43}\u{fe47}\u{fe5b}\u{fe5d}\u{ff3b}\u{ff5b}\u{ff62}\u{e005b}\u{e007b}\u{ab}\u{2018}\u{201c}\u{2039}\u{276e}`, + [], + ), + [value("i32", 400)], +); + +// ./test/core/names.wast:1016 +assert_return(() => invoke($2, `\u{1da8b}\u{1daa4}`, []), [value("i32", 401)]); + +// ./test/core/names.wast:1017 +assert_return(() => invoke($2, `\u{1da8b}`, []), [value("i32", 402)]); + +// ./test/core/names.wast:1018 +assert_return(() => invoke($2, `\u{bd}`, []), [value("i32", 403)]); + +// ./test/core/names.wast:1019 +assert_return(() => invoke($2, `1\u{2044}2`, []), [value("i32", 404)]); + +// ./test/core/names.wast:1020 +assert_return(() => invoke($2, `1/2`, []), [value("i32", 405)]); + +// ./test/core/names.wast:1021 +assert_return(() => invoke($2, `\u{b73}`, []), [value("i32", 406)]); + +// ./test/core/names.wast:1022 +assert_return(() => invoke($2, `\u{d74}`, []), [value("i32", 407)]); + +// ./test/core/names.wast:1023 +assert_return(() => invoke($2, `\u{2cfd}`, []), [value("i32", 408)]); + +// ./test/core/names.wast:1024 +assert_return(() => invoke($2, `\u{a831}`, []), [value("i32", 409)]); + +// ./test/core/names.wast:1025 +assert_return(() => invoke($2, `\u{10141}`, []), [value("i32", 410)]); + +// ./test/core/names.wast:1026 +assert_return(() => invoke($2, `\u{10175}`, []), [value("i32", 411)]); + +// ./test/core/names.wast:1027 +assert_return(() => invoke($2, `\u{10176}`, []), [value("i32", 412)]); + +// ./test/core/names.wast:1028 +assert_return(() => invoke($2, `\u{109bd}`, []), [value("i32", 413)]); + +// ./test/core/names.wast:1029 +assert_return(() => invoke($2, `\u{10e7b}`, []), [value("i32", 414)]); + +// ./test/core/names.wast:1030 +assert_return(() => invoke($2, `\u{ff02}`, []), [value("i32", 415)]); + +// ./test/core/names.wast:1031 +assert_return(() => invoke($2, `\x7f`, []), [value("i32", 416)]); + +// ./test/core/names.wast:1032 +assert_return(() => invoke($2, `\x08`, []), [value("i32", 417)]); + +// ./test/core/names.wast:1033 +assert_return(() => invoke($2, `\u{232b}`, []), [value("i32", 418)]); + +// ./test/core/names.wast:1034 +assert_return(() => invoke($2, `\u{2326}`, []), [value("i32", 419)]); + +// ./test/core/names.wast:1035 +assert_return(() => invoke($2, `\u{2408}`, []), [value("i32", 420)]); + +// ./test/core/names.wast:1036 +assert_return(() => invoke($2, `\u{2421}`, []), [value("i32", 421)]); + +// ./test/core/names.wast:1037 +assert_return(() => invoke($2, `\u{1dfb}`, []), [value("i32", 422)]); + +// ./test/core/names.wast:1038 +assert_return(() => invoke($2, `\x0f`, []), [value("i32", 423)]); + +// ./test/core/names.wast:1039 +assert_return(() => invoke($2, `\u{2190}`, []), [value("i32", 424)]); + +// ./test/core/names.wast:1040 +assert_return(() => invoke($2, `\u{2327}`, []), [value("i32", 425)]); + +// ./test/core/names.wast:1041 +assert_return(() => invoke($2, `\u{2352}`, []), [value("i32", 426)]); + +// ./test/core/names.wast:1042 +assert_return(() => invoke($2, `\u{2354}`, []), [value("i32", 427)]); + +// ./test/core/names.wast:1043 +assert_return(() => invoke($2, `\u{2362}`, []), [value("i32", 428)]); + +// ./test/core/names.wast:1044 +assert_return(() => invoke($2, `\u{236b}`, []), [value("i32", 429)]); + +// ./test/core/names.wast:1045 +assert_return(() => invoke($2, `\x1a`, []), [value("i32", 430)]); + +// ./test/core/names.wast:1046 +assert_return(() => invoke($2, `\u{2426}`, []), [value("i32", 431)]); + +// ./test/core/names.wast:1047 +assert_return(() => invoke($2, `\u{241a}`, []), [value("i32", 432)]); + +// ./test/core/names.wast:1048 +assert_return(() => invoke($2, `\u{fffc}`, []), [value("i32", 433)]); + +// ./test/core/names.wast:1049 +assert_return(() => invoke($2, `?`, []), [value("i32", 434)]); + +// ./test/core/names.wast:1050 +assert_return(() => invoke($2, `\u{bf}`, []), [value("i32", 435)]); + +// ./test/core/names.wast:1051 +assert_return(() => invoke($2, `\u{1945}`, []), [value("i32", 436)]); + +// ./test/core/names.wast:1052 +assert_return(() => invoke($2, `\u{37e}`, []), [value("i32", 437)]); + +// ./test/core/names.wast:1053 +assert_return(() => invoke($2, `\u{55e}`, []), [value("i32", 438)]); + +// ./test/core/names.wast:1054 +assert_return(() => invoke($2, `\u{61f}`, []), [value("i32", 439)]); + +// ./test/core/names.wast:1055 +assert_return(() => invoke($2, `\u{1367}`, []), [value("i32", 440)]); + +// ./test/core/names.wast:1056 +assert_return(() => invoke($2, `\u{2047}`, []), [value("i32", 441)]); + +// ./test/core/names.wast:1057 +assert_return(() => invoke($2, `\u{2370}`, []), [value("i32", 442)]); + +// ./test/core/names.wast:1058 +assert_return(() => invoke($2, `\u{2753}`, []), [value("i32", 443)]); + +// ./test/core/names.wast:1059 +assert_return(() => invoke($2, `\u{2754}`, []), [value("i32", 444)]); + +// ./test/core/names.wast:1060 +assert_return(() => invoke($2, `\u{2cfa}`, []), [value("i32", 445)]); + +// ./test/core/names.wast:1061 +assert_return(() => invoke($2, `\u{2cfb}`, []), [value("i32", 446)]); + +// ./test/core/names.wast:1062 +assert_return(() => invoke($2, `\u{2e2e}`, []), [value("i32", 447)]); + +// ./test/core/names.wast:1063 +assert_return(() => invoke($2, `\u{3244}`, []), [value("i32", 448)]); + +// ./test/core/names.wast:1064 +assert_return(() => invoke($2, `\u{a60f}`, []), [value("i32", 449)]); + +// ./test/core/names.wast:1065 +assert_return(() => invoke($2, `\u{a6f7}`, []), [value("i32", 450)]); + +// ./test/core/names.wast:1066 +assert_return(() => invoke($2, `\u{fe16}`, []), [value("i32", 451)]); + +// ./test/core/names.wast:1067 +assert_return(() => invoke($2, `\u{fe56}`, []), [value("i32", 452)]); + +// ./test/core/names.wast:1068 +assert_return(() => invoke($2, `\u{ff1f}`, []), [value("i32", 453)]); + +// ./test/core/names.wast:1069 +assert_return(() => invoke($2, `\u{11143}`, []), [value("i32", 454)]); + +// ./test/core/names.wast:1070 +assert_return(() => invoke($2, `\u{1e95f}`, []), [value("i32", 455)]); + +// ./test/core/names.wast:1071 +assert_return(() => invoke($2, `\u{e003f}`, []), [value("i32", 456)]); + +// ./test/core/names.wast:1072 +assert_return(() => invoke($2, `\u{16844}`, []), [value("i32", 457)]); + +// ./test/core/names.wast:1073 +assert_return(() => invoke($2, `\u{2bd1}`, []), [value("i32", 458)]); + +// ./test/core/names.wast:1074 +assert_return(() => invoke($2, `\u{b6}`, []), [value("i32", 459)]); + +// ./test/core/names.wast:1075 +assert_return(() => invoke($2, `\u{204b}`, []), [value("i32", 460)]); + +// ./test/core/names.wast:1076 +assert_return(() => invoke($2, `\u{700}`, []), [value("i32", 461)]); + +// ./test/core/names.wast:1077 +assert_return(() => invoke($2, `\u{10fb}`, []), [value("i32", 462)]); + +// ./test/core/names.wast:1078 +assert_return(() => invoke($2, `\u{1368}`, []), [value("i32", 463)]); + +// ./test/core/names.wast:1079 +assert_return(() => invoke($2, `\u{3037}`, []), [value("i32", 464)]); + +// ./test/core/names.wast:1080 +assert_return(() => invoke($2, `\u{2761}`, []), [value("i32", 465)]); + +// ./test/core/names.wast:1081 +assert_return(() => invoke($2, `\u{2e0f}`, []), [value("i32", 466)]); + +// ./test/core/names.wast:1082 +assert_return(() => invoke($2, `\u{2e10}`, []), [value("i32", 467)]); + +// ./test/core/names.wast:1083 +assert_return(() => invoke($2, `\u{2e11}`, []), [value("i32", 468)]); + +// ./test/core/names.wast:1084 +assert_return(() => invoke($2, `\u{2e0e}`, []), [value("i32", 469)]); + +// ./test/core/names.wast:1085 +assert_return(() => invoke($2, `\x14`, []), [value("i32", 470)]); + +// ./test/core/names.wast:1086 +assert_return(() => invoke($2, `\u{2619}`, []), [value("i32", 471)]); + +// ./test/core/names.wast:1087 +assert_return(() => invoke($2, `\u{2e3f}`, []), [value("i32", 472)]); + +// ./test/core/names.wast:1088 +assert_return(() => invoke($2, `\u{3007}`, []), [value("i32", 473)]); + +// ./test/core/names.wast:1089 +assert_return(() => invoke($2, `\u{e5b}`, []), [value("i32", 474)]); + +// ./test/core/names.wast:1090 +assert_return(() => invoke($2, `\u{a66e}`, []), [value("i32", 475)]); + +// ./test/core/names.wast:1091 +assert_return(() => invoke($2, `\u{3d3}`, []), [value("i32", 476)]); + +// ./test/core/names.wast:1092 +assert_return(() => invoke($2, `\u{3d4}`, []), [value("i32", 477)]); + +// ./test/core/names.wast:1093 +assert_return(() => invoke($2, `\u{1e9b}`, []), [value("i32", 478)]); + +// ./test/core/names.wast:1095 +let $3 = instantiate(`(module + ;; Test that we can use indices instead of names to reference imports, + ;; exports, functions and parameters. + (import "spectest" "print_i32" (func (param i32))) + (func (import "spectest" "print_i32") (param i32)) + (func (param i32) (param i32) + (call 0 (local.get 0)) + (call 1 (local.get 1)) + ) + (export "print32" (func 2)) +)`); + +// ./test/core/names.wast:1107 +assert_return(() => invoke($3, `print32`, [42, 123]), []); diff --git a/js/src/jit-test/tests/wasm/spec/spec/nop.wast.js b/js/src/jit-test/tests/wasm/spec/spec/nop.wast.js new file mode 100644 index 0000000000..c736361363 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/nop.wast.js @@ -0,0 +1,593 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/nop.wast + +// ./test/core/nop.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definitions + (func $$dummy) + (func $$3-ary (param i32 i32 i32) (result i32) + local.get 0 local.get 1 local.get 2 i32.sub i32.add + ) + (memory 1) + + (func (export "as-func-first") (result i32) + (nop) (i32.const 1) + ) + (func (export "as-func-mid") (result i32) + (call $$dummy) (nop) (i32.const 2) + ) + (func (export "as-func-last") (result i32) + (call $$dummy) (i32.const 3) (nop) + ) + (func (export "as-func-everywhere") (result i32) + (nop) (nop) (call $$dummy) (nop) (i32.const 4) (nop) (nop) + ) + + (func (export "as-drop-first") (param i32) + (nop) (local.get 0) (drop) + ) + (func (export "as-drop-last") (param i32) + (local.get 0) (nop) (drop) + ) + (func (export "as-drop-everywhere") (param i32) + (nop) (nop) (local.get 0) (nop) (nop) (drop) + ) + + (func (export "as-select-first") (param i32) (result i32) + (nop) (local.get 0) (local.get 0) (local.get 0) (select) + ) + (func (export "as-select-mid1") (param i32) (result i32) + (local.get 0) (nop) (local.get 0) (local.get 0) (select) + ) + (func (export "as-select-mid2") (param i32) (result i32) + (local.get 0) (local.get 0) (nop) (local.get 0) (select) + ) + (func (export "as-select-last") (param i32) (result i32) + (local.get 0) (local.get 0) (local.get 0) (nop) (select) + ) + (func (export "as-select-everywhere") (param i32) (result i32) + (nop) (local.get 0) (nop) (nop) (local.get 0) + (nop) (nop) (local.get 0) (nop) (nop) (select) + ) + + (func (export "as-block-first") (result i32) + (block (result i32) (nop) (i32.const 2)) + ) + (func (export "as-block-mid") (result i32) + (block (result i32) (call $$dummy) (nop) (i32.const 2)) + ) + (func (export "as-block-last") (result i32) + (block (result i32) (nop) (call $$dummy) (i32.const 3) (nop)) + ) + (func (export "as-block-everywhere") (result i32) + (block (result i32) + (nop) (nop) (call $$dummy) (nop) (i32.const 4) (nop) (nop) + ) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (nop) (i32.const 2)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) (call $$dummy) (nop) (i32.const 2)) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) (call $$dummy) (i32.const 3) (nop)) + ) + (func (export "as-loop-everywhere") (result i32) + (loop (result i32) + (nop) (nop) (call $$dummy) (nop) (i32.const 4) (nop) (nop) + ) + ) + + (func (export "as-if-condition") (param i32) + (local.get 0) (nop) (if (then (call $$dummy))) + ) + (func (export "as-if-then") (param i32) + (if (local.get 0) (then (nop)) (else (call $$dummy))) + ) + (func (export "as-if-else") (param i32) + (if (local.get 0) (then (call $$dummy)) (else (nop))) + ) + + (func (export "as-br-first") (param i32) (result i32) + (block (result i32) (nop) (local.get 0) (br 0)) + ) + (func (export "as-br-last") (param i32) (result i32) + (block (result i32) (local.get 0) (nop) (br 0)) + ) + (func (export "as-br-everywhere") (param i32) (result i32) + (block (result i32) (nop) (nop) (local.get 0) (nop) (nop) (br 0)) + ) + + (func (export "as-br_if-first") (param i32) (result i32) + (block (result i32) (nop) (local.get 0) (local.get 0) (br_if 0)) + ) + (func (export "as-br_if-mid") (param i32) (result i32) + (block (result i32) (local.get 0) (nop) (local.get 0) (br_if 0)) + ) + (func (export "as-br_if-last") (param i32) (result i32) + (block (result i32) (local.get 0) (local.get 0) (nop) (br_if 0)) + ) + (func (export "as-br_if-everywhere") (param i32) (result i32) + (block (result i32) + (nop) (nop) (local.get 0) (nop) (nop) (local.get 0) (nop) (nop) + (br_if 0) + ) + ) + + (func (export "as-br_table-first") (param i32) (result i32) + (block (result i32) (nop) (local.get 0) (local.get 0) (br_table 0 0)) + ) + (func (export "as-br_table-mid") (param i32) (result i32) + (block (result i32) (local.get 0) (nop) (local.get 0) (br_table 0 0)) + ) + (func (export "as-br_table-last") (param i32) (result i32) + (block (result i32) (local.get 0) (local.get 0) (nop) (br_table 0 0)) + ) + (func (export "as-br_table-everywhere") (param i32) (result i32) + (block (result i32) + (nop) (nop) (local.get 0) (nop) (nop) (local.get 0) (nop) (nop) + (br_table 0 0) + ) + ) + + (func (export "as-return-first") (param i32) (result i32) + (nop) (local.get 0) (return) + ) + (func (export "as-return-last") (param i32) (result i32) + (local.get 0) (nop) (return) + ) + (func (export "as-return-everywhere") (param i32) (result i32) + (nop) (nop) (local.get 0) (nop) (nop) (return) + ) + + (func (export "as-call-first") (param i32 i32 i32) (result i32) + (nop) (local.get 0) (local.get 1) (local.get 2) (call $$3-ary) + ) + (func (export "as-call-mid1") (param i32 i32 i32) (result i32) + (local.get 0) (nop) (local.get 1) (local.get 2) (call $$3-ary) + ) + (func (export "as-call-mid2") (param i32 i32 i32) (result i32) + (local.get 0) (local.get 1) (nop) (local.get 2) (call $$3-ary) + ) + (func (export "as-call-last") (param i32 i32 i32) (result i32) + (local.get 0) (local.get 1) (local.get 2) (nop) (call $$3-ary) + ) + (func (export "as-call-everywhere") (param i32 i32 i32) (result i32) + (nop) (nop) (local.get 0) (nop) (nop) (local.get 1) + (nop) (nop) (local.get 2) (nop) (nop) (call $$3-ary) + ) + + (func (export "as-unary-first") (param i32) (result i32) + (nop) (local.get 0) (i32.ctz) + ) + (func (export "as-unary-last") (param i32) (result i32) + (local.get 0) (nop) (i32.ctz) + ) + (func (export "as-unary-everywhere") (param i32) (result i32) + (nop) (nop) (local.get 0) (nop) (nop) (i32.ctz) + ) + + (func (export "as-binary-first") (param i32) (result i32) + (nop) (local.get 0) (local.get 0) (i32.add) + ) + (func (export "as-binary-mid") (param i32) (result i32) + (local.get 0) (nop) (local.get 0) (i32.add) + ) + (func (export "as-binary-last") (param i32) (result i32) + (local.get 0) (local.get 0) (nop) (i32.add) + ) + (func (export "as-binary-everywhere") (param i32) (result i32) + (nop) (local.get 0) (nop) (nop) (local.get 0) (nop) (nop) (i32.add) + ) + + (func (export "as-test-first") (param i32) (result i32) + (nop) (local.get 0) (i32.eqz) + ) + (func (export "as-test-last") (param i32) (result i32) + (local.get 0) (nop) (i32.eqz) + ) + (func (export "as-test-everywhere") (param i32) (result i32) + (nop) (nop) (local.get 0) (nop) (nop) i32.eqz + ) + + (func (export "as-compare-first") (param i32) (result i32) + (nop) (local.get 0) (local.get 0) (i32.ne) + ) + (func (export "as-compare-mid") (param i32) (result i32) + (local.get 0) (nop) (local.get 0) (i32.ne) + ) + (func (export "as-compare-last") (param i32) (result i32) + (local.get 0) (local.get 0) (nop) (i32.lt_u) + ) + (func (export "as-compare-everywhere") (param i32) (result i32) + (nop) (local.get 0) (nop) (nop) (local.get 0) (nop) (nop) (i32.le_s) + ) + + (func (export "as-memory.grow-first") (param i32) (result i32) + (nop) (local.get 0) (memory.grow) + ) + (func (export "as-memory.grow-last") (param i32) (result i32) + (local.get 0) (nop) (memory.grow) + ) + (func (export "as-memory.grow-everywhere") (param i32) (result i32) + (nop) (nop) (local.get 0) (nop) (nop) (memory.grow) + ) + + (func $$func (param i32 i32) (result i32) (local.get 0)) + (type $$check (func (param i32 i32) (result i32))) + (table funcref (elem $$func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (nop) (i32.const 1) (i32.const 2) (i32.const 0) + (call_indirect (type $$check)) + ) + ) + (func (export "as-call_indirect-mid1") (result i32) + (block (result i32) + (i32.const 1) (nop) (i32.const 2) (i32.const 0) + (call_indirect (type $$check)) + ) + ) + (func (export "as-call_indirect-mid2") (result i32) + (block (result i32) + (i32.const 1) (i32.const 2) (nop) (i32.const 0) + (call_indirect (type $$check)) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (i32.const 1) (i32.const 2) (i32.const 0) (nop) + (call_indirect (type $$check)) + ) + ) + (func (export "as-call_indirect-everywhere") (result i32) + (block (result i32) + (nop) (nop) (i32.const 1) (nop) (nop) (i32.const 2) (nop) (nop) (i32.const 0) (nop) (nop) + (call_indirect (type $$check)) + ) + ) + + (func (export "as-local.set-first") (param i32) (result i32) + (nop) (i32.const 2) (local.set 0) (local.get 0) + ) + (func (export "as-local.set-last") (param i32) (result i32) + (i32.const 2) (nop) (local.set 0) (local.get 0) + ) + (func (export "as-local.set-everywhere") (param i32) (result i32) + (nop) (nop) (i32.const 2) (nop) (nop) (local.set 0) (local.get 0) + ) + + (func (export "as-local.tee-first") (param i32) (result i32) + (nop) (i32.const 2) (local.tee 0) + ) + (func (export "as-local.tee-last") (param i32) (result i32) + (i32.const 2) (nop) (local.tee 0) + ) + (func (export "as-local.tee-everywhere") (param i32) (result i32) + (nop) (nop) (i32.const 2) (nop) (nop) (local.tee 0) + ) + + (global $$a (mut i32) (i32.const 0)) + (func (export "as-global.set-first") (result i32) + (nop) (i32.const 2) (global.set $$a) (global.get $$a) + ) + (func (export "as-global.set-last") (result i32) + (i32.const 2) (nop) (global.set $$a) (global.get $$a) + ) + (func (export "as-global.set-everywhere") (result i32) + (nop) (nop) (i32.const 2) (nop) (nop) (global.set 0) + (global.get $$a) + ) + + (func (export "as-load-first") (param i32) (result i32) + (nop) (local.get 0) (i32.load) + ) + (func (export "as-load-last") (param i32) (result i32) + (local.get 0) (nop) (i32.load) + ) + (func (export "as-load-everywhere") (param i32) (result i32) + (nop) (nop) (local.get 0) (nop) (nop) (i32.load) + ) + + (func (export "as-store-first") (param i32 i32) + (nop) (local.get 0) (local.get 1) (i32.store) + ) + (func (export "as-store-mid") (param i32 i32) + (local.get 0) (nop) (local.get 1) (i32.store) + ) + (func (export "as-store-last") (param i32 i32) + (local.get 0) (local.get 1) (nop) (i32.store) + ) + (func (export "as-store-everywhere") (param i32 i32) + (nop) (nop) (local.get 0) (nop) (nop) (local.get 1) (nop) (nop) (i32.store) + ) +)`); + +// ./test/core/nop.wast:306 +assert_return(() => invoke($0, `as-func-first`, []), [value("i32", 1)]); + +// ./test/core/nop.wast:307 +assert_return(() => invoke($0, `as-func-mid`, []), [value("i32", 2)]); + +// ./test/core/nop.wast:308 +assert_return(() => invoke($0, `as-func-last`, []), [value("i32", 3)]); + +// ./test/core/nop.wast:309 +assert_return(() => invoke($0, `as-func-everywhere`, []), [value("i32", 4)]); + +// ./test/core/nop.wast:311 +assert_return(() => invoke($0, `as-drop-first`, [0]), []); + +// ./test/core/nop.wast:312 +assert_return(() => invoke($0, `as-drop-last`, [0]), []); + +// ./test/core/nop.wast:313 +assert_return(() => invoke($0, `as-drop-everywhere`, [0]), []); + +// ./test/core/nop.wast:315 +assert_return(() => invoke($0, `as-select-first`, [3]), [value("i32", 3)]); + +// ./test/core/nop.wast:316 +assert_return(() => invoke($0, `as-select-mid1`, [3]), [value("i32", 3)]); + +// ./test/core/nop.wast:317 +assert_return(() => invoke($0, `as-select-mid2`, [3]), [value("i32", 3)]); + +// ./test/core/nop.wast:318 +assert_return(() => invoke($0, `as-select-last`, [3]), [value("i32", 3)]); + +// ./test/core/nop.wast:319 +assert_return(() => invoke($0, `as-select-everywhere`, [3]), [value("i32", 3)]); + +// ./test/core/nop.wast:321 +assert_return(() => invoke($0, `as-block-first`, []), [value("i32", 2)]); + +// ./test/core/nop.wast:322 +assert_return(() => invoke($0, `as-block-mid`, []), [value("i32", 2)]); + +// ./test/core/nop.wast:323 +assert_return(() => invoke($0, `as-block-last`, []), [value("i32", 3)]); + +// ./test/core/nop.wast:324 +assert_return(() => invoke($0, `as-block-everywhere`, []), [value("i32", 4)]); + +// ./test/core/nop.wast:326 +assert_return(() => invoke($0, `as-loop-first`, []), [value("i32", 2)]); + +// ./test/core/nop.wast:327 +assert_return(() => invoke($0, `as-loop-mid`, []), [value("i32", 2)]); + +// ./test/core/nop.wast:328 +assert_return(() => invoke($0, `as-loop-last`, []), [value("i32", 3)]); + +// ./test/core/nop.wast:329 +assert_return(() => invoke($0, `as-loop-everywhere`, []), [value("i32", 4)]); + +// ./test/core/nop.wast:331 +assert_return(() => invoke($0, `as-if-condition`, [0]), []); + +// ./test/core/nop.wast:332 +assert_return(() => invoke($0, `as-if-condition`, [-1]), []); + +// ./test/core/nop.wast:333 +assert_return(() => invoke($0, `as-if-then`, [0]), []); + +// ./test/core/nop.wast:334 +assert_return(() => invoke($0, `as-if-then`, [4]), []); + +// ./test/core/nop.wast:335 +assert_return(() => invoke($0, `as-if-else`, [0]), []); + +// ./test/core/nop.wast:336 +assert_return(() => invoke($0, `as-if-else`, [3]), []); + +// ./test/core/nop.wast:338 +assert_return(() => invoke($0, `as-br-first`, [5]), [value("i32", 5)]); + +// ./test/core/nop.wast:339 +assert_return(() => invoke($0, `as-br-last`, [6]), [value("i32", 6)]); + +// ./test/core/nop.wast:340 +assert_return(() => invoke($0, `as-br-everywhere`, [7]), [value("i32", 7)]); + +// ./test/core/nop.wast:342 +assert_return(() => invoke($0, `as-br_if-first`, [4]), [value("i32", 4)]); + +// ./test/core/nop.wast:343 +assert_return(() => invoke($0, `as-br_if-mid`, [5]), [value("i32", 5)]); + +// ./test/core/nop.wast:344 +assert_return(() => invoke($0, `as-br_if-last`, [6]), [value("i32", 6)]); + +// ./test/core/nop.wast:345 +assert_return(() => invoke($0, `as-br_if-everywhere`, [7]), [value("i32", 7)]); + +// ./test/core/nop.wast:347 +assert_return(() => invoke($0, `as-br_table-first`, [4]), [value("i32", 4)]); + +// ./test/core/nop.wast:348 +assert_return(() => invoke($0, `as-br_table-mid`, [5]), [value("i32", 5)]); + +// ./test/core/nop.wast:349 +assert_return(() => invoke($0, `as-br_table-last`, [6]), [value("i32", 6)]); + +// ./test/core/nop.wast:350 +assert_return(() => invoke($0, `as-br_table-everywhere`, [7]), [value("i32", 7)]); + +// ./test/core/nop.wast:352 +assert_return(() => invoke($0, `as-return-first`, [5]), [value("i32", 5)]); + +// ./test/core/nop.wast:353 +assert_return(() => invoke($0, `as-return-last`, [6]), [value("i32", 6)]); + +// ./test/core/nop.wast:354 +assert_return(() => invoke($0, `as-return-everywhere`, [7]), [value("i32", 7)]); + +// ./test/core/nop.wast:356 +assert_return(() => invoke($0, `as-call-first`, [3, 1, 2]), [value("i32", 2)]); + +// ./test/core/nop.wast:357 +assert_return(() => invoke($0, `as-call-mid1`, [3, 1, 2]), [value("i32", 2)]); + +// ./test/core/nop.wast:358 +assert_return(() => invoke($0, `as-call-mid2`, [0, 3, 1]), [value("i32", 2)]); + +// ./test/core/nop.wast:359 +assert_return(() => invoke($0, `as-call-last`, [10, 9, -1]), [value("i32", 20)]); + +// ./test/core/nop.wast:360 +assert_return(() => invoke($0, `as-call-everywhere`, [2, 1, 5]), [value("i32", -2)]); + +// ./test/core/nop.wast:362 +assert_return(() => invoke($0, `as-unary-first`, [30]), [value("i32", 1)]); + +// ./test/core/nop.wast:363 +assert_return(() => invoke($0, `as-unary-last`, [30]), [value("i32", 1)]); + +// ./test/core/nop.wast:364 +assert_return(() => invoke($0, `as-unary-everywhere`, [12]), [value("i32", 2)]); + +// ./test/core/nop.wast:366 +assert_return(() => invoke($0, `as-binary-first`, [3]), [value("i32", 6)]); + +// ./test/core/nop.wast:367 +assert_return(() => invoke($0, `as-binary-mid`, [3]), [value("i32", 6)]); + +// ./test/core/nop.wast:368 +assert_return(() => invoke($0, `as-binary-last`, [3]), [value("i32", 6)]); + +// ./test/core/nop.wast:369 +assert_return(() => invoke($0, `as-binary-everywhere`, [3]), [value("i32", 6)]); + +// ./test/core/nop.wast:371 +assert_return(() => invoke($0, `as-test-first`, [0]), [value("i32", 1)]); + +// ./test/core/nop.wast:372 +assert_return(() => invoke($0, `as-test-last`, [0]), [value("i32", 1)]); + +// ./test/core/nop.wast:373 +assert_return(() => invoke($0, `as-test-everywhere`, [0]), [value("i32", 1)]); + +// ./test/core/nop.wast:375 +assert_return(() => invoke($0, `as-compare-first`, [3]), [value("i32", 0)]); + +// ./test/core/nop.wast:376 +assert_return(() => invoke($0, `as-compare-mid`, [3]), [value("i32", 0)]); + +// ./test/core/nop.wast:377 +assert_return(() => invoke($0, `as-compare-last`, [3]), [value("i32", 0)]); + +// ./test/core/nop.wast:378 +assert_return(() => invoke($0, `as-compare-everywhere`, [3]), [value("i32", 1)]); + +// ./test/core/nop.wast:380 +assert_return(() => invoke($0, `as-memory.grow-first`, [0]), [value("i32", 1)]); + +// ./test/core/nop.wast:381 +assert_return(() => invoke($0, `as-memory.grow-last`, [2]), [value("i32", 1)]); + +// ./test/core/nop.wast:382 +assert_return(() => invoke($0, `as-memory.grow-everywhere`, [12]), [value("i32", 3)]); + +// ./test/core/nop.wast:384 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 1)]); + +// ./test/core/nop.wast:385 +assert_return(() => invoke($0, `as-call_indirect-mid1`, []), [value("i32", 1)]); + +// ./test/core/nop.wast:386 +assert_return(() => invoke($0, `as-call_indirect-mid2`, []), [value("i32", 1)]); + +// ./test/core/nop.wast:387 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", 1)]); + +// ./test/core/nop.wast:388 +assert_return(() => invoke($0, `as-call_indirect-everywhere`, []), [value("i32", 1)]); + +// ./test/core/nop.wast:390 +assert_return(() => invoke($0, `as-local.set-first`, [1]), [value("i32", 2)]); + +// ./test/core/nop.wast:391 +assert_return(() => invoke($0, `as-local.set-last`, [1]), [value("i32", 2)]); + +// ./test/core/nop.wast:392 +assert_return(() => invoke($0, `as-local.set-everywhere`, [1]), [value("i32", 2)]); + +// ./test/core/nop.wast:394 +assert_return(() => invoke($0, `as-local.tee-first`, [1]), [value("i32", 2)]); + +// ./test/core/nop.wast:395 +assert_return(() => invoke($0, `as-local.tee-last`, [1]), [value("i32", 2)]); + +// ./test/core/nop.wast:396 +assert_return(() => invoke($0, `as-local.tee-everywhere`, [1]), [value("i32", 2)]); + +// ./test/core/nop.wast:398 +assert_return(() => invoke($0, `as-global.set-first`, []), [value("i32", 2)]); + +// ./test/core/nop.wast:399 +assert_return(() => invoke($0, `as-global.set-last`, []), [value("i32", 2)]); + +// ./test/core/nop.wast:400 +assert_return(() => invoke($0, `as-global.set-everywhere`, []), [value("i32", 2)]); + +// ./test/core/nop.wast:402 +assert_return(() => invoke($0, `as-load-first`, [100]), [value("i32", 0)]); + +// ./test/core/nop.wast:403 +assert_return(() => invoke($0, `as-load-last`, [100]), [value("i32", 0)]); + +// ./test/core/nop.wast:404 +assert_return(() => invoke($0, `as-load-everywhere`, [100]), [value("i32", 0)]); + +// ./test/core/nop.wast:406 +assert_return(() => invoke($0, `as-store-first`, [0, 1]), []); + +// ./test/core/nop.wast:407 +assert_return(() => invoke($0, `as-store-mid`, [0, 2]), []); + +// ./test/core/nop.wast:408 +assert_return(() => invoke($0, `as-store-last`, [0, 3]), []); + +// ./test/core/nop.wast:409 +assert_return(() => invoke($0, `as-store-everywhere`, [0, 4]), []); + +// ./test/core/nop.wast:411 +assert_invalid( + () => instantiate(`(module (func $$type-i32 (result i32) (nop)))`), + `type mismatch`, +); + +// ./test/core/nop.wast:415 +assert_invalid( + () => instantiate(`(module (func $$type-i64 (result i64) (nop)))`), + `type mismatch`, +); + +// ./test/core/nop.wast:419 +assert_invalid( + () => instantiate(`(module (func $$type-f32 (result f32) (nop)))`), + `type mismatch`, +); + +// ./test/core/nop.wast:423 +assert_invalid( + () => instantiate(`(module (func $$type-f64 (result f64) (nop)))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/ref_func.wast.js b/js/src/jit-test/tests/wasm/spec/spec/ref_func.wast.js new file mode 100644 index 0000000000..3ca5cea002 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/ref_func.wast.js @@ -0,0 +1,156 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/ref_func.wast + +// ./test/core/ref_func.wast:1 +let $0 = instantiate(`(module + (func (export "f") (param $$x i32) (result i32) (local.get $$x)) +)`); + +// ./test/core/ref_func.wast:4 +register($0, `M`); + +// ./test/core/ref_func.wast:6 +let $1 = instantiate(`(module + (func $$f (import "M" "f") (param i32) (result i32)) + (func $$g (param $$x i32) (result i32) + (i32.add (local.get $$x) (i32.const 1)) + ) + + (global funcref (ref.func $$f)) + (global funcref (ref.func $$g)) + (global $$v (mut funcref) (ref.func $$f)) + + (global funcref (ref.func $$gf1)) + (global funcref (ref.func $$gf2)) + (func (drop (ref.func $$ff1)) (drop (ref.func $$ff2))) + (elem declare func $$gf1 $$ff1) + (elem declare funcref (ref.func $$gf2) (ref.func $$ff2)) + (func $$gf1) + (func $$gf2) + (func $$ff1) + (func $$ff2) + + (func (export "is_null-f") (result i32) + (ref.is_null (ref.func $$f)) + ) + (func (export "is_null-g") (result i32) + (ref.is_null (ref.func $$g)) + ) + (func (export "is_null-v") (result i32) + (ref.is_null (global.get $$v)) + ) + + (func (export "set-f") (global.set $$v (ref.func $$f))) + (func (export "set-g") (global.set $$v (ref.func $$g))) + + (table $$t 1 funcref) + (elem declare func $$f $$g) + + (func (export "call-f") (param $$x i32) (result i32) + (table.set $$t (i32.const 0) (ref.func $$f)) + (call_indirect $$t (param i32) (result i32) (local.get $$x) (i32.const 0)) + ) + (func (export "call-g") (param $$x i32) (result i32) + (table.set $$t (i32.const 0) (ref.func $$g)) + (call_indirect $$t (param i32) (result i32) (local.get $$x) (i32.const 0)) + ) + (func (export "call-v") (param $$x i32) (result i32) + (table.set $$t (i32.const 0) (global.get $$v)) + (call_indirect $$t (param i32) (result i32) (local.get $$x) (i32.const 0)) + ) +)`); + +// ./test/core/ref_func.wast:56 +assert_return(() => invoke($1, `is_null-f`, []), [value("i32", 0)]); + +// ./test/core/ref_func.wast:57 +assert_return(() => invoke($1, `is_null-g`, []), [value("i32", 0)]); + +// ./test/core/ref_func.wast:58 +assert_return(() => invoke($1, `is_null-v`, []), [value("i32", 0)]); + +// ./test/core/ref_func.wast:60 +assert_return(() => invoke($1, `call-f`, [4]), [value("i32", 4)]); + +// ./test/core/ref_func.wast:61 +assert_return(() => invoke($1, `call-g`, [4]), [value("i32", 5)]); + +// ./test/core/ref_func.wast:62 +assert_return(() => invoke($1, `call-v`, [4]), [value("i32", 4)]); + +// ./test/core/ref_func.wast:63 +invoke($1, `set-g`, []); + +// ./test/core/ref_func.wast:64 +assert_return(() => invoke($1, `call-v`, [4]), [value("i32", 5)]); + +// ./test/core/ref_func.wast:65 +invoke($1, `set-f`, []); + +// ./test/core/ref_func.wast:66 +assert_return(() => invoke($1, `call-v`, [4]), [value("i32", 4)]); + +// ./test/core/ref_func.wast:68 +assert_invalid( + () => instantiate(`(module + (func $$f (import "M" "f") (param i32) (result i32)) + (func $$g (import "M" "g") (param i32) (result i32)) + (global funcref (ref.func 7)) + )`), + `unknown function 7`, +); + +// ./test/core/ref_func.wast:80 +let $2 = instantiate(`(module + (func $$f1) + (func $$f2) + (func $$f3) + (func $$f4) + (func $$f5) + (func $$f6) + + (table $$t 1 funcref) + + (global funcref (ref.func $$f1)) + (export "f" (func $$f2)) + (elem (table $$t) (i32.const 0) func $$f3) + (elem (table $$t) (i32.const 0) funcref (ref.func $$f4)) + (elem func $$f5) + (elem funcref (ref.func $$f6)) + + (func + (ref.func $$f1) + (ref.func $$f2) + (ref.func $$f3) + (ref.func $$f4) + (ref.func $$f5) + (ref.func $$f6) + (return) + ) +)`); + +// ./test/core/ref_func.wast:108 +assert_invalid( + () => instantiate(`(module (func $$f (drop (ref.func $$f))))`), + `undeclared function reference`, +); + +// ./test/core/ref_func.wast:112 +assert_invalid( + () => instantiate(`(module (start $$f) (func $$f (drop (ref.func $$f))))`), + `undeclared function reference`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/ref_is_null.wast.js b/js/src/jit-test/tests/wasm/spec/spec/ref_is_null.wast.js new file mode 100644 index 0000000000..2c7aee86e0 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/ref_is_null.wast.js @@ -0,0 +1,97 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/ref_is_null.wast + +// ./test/core/ref_is_null.wast:1 +let $0 = instantiate(`(module + (func $$f1 (export "funcref") (param $$x funcref) (result i32) + (ref.is_null (local.get $$x)) + ) + (func $$f2 (export "externref") (param $$x externref) (result i32) + (ref.is_null (local.get $$x)) + ) + + (table $$t1 2 funcref) + (table $$t2 2 externref) + (elem (table $$t1) (i32.const 1) func $$dummy) + (func $$dummy) + + (func (export "init") (param $$r externref) + (table.set $$t2 (i32.const 1) (local.get $$r)) + ) + (func (export "deinit") + (table.set $$t1 (i32.const 1) (ref.null func)) + (table.set $$t2 (i32.const 1) (ref.null extern)) + ) + + (func (export "funcref-elem") (param $$x i32) (result i32) + (call $$f1 (table.get $$t1 (local.get $$x))) + ) + (func (export "externref-elem") (param $$x i32) (result i32) + (call $$f2 (table.get $$t2 (local.get $$x))) + ) +)`); + +// ./test/core/ref_is_null.wast:30 +assert_return(() => invoke($0, `funcref`, [null]), [value("i32", 1)]); + +// ./test/core/ref_is_null.wast:31 +assert_return(() => invoke($0, `externref`, [null]), [value("i32", 1)]); + +// ./test/core/ref_is_null.wast:33 +assert_return(() => invoke($0, `externref`, [externref(1)]), [value("i32", 0)]); + +// ./test/core/ref_is_null.wast:35 +invoke($0, `init`, [externref(0)]); + +// ./test/core/ref_is_null.wast:37 +assert_return(() => invoke($0, `funcref-elem`, [0]), [value("i32", 1)]); + +// ./test/core/ref_is_null.wast:38 +assert_return(() => invoke($0, `externref-elem`, [0]), [value("i32", 1)]); + +// ./test/core/ref_is_null.wast:40 +assert_return(() => invoke($0, `funcref-elem`, [1]), [value("i32", 0)]); + +// ./test/core/ref_is_null.wast:41 +assert_return(() => invoke($0, `externref-elem`, [1]), [value("i32", 0)]); + +// ./test/core/ref_is_null.wast:43 +invoke($0, `deinit`, []); + +// ./test/core/ref_is_null.wast:45 +assert_return(() => invoke($0, `funcref-elem`, [0]), [value("i32", 1)]); + +// ./test/core/ref_is_null.wast:46 +assert_return(() => invoke($0, `externref-elem`, [0]), [value("i32", 1)]); + +// ./test/core/ref_is_null.wast:48 +assert_return(() => invoke($0, `funcref-elem`, [1]), [value("i32", 1)]); + +// ./test/core/ref_is_null.wast:49 +assert_return(() => invoke($0, `externref-elem`, [1]), [value("i32", 1)]); + +// ./test/core/ref_is_null.wast:51 +assert_invalid( + () => instantiate(`(module (func $$ref-vs-num (param i32) (ref.is_null (local.get 0))))`), + `type mismatch`, +); + +// ./test/core/ref_is_null.wast:55 +assert_invalid( + () => instantiate(`(module (func $$ref-vs-empty (ref.is_null)))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/ref_null.wast.js b/js/src/jit-test/tests/wasm/spec/spec/ref_null.wast.js new file mode 100644 index 0000000000..bae6ecd4b2 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/ref_null.wast.js @@ -0,0 +1,31 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/ref_null.wast + +// ./test/core/ref_null.wast:1 +let $0 = instantiate(`(module + (func (export "externref") (result externref) (ref.null extern)) + (func (export "funcref") (result funcref) (ref.null func)) + + (global externref (ref.null extern)) + (global funcref (ref.null func)) +)`); + +// ./test/core/ref_null.wast:9 +assert_return(() => invoke($0, `externref`, []), [value('externref', null)]); + +// ./test/core/ref_null.wast:10 +assert_return(() => invoke($0, `funcref`, []), [value('anyfunc', null)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/return.wast.js b/js/src/jit-test/tests/wasm/spec/spec/return.wast.js new file mode 100644 index 0000000000..7d09ec6a2e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/return.wast.js @@ -0,0 +1,636 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/return.wast + +// ./test/core/return.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definition + (func $$dummy) + + (func (export "type-i32") (drop (i32.ctz (return)))) + (func (export "type-i64") (drop (i64.ctz (return)))) + (func (export "type-f32") (drop (f32.neg (return)))) + (func (export "type-f64") (drop (f64.neg (return)))) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (return (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (return (i64.const 2)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (return (f32.const 3)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (return (f64.const 4)))) + ) + + (func (export "nullary") (return)) + (func (export "unary") (result f64) (return (f64.const 3))) + + (func (export "as-func-first") (result i32) + (return (i32.const 1)) (i32.const 2) + ) + (func (export "as-func-mid") (result i32) + (call $$dummy) (return (i32.const 2)) (i32.const 3) + ) + (func (export "as-func-last") + (nop) (call $$dummy) (return) + ) + (func (export "as-func-value") (result i32) + (nop) (call $$dummy) (return (i32.const 3)) + ) + + (func (export "as-block-first") + (block (return) (call $$dummy)) + ) + (func (export "as-block-mid") + (block (call $$dummy) (return) (call $$dummy)) + ) + (func (export "as-block-last") + (block (nop) (call $$dummy) (return)) + ) + (func (export "as-block-value") (result i32) + (block (result i32) (nop) (call $$dummy) (return (i32.const 2))) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (return (i32.const 3)) (i32.const 2)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) (call $$dummy) (return (i32.const 4)) (i32.const 2)) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) (nop) (call $$dummy) (return (i32.const 5))) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (return (i32.const 9)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (return))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (return (i32.const 8)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (return (i32.const 9)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") (result i64) + (block (br_table 0 0 0 (return (i64.const 9)))) (i64.const -1) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (return (i32.const 10)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (return (i32.const 11))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i64) + (return (return (i64.const 7))) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) + (return (i32.const 2)) (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (if (result i32) + (local.get 0) (then (return (i32.const 3))) (else (local.get 1)) + ) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (if (result i32) + (local.get 0) (then (local.get 1)) (else (return (i32.const 4))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (return (i32.const 5)) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (return (i32.const 6)) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (return (i32.const 7))) + ) + + (func $$f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (call $$f (return (i32.const 12)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (result i32) + (call $$f (i32.const 1) (return (i32.const 13)) (i32.const 3)) + ) + (func (export "as-call-last") (result i32) + (call $$f (i32.const 1) (i32.const 2) (return (i32.const 14))) + ) + + (type $$sig (func (param i32 i32 i32) (result i32))) + (table funcref (elem $$f)) + (func (export "as-call_indirect-func") (result i32) + (call_indirect (type $$sig) + (return (i32.const 20)) (i32.const 1) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-first") (result i32) + (call_indirect (type $$sig) + (i32.const 0) (return (i32.const 21)) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (call_indirect (type $$sig) + (i32.const 0) (i32.const 1) (return (i32.const 22)) (i32.const 3) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (call_indirect (type $$sig) + (i32.const 0) (i32.const 1) (i32.const 2) (return (i32.const 23)) + ) + ) + + (func (export "as-local.set-value") (result i32) (local f32) + (local.set 0 (return (i32.const 17))) (i32.const -1) + ) + (func (export "as-local.tee-value") (result i32) (local i32) + (local.tee 0 (return (i32.const 1))) + ) + (global $$a (mut i32) (i32.const 0)) + (func (export "as-global.set-value") (result i32) + (global.set $$a (return (i32.const 1))) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (f32.load (return (f32.const 1.7))) + ) + (func (export "as-loadN-address") (result i64) + (i64.load8_s (return (i64.const 30))) + ) + + (func (export "as-store-address") (result i32) + (f64.store (return (i32.const 30)) (f64.const 7)) (i32.const -1) + ) + (func (export "as-store-value") (result i32) + (i64.store (i32.const 2) (return (i32.const 31))) (i32.const -1) + ) + + (func (export "as-storeN-address") (result i32) + (i32.store8 (return (i32.const 32)) (i32.const 7)) (i32.const -1) + ) + (func (export "as-storeN-value") (result i32) + (i64.store16 (i32.const 2) (return (i32.const 33))) (i32.const -1) + ) + + (func (export "as-unary-operand") (result f32) + (f32.neg (return (f32.const 3.4))) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (return (i32.const 3)) (i32.const 10)) + ) + (func (export "as-binary-right") (result i64) + (i64.sub (i64.const 10) (return (i64.const 45))) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (return (i32.const 44))) + ) + + (func (export "as-compare-left") (result i32) + (f64.le (return (i32.const 43)) (f64.const 10)) + ) + (func (export "as-compare-right") (result i32) + (f32.ne (f32.const 10) (return (i32.const 42))) + ) + + (func (export "as-convert-operand") (result i32) + (i32.wrap_i64 (return (i32.const 41))) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (return (i32.const 40))) + ) +)`); + +// ./test/core/return.wast:224 +assert_return(() => invoke($0, `type-i32`, []), []); + +// ./test/core/return.wast:225 +assert_return(() => invoke($0, `type-i64`, []), []); + +// ./test/core/return.wast:226 +assert_return(() => invoke($0, `type-f32`, []), []); + +// ./test/core/return.wast:227 +assert_return(() => invoke($0, `type-f64`, []), []); + +// ./test/core/return.wast:229 +assert_return(() => invoke($0, `type-i32-value`, []), [value("i32", 1)]); + +// ./test/core/return.wast:230 +assert_return(() => invoke($0, `type-i64-value`, []), [value("i64", 2n)]); + +// ./test/core/return.wast:231 +assert_return(() => invoke($0, `type-f32-value`, []), [value("f32", 3)]); + +// ./test/core/return.wast:232 +assert_return(() => invoke($0, `type-f64-value`, []), [value("f64", 4)]); + +// ./test/core/return.wast:234 +assert_return(() => invoke($0, `nullary`, []), []); + +// ./test/core/return.wast:235 +assert_return(() => invoke($0, `unary`, []), [value("f64", 3)]); + +// ./test/core/return.wast:237 +assert_return(() => invoke($0, `as-func-first`, []), [value("i32", 1)]); + +// ./test/core/return.wast:238 +assert_return(() => invoke($0, `as-func-mid`, []), [value("i32", 2)]); + +// ./test/core/return.wast:239 +assert_return(() => invoke($0, `as-func-last`, []), []); + +// ./test/core/return.wast:240 +assert_return(() => invoke($0, `as-func-value`, []), [value("i32", 3)]); + +// ./test/core/return.wast:242 +assert_return(() => invoke($0, `as-block-first`, []), []); + +// ./test/core/return.wast:243 +assert_return(() => invoke($0, `as-block-mid`, []), []); + +// ./test/core/return.wast:244 +assert_return(() => invoke($0, `as-block-last`, []), []); + +// ./test/core/return.wast:245 +assert_return(() => invoke($0, `as-block-value`, []), [value("i32", 2)]); + +// ./test/core/return.wast:247 +assert_return(() => invoke($0, `as-loop-first`, []), [value("i32", 3)]); + +// ./test/core/return.wast:248 +assert_return(() => invoke($0, `as-loop-mid`, []), [value("i32", 4)]); + +// ./test/core/return.wast:249 +assert_return(() => invoke($0, `as-loop-last`, []), [value("i32", 5)]); + +// ./test/core/return.wast:251 +assert_return(() => invoke($0, `as-br-value`, []), [value("i32", 9)]); + +// ./test/core/return.wast:253 +assert_return(() => invoke($0, `as-br_if-cond`, []), []); + +// ./test/core/return.wast:254 +assert_return(() => invoke($0, `as-br_if-value`, []), [value("i32", 8)]); + +// ./test/core/return.wast:255 +assert_return(() => invoke($0, `as-br_if-value-cond`, []), [value("i32", 9)]); + +// ./test/core/return.wast:257 +assert_return(() => invoke($0, `as-br_table-index`, []), [value("i64", 9n)]); + +// ./test/core/return.wast:258 +assert_return(() => invoke($0, `as-br_table-value`, []), [value("i32", 10)]); + +// ./test/core/return.wast:259 +assert_return(() => invoke($0, `as-br_table-value-index`, []), [value("i32", 11)]); + +// ./test/core/return.wast:261 +assert_return(() => invoke($0, `as-return-value`, []), [value("i64", 7n)]); + +// ./test/core/return.wast:263 +assert_return(() => invoke($0, `as-if-cond`, []), [value("i32", 2)]); + +// ./test/core/return.wast:264 +assert_return(() => invoke($0, `as-if-then`, [1, 6]), [value("i32", 3)]); + +// ./test/core/return.wast:265 +assert_return(() => invoke($0, `as-if-then`, [0, 6]), [value("i32", 6)]); + +// ./test/core/return.wast:266 +assert_return(() => invoke($0, `as-if-else`, [0, 6]), [value("i32", 4)]); + +// ./test/core/return.wast:267 +assert_return(() => invoke($0, `as-if-else`, [1, 6]), [value("i32", 6)]); + +// ./test/core/return.wast:269 +assert_return(() => invoke($0, `as-select-first`, [0, 6]), [value("i32", 5)]); + +// ./test/core/return.wast:270 +assert_return(() => invoke($0, `as-select-first`, [1, 6]), [value("i32", 5)]); + +// ./test/core/return.wast:271 +assert_return(() => invoke($0, `as-select-second`, [0, 6]), [value("i32", 6)]); + +// ./test/core/return.wast:272 +assert_return(() => invoke($0, `as-select-second`, [1, 6]), [value("i32", 6)]); + +// ./test/core/return.wast:273 +assert_return(() => invoke($0, `as-select-cond`, []), [value("i32", 7)]); + +// ./test/core/return.wast:275 +assert_return(() => invoke($0, `as-call-first`, []), [value("i32", 12)]); + +// ./test/core/return.wast:276 +assert_return(() => invoke($0, `as-call-mid`, []), [value("i32", 13)]); + +// ./test/core/return.wast:277 +assert_return(() => invoke($0, `as-call-last`, []), [value("i32", 14)]); + +// ./test/core/return.wast:279 +assert_return(() => invoke($0, `as-call_indirect-func`, []), [value("i32", 20)]); + +// ./test/core/return.wast:280 +assert_return(() => invoke($0, `as-call_indirect-first`, []), [value("i32", 21)]); + +// ./test/core/return.wast:281 +assert_return(() => invoke($0, `as-call_indirect-mid`, []), [value("i32", 22)]); + +// ./test/core/return.wast:282 +assert_return(() => invoke($0, `as-call_indirect-last`, []), [value("i32", 23)]); + +// ./test/core/return.wast:284 +assert_return(() => invoke($0, `as-local.set-value`, []), [value("i32", 17)]); + +// ./test/core/return.wast:285 +assert_return(() => invoke($0, `as-local.tee-value`, []), [value("i32", 1)]); + +// ./test/core/return.wast:286 +assert_return(() => invoke($0, `as-global.set-value`, []), [value("i32", 1)]); + +// ./test/core/return.wast:288 +assert_return(() => invoke($0, `as-load-address`, []), [value("f32", 1.7)]); + +// ./test/core/return.wast:289 +assert_return(() => invoke($0, `as-loadN-address`, []), [value("i64", 30n)]); + +// ./test/core/return.wast:291 +assert_return(() => invoke($0, `as-store-address`, []), [value("i32", 30)]); + +// ./test/core/return.wast:292 +assert_return(() => invoke($0, `as-store-value`, []), [value("i32", 31)]); + +// ./test/core/return.wast:293 +assert_return(() => invoke($0, `as-storeN-address`, []), [value("i32", 32)]); + +// ./test/core/return.wast:294 +assert_return(() => invoke($0, `as-storeN-value`, []), [value("i32", 33)]); + +// ./test/core/return.wast:296 +assert_return(() => invoke($0, `as-unary-operand`, []), [value("f32", 3.4)]); + +// ./test/core/return.wast:298 +assert_return(() => invoke($0, `as-binary-left`, []), [value("i32", 3)]); + +// ./test/core/return.wast:299 +assert_return(() => invoke($0, `as-binary-right`, []), [value("i64", 45n)]); + +// ./test/core/return.wast:301 +assert_return(() => invoke($0, `as-test-operand`, []), [value("i32", 44)]); + +// ./test/core/return.wast:303 +assert_return(() => invoke($0, `as-compare-left`, []), [value("i32", 43)]); + +// ./test/core/return.wast:304 +assert_return(() => invoke($0, `as-compare-right`, []), [value("i32", 42)]); + +// ./test/core/return.wast:306 +assert_return(() => invoke($0, `as-convert-operand`, []), [value("i32", 41)]); + +// ./test/core/return.wast:308 +assert_return(() => invoke($0, `as-memory.grow-size`, []), [value("i32", 40)]); + +// ./test/core/return.wast:310 +assert_invalid( + () => instantiate(`(module (func $$type-value-empty-vs-num (result i32) (return)))`), + `type mismatch`, +); + +// ./test/core/return.wast:314 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-block (result i32) + (i32.const 0) + (block (return)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:323 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-loop (result i32) + (i32.const 0) + (loop (return)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:332 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-then (result i32) + (i32.const 0) (i32.const 0) + (if (then (return))) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:341 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-else (result i32) + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (return))) (drop) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:350 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-br (result i32) + (i32.const 0) + (block (br 0 (return))) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:359 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-br_if (result i32) + (i32.const 0) + (block (br_if 0 (return) (i32.const 1))) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:368 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-br_table (result i32) + (i32.const 0) + (block (br_table 0 (return))) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:377 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-return (result i32) + (return (return)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:385 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-select (result i32) + (select (return) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:393 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-call (result i32) + (call 1 (return)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:402 +assert_invalid( + () => instantiate(`(module + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-value-empty-vs-num-in-call_indirect (result i32) + (block (result i32) + (call_indirect (type $$sig) + (return) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:417 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-local.set (result i32) + (local i32) + (local.set 0 (return)) (local.get 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:426 +assert_invalid( + () => instantiate(`(module + (func $$type-value-empty-vs-num-in-local.tee (result i32) + (local i32) + (local.tee 0 (return)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:435 +assert_invalid( + () => instantiate(`(module + (global $$x (mut i32) (i32.const 0)) + (func $$type-value-empty-vs-num-in-global.set (result i32) + (global.set $$x (return)) (global.get $$x) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:444 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-value-empty-vs-num-in-memory.grow (result i32) + (memory.grow (return)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:453 +assert_invalid( + () => instantiate(`(module + (memory 0) + (func $$type-value-empty-vs-num-in-load (result i32) + (i32.load (return)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:462 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-vs-num-in-store (result i32) + (i32.store (return) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return.wast:471 +assert_invalid( + () => instantiate(`(module (func $$type-value-void-vs-num (result f64) (return (nop))))`), + `type mismatch`, +); + +// ./test/core/return.wast:475 +assert_invalid( + () => instantiate(`(module (func $$type-value-num-vs-num (result f64) (return (i64.const 1))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_address.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_address.wast.js new file mode 100644 index 0000000000..c94be782b9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_address.wast.js @@ -0,0 +1,348 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_address.wast + +// ./test/core/simd/simd_address.wast:3 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\10\\11\\12\\13\\14\\15") + (data (offset (i32.const 65505)) "\\16\\17\\18\\19\\20\\21\\22\\23\\24\\25\\26\\27\\28\\29\\30\\31") + + (func (export "load_data_1") (param $$i i32) (result v128) + (v128.load offset=0 (local.get $$i)) ;; 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x10 0x11 0x12 0x13 0x14 0x15 + ) + (func (export "load_data_2") (param $$i i32) (result v128) + (v128.load align=1 (local.get $$i)) ;; 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x10 0x11 0x12 0x13 0x14 0x15 + ) + (func (export "load_data_3") (param $$i i32) (result v128) + (v128.load offset=1 align=1 (local.get $$i)) ;; 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x10 0x11 0x12 0x13 0x14 0x15 0x00 + ) + (func (export "load_data_4") (param $$i i32) (result v128) + (v128.load offset=2 align=1 (local.get $$i)) ;; 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x10 0x11 0x12 0x13 0x14 0x15 0x00 0x00 + ) + (func (export "load_data_5") (param $$i i32) (result v128) + (v128.load offset=15 align=1 (local.get $$i)) ;; 0x15 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 + ) + + (func (export "store_data_0") (result v128) + (v128.store offset=0 (i32.const 0) (v128.const f32x4 0 1 2 3)) + (v128.load offset=0 (i32.const 0)) + ) + (func (export "store_data_1") (result v128) + (v128.store align=1 (i32.const 0) (v128.const i32x4 0 1 2 3)) + (v128.load align=1 (i32.const 0)) + ) + (func (export "store_data_2") (result v128) + (v128.store offset=1 align=1 (i32.const 0) (v128.const i16x8 0 1 2 3 4 5 6 7)) + (v128.load offset=1 align=1 (i32.const 0)) + ) + (func (export "store_data_3") (result v128) + (v128.store offset=2 align=1 (i32.const 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)) + (v128.load offset=2 align=1 (i32.const 0)) + ) + (func (export "store_data_4") (result v128) + (v128.store offset=15 align=1 (i32.const 0) (v128.const i32x4 0 1 2 3)) + (v128.load offset=15 (i32.const 0)) + ) + (func (export "store_data_5") (result v128) + (v128.store offset=65520 align=1 (i32.const 0) (v128.const i32x4 0 1 2 3)) + (v128.load offset=65520 (i32.const 0)) + ) + (func (export "store_data_6") (param $$i i32) + (v128.store offset=1 align=1 (local.get $$i) (v128.const i32x4 0 1 2 3)) + ) +)`); + +// ./test/core/simd/simd_address.wast:53 +assert_return( + () => invoke($0, `load_data_1`, [0]), + [i32x4([0x3020100, 0x7060504, 0x11100908, 0x15141312])], +); + +// ./test/core/simd/simd_address.wast:54 +assert_return( + () => invoke($0, `load_data_2`, [0]), + [i32x4([0x3020100, 0x7060504, 0x11100908, 0x15141312])], +); + +// ./test/core/simd/simd_address.wast:55 +assert_return( + () => invoke($0, `load_data_3`, [0]), + [i32x4([0x4030201, 0x8070605, 0x12111009, 0x151413])], +); + +// ./test/core/simd/simd_address.wast:56 +assert_return(() => invoke($0, `load_data_4`, [0]), [i32x4([0x5040302, 0x9080706, 0x13121110, 0x1514])]); + +// ./test/core/simd/simd_address.wast:57 +assert_return(() => invoke($0, `load_data_5`, [0]), [i32x4([0x15, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_address.wast:59 +assert_return( + () => invoke($0, `load_data_1`, [0]), + [i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0x1110, 0x1312, 0x1514])], +); + +// ./test/core/simd/simd_address.wast:60 +assert_return( + () => invoke($0, `load_data_2`, [0]), + [i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0x1110, 0x1312, 0x1514])], +); + +// ./test/core/simd/simd_address.wast:61 +assert_return( + () => invoke($0, `load_data_3`, [0]), + [i16x8([0x201, 0x403, 0x605, 0x807, 0x1009, 0x1211, 0x1413, 0x15])], +); + +// ./test/core/simd/simd_address.wast:62 +assert_return( + () => invoke($0, `load_data_4`, [0]), + [i16x8([0x302, 0x504, 0x706, 0x908, 0x1110, 0x1312, 0x1514, 0x0])], +); + +// ./test/core/simd/simd_address.wast:63 +assert_return(() => invoke($0, `load_data_5`, [0]), [i16x8([0x15, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_address.wast:65 +assert_return( + () => invoke($0, `load_data_1`, [0]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15]), + ], +); + +// ./test/core/simd/simd_address.wast:66 +assert_return( + () => invoke($0, `load_data_2`, [0]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15]), + ], +); + +// ./test/core/simd/simd_address.wast:67 +assert_return( + () => invoke($0, `load_data_3`, [0]), + [ + i8x16([0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x0]), + ], +); + +// ./test/core/simd/simd_address.wast:68 +assert_return( + () => invoke($0, `load_data_4`, [0]), + [ + i8x16([0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_address.wast:69 +assert_return( + () => invoke($0, `load_data_5`, [0]), + [ + i8x16([0x15, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_address.wast:71 +assert_return( + () => invoke($0, `load_data_1`, [65505]), + [i32x4([0x19181716, 0x23222120, 0x27262524, 0x31302928])], +); + +// ./test/core/simd/simd_address.wast:72 +assert_return( + () => invoke($0, `load_data_2`, [65505]), + [i32x4([0x19181716, 0x23222120, 0x27262524, 0x31302928])], +); + +// ./test/core/simd/simd_address.wast:73 +assert_return( + () => invoke($0, `load_data_3`, [65505]), + [i32x4([0x20191817, 0x24232221, 0x28272625, 0x313029])], +); + +// ./test/core/simd/simd_address.wast:74 +assert_return( + () => invoke($0, `load_data_4`, [65505]), + [i32x4([0x21201918, 0x25242322, 0x29282726, 0x3130])], +); + +// ./test/core/simd/simd_address.wast:75 +assert_return(() => invoke($0, `load_data_5`, [65505]), [i32x4([0x31, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_address.wast:77 +assert_return( + () => invoke($0, `load_data_1`, [65505]), + [i16x8([0x1716, 0x1918, 0x2120, 0x2322, 0x2524, 0x2726, 0x2928, 0x3130])], +); + +// ./test/core/simd/simd_address.wast:78 +assert_return( + () => invoke($0, `load_data_2`, [65505]), + [i16x8([0x1716, 0x1918, 0x2120, 0x2322, 0x2524, 0x2726, 0x2928, 0x3130])], +); + +// ./test/core/simd/simd_address.wast:79 +assert_return( + () => invoke($0, `load_data_3`, [65505]), + [i16x8([0x1817, 0x2019, 0x2221, 0x2423, 0x2625, 0x2827, 0x3029, 0x31])], +); + +// ./test/core/simd/simd_address.wast:80 +assert_return( + () => invoke($0, `load_data_4`, [65505]), + [i16x8([0x1918, 0x2120, 0x2322, 0x2524, 0x2726, 0x2928, 0x3130, 0x0])], +); + +// ./test/core/simd/simd_address.wast:81 +assert_return( + () => invoke($0, `load_data_5`, [65505]), + [i16x8([0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_address.wast:83 +assert_return( + () => invoke($0, `load_data_1`, [65505]), + [ + i8x16([0x16, 0x17, 0x18, 0x19, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x30, 0x31]), + ], +); + +// ./test/core/simd/simd_address.wast:84 +assert_return( + () => invoke($0, `load_data_2`, [65505]), + [ + i8x16([0x16, 0x17, 0x18, 0x19, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x30, 0x31]), + ], +); + +// ./test/core/simd/simd_address.wast:85 +assert_return( + () => invoke($0, `load_data_3`, [65505]), + [ + i8x16([0x17, 0x18, 0x19, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x30, 0x31, 0x0]), + ], +); + +// ./test/core/simd/simd_address.wast:86 +assert_return( + () => invoke($0, `load_data_4`, [65505]), + [ + i8x16([0x18, 0x19, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x30, 0x31, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_address.wast:87 +assert_return( + () => invoke($0, `load_data_5`, [65505]), + [ + i8x16([0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_address.wast:89 +assert_trap(() => invoke($0, `load_data_3`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_address.wast:90 +assert_trap(() => invoke($0, `load_data_5`, [65506]), `out of bounds memory access`); + +// ./test/core/simd/simd_address.wast:92 +assert_return( + () => invoke($0, `store_data_0`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_address.wast:93 +assert_return(() => invoke($0, `store_data_1`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_address.wast:94 +assert_return(() => invoke($0, `store_data_2`, []), [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])]); + +// ./test/core/simd/simd_address.wast:95 +assert_return( + () => invoke($0, `store_data_3`, []), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_address.wast:96 +assert_return(() => invoke($0, `store_data_4`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_address.wast:97 +assert_return(() => invoke($0, `store_data_5`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_address.wast:99 +assert_trap(() => invoke($0, `store_data_6`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_address.wast:100 +assert_trap(() => invoke($0, `store_data_6`, [65535]), `out of bounds memory access`); + +// ./test/core/simd/simd_address.wast:104 +let $1 = instantiate(`(module + (memory 1) + (func (export "v128.load_offset_65521") + (drop (v128.load offset=65521 (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_address.wast:110 +assert_trap(() => invoke($1, `v128.load_offset_65521`, []), `out of bounds memory access`); + +// ./test/core/simd/simd_address.wast:112 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (v128.load offset=-1 (i32.const 0))) ) `), + `unknown operator`, +); + +// ./test/core/simd/simd_address.wast:122 +let $2 = instantiate(`(module + (memory 1) + (func (export "v128.store_offset_65521") + (v128.store offset=65521 (i32.const 0) (v128.const i32x4 0 0 0 0)) + ) +)`); + +// ./test/core/simd/simd_address.wast:128 +assert_trap(() => invoke($2, `v128.store_offset_65521`, []), `out of bounds memory access`); + +// ./test/core/simd/simd_address.wast:130 +assert_malformed( + () => instantiate(`(memory 1) (func (v128.store offset=-1 (i32.const 0) (v128.const i32x4 0 0 0 0)) ) `), + `unknown operator`, +); + +// ./test/core/simd/simd_address.wast:143 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (v128.load offset=4294967296 (i32.const 0)))) `), + `i32 constant`, +); + +// ./test/core/simd/simd_address.wast:151 +assert_malformed( + () => instantiate(`(memory 1) (func (v128.store offset=4294967296 (i32.const 0) (v128.const i32x4 0 0 0 0))) `), + `i32 constant`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_bit_shift.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_bit_shift.wast.js new file mode 100644 index 0000000000..485ec62861 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_bit_shift.wast.js @@ -0,0 +1,2102 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_bit_shift.wast + +// ./test/core/simd/simd_bit_shift.wast:3 +let $0 = instantiate(`(module + (func (export "i8x16.shl") (param $$0 v128) (param $$1 i32) (result v128) (i8x16.shl (local.get $$0) (local.get $$1))) + (func (export "i8x16.shr_s") (param $$0 v128) (param $$1 i32) (result v128) (i8x16.shr_s (local.get $$0) (local.get $$1))) + (func (export "i8x16.shr_u") (param $$0 v128) (param $$1 i32) (result v128) (i8x16.shr_u (local.get $$0) (local.get $$1))) + + (func (export "i16x8.shl") (param $$0 v128) (param $$1 i32) (result v128) (i16x8.shl (local.get $$0) (local.get $$1))) + (func (export "i16x8.shr_s") (param $$0 v128) (param $$1 i32) (result v128) (i16x8.shr_s (local.get $$0) (local.get $$1))) + (func (export "i16x8.shr_u") (param $$0 v128) (param $$1 i32) (result v128) (i16x8.shr_u (local.get $$0) (local.get $$1))) + + (func (export "i32x4.shl") (param $$0 v128) (param $$1 i32) (result v128) (i32x4.shl (local.get $$0) (local.get $$1))) + (func (export "i32x4.shr_s") (param $$0 v128) (param $$1 i32) (result v128) (i32x4.shr_s (local.get $$0) (local.get $$1))) + (func (export "i32x4.shr_u") (param $$0 v128) (param $$1 i32) (result v128) (i32x4.shr_u (local.get $$0) (local.get $$1))) + + (func (export "i64x2.shl") (param $$0 v128) (param $$1 i32) (result v128) (i64x2.shl (local.get $$0) (local.get $$1))) + (func (export "i64x2.shr_s") (param $$0 v128) (param $$1 i32) (result v128) (i64x2.shr_s (local.get $$0) (local.get $$1))) + (func (export "i64x2.shr_u") (param $$0 v128) (param $$1 i32) (result v128) (i64x2.shr_u (local.get $$0) (local.get $$1))) + + ;; shifting by a constant amount + ;; i8x16 + (func (export "i8x16.shl_1") (param $$0 v128) (result v128) (i8x16.shl (local.get $$0) (i32.const 1))) + (func (export "i8x16.shr_u_8") (param $$0 v128) (result v128) (i8x16.shr_u (local.get $$0) (i32.const 8))) + (func (export "i8x16.shr_s_9") (param $$0 v128) (result v128) (i8x16.shr_s (local.get $$0) (i32.const 9))) + + ;; i16x8 + (func (export "i16x8.shl_1") (param $$0 v128) (result v128) (i16x8.shl (local.get $$0) (i32.const 1))) + (func (export "i16x8.shr_u_16") (param $$0 v128) (result v128) (i16x8.shr_u (local.get $$0) (i32.const 16))) + (func (export "i16x8.shr_s_17") (param $$0 v128) (result v128) (i16x8.shr_s (local.get $$0) (i32.const 17))) + + ;; i32x4 + (func (export "i32x4.shl_1") (param $$0 v128) (result v128) (i32x4.shl (local.get $$0) (i32.const 1))) + (func (export "i32x4.shr_u_32") (param $$0 v128) (result v128) (i32x4.shr_u (local.get $$0) (i32.const 32))) + (func (export "i32x4.shr_s_33") (param $$0 v128) (result v128) (i32x4.shr_s (local.get $$0) (i32.const 33))) + + ;; i64x2 + (func (export "i64x2.shl_1") (param $$0 v128) (result v128) (i64x2.shl (local.get $$0) (i32.const 1))) + (func (export "i64x2.shr_u_64") (param $$0 v128) (result v128) (i64x2.shr_u (local.get $$0) (i32.const 64))) + (func (export "i64x2.shr_s_65") (param $$0 v128) (result v128) (i64x2.shr_s (local.get $$0) (i32.const 65))) +)`); + +// ./test/core/simd/simd_bit_shift.wast:44 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x80, 0xc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd]), + 1, + ]), + [ + i8x16([0x0, 0x80, 0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:47 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff, 0xa0, 0xb0, 0xc0, 0xd0, 0xe0, 0xf0, 0xa, 0xb, 0xc, 0xd]), + 4, + ]), + [ + i8x16([0xa0, 0xb0, 0xc0, 0xd0, 0xe0, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xb0, 0xc0, 0xd0]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:51 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 8, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:54 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 32, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:57 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 128, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:60 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 256, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:64 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x80, 0xc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd]), + 9, + ]), + [ + i8x16([0x0, 0x80, 0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:67 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 9, + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:70 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 17, + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:73 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 33, + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:76 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 129, + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:79 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 257, + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:82 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 513, + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:85 +assert_return( + () => invoke($0, `i8x16.shl`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 514, + ]), + [ + i8x16([0x0, 0x4, 0x8, 0xc, 0x10, 0x14, 0x18, 0x1c, 0x20, 0x24, 0x28, 0x2c, 0x30, 0x34, 0x38, 0x3c]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:90 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x80, 0xc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd]), + 1, + ]), + [ + i8x16([0x40, 0x60, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:93 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff, 0xa0, 0xb0, 0xc0, 0xd0, 0xe0, 0xf0, 0xa, 0xb, 0xc, 0xd]), + 4, + ]), + [ + i8x16([0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:97 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 8, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:100 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 32, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:103 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 128, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:106 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 256, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:110 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x80, 0xc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd]), + 9, + ]), + [ + i8x16([0x40, 0x60, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:113 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 9, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:116 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 17, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:119 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 33, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:122 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 129, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:125 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 257, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:128 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 513, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:131 +assert_return( + () => invoke($0, `i8x16.shr_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 514, + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:136 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x80, 0xc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd]), + 1, + ]), + [ + i8x16([0xc0, 0xe0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:139 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff, 0xa0, 0xb0, 0xc0, 0xd0, 0xe0, 0xf0, 0xa, 0xb, 0xc, 0xd]), + 4, + ]), + [ + i8x16([0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:143 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 8, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:146 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 32, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:149 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 128, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:152 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 256, + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:156 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x80, 0xc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd]), + 9, + ]), + [ + i8x16([0xc0, 0xe0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:159 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 9, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:162 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 17, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:165 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 33, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:168 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 129, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:171 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 257, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:174 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 513, + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:177 +assert_return( + () => invoke($0, `i8x16.shr_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 514, + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:181 +assert_return( + () => invoke($0, `i8x16.shl_1`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:183 +assert_return( + () => invoke($0, `i8x16.shr_u_8`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:185 +assert_return( + () => invoke($0, `i8x16.shr_s_9`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [ + i8x16([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7]), + ], +); + +// ./test/core/simd/simd_bit_shift.wast:190 +assert_return( + () => invoke($0, `i16x8.shl`, [ + i16x8([0xff80, 0xffc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5]), + 1, + ]), + [i16x8([0xff00, 0xff80, 0x0, 0x2, 0x4, 0x6, 0x8, 0xa])], +); + +// ./test/core/simd/simd_bit_shift.wast:193 +assert_return( + () => invoke($0, `i16x8.shl`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + 2, + ]), + [i16x8([0xc0e4, 0xc0e4, 0xc0e4, 0xc0e4, 0xc0e4, 0xc0e4, 0xc0e4, 0xc0e4])], +); + +// ./test/core/simd/simd_bit_shift.wast:196 +assert_return( + () => invoke($0, `i16x8.shl`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + 2, + ]), + [i16x8([0x48d0, 0x48d0, 0x48d0, 0x48d0, 0x48d0, 0x48d0, 0x48d0, 0x48d0])], +); + +// ./test/core/simd/simd_bit_shift.wast:199 +assert_return( + () => invoke($0, `i16x8.shl`, [ + i16x8([0xaabb, 0xccdd, 0xeeff, 0xa0b0, 0xc0d0, 0xe0f0, 0xa0b, 0xc0d]), + 4, + ]), + [i16x8([0xabb0, 0xcdd0, 0xeff0, 0xb00, 0xd00, 0xf00, 0xa0b0, 0xc0d0])], +); + +// ./test/core/simd/simd_bit_shift.wast:202 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 8]), + [i16x8([0x0, 0x100, 0x200, 0x300, 0x400, 0x500, 0x600, 0x700])], +); + +// ./test/core/simd/simd_bit_shift.wast:206 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 32]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:209 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 128]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:212 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 256]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:216 +assert_return( + () => invoke($0, `i16x8.shl`, [ + i16x8([0xff80, 0xffc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5]), + 17, + ]), + [i16x8([0xff00, 0xff80, 0x0, 0x2, 0x4, 0x6, 0x8, 0xa])], +); + +// ./test/core/simd/simd_bit_shift.wast:219 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 17]), + [i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe])], +); + +// ./test/core/simd/simd_bit_shift.wast:222 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 33]), + [i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe])], +); + +// ./test/core/simd/simd_bit_shift.wast:225 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 129]), + [i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe])], +); + +// ./test/core/simd/simd_bit_shift.wast:228 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 257]), + [i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe])], +); + +// ./test/core/simd/simd_bit_shift.wast:231 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 513]), + [i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe])], +); + +// ./test/core/simd/simd_bit_shift.wast:234 +assert_return( + () => invoke($0, `i16x8.shl`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 514]), + [i16x8([0x0, 0x4, 0x8, 0xc, 0x10, 0x14, 0x18, 0x1c])], +); + +// ./test/core/simd/simd_bit_shift.wast:240 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0xff80, 0xffc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5]), + 1, + ]), + [i16x8([0x7fc0, 0x7fe0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2])], +); + +// ./test/core/simd/simd_bit_shift.wast:243 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + 2, + ]), + [i16x8([0xc0e, 0xc0e, 0xc0e, 0xc0e, 0xc0e, 0xc0e, 0xc0e, 0xc0e])], +); + +// ./test/core/simd/simd_bit_shift.wast:246 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab]), + 2, + ]), + [i16x8([0x242a, 0x242a, 0x242a, 0x242a, 0x242a, 0x242a, 0x242a, 0x242a])], +); + +// ./test/core/simd/simd_bit_shift.wast:249 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0xaabb, 0xccdd, 0xeeff, 0xa0b0, 0xc0d0, 0xe0f0, 0xa0b, 0xc0d]), + 4, + ]), + [i16x8([0xaab, 0xccd, 0xeef, 0xa0b, 0xc0d, 0xe0f, 0xa0, 0xc0])], +); + +// ./test/core/simd/simd_bit_shift.wast:252 +assert_return( + () => invoke($0, `i16x8.shr_u`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 8]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bit_shift.wast:256 +assert_return( + () => invoke($0, `i16x8.shr_u`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 32]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:259 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 128, + ]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:262 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 256, + ]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:266 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0xff80, 0xffc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5]), + 17, + ]), + [i16x8([0x7fc0, 0x7fe0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2])], +); + +// ./test/core/simd/simd_bit_shift.wast:269 +assert_return( + () => invoke($0, `i16x8.shr_u`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 17]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:272 +assert_return( + () => invoke($0, `i16x8.shr_u`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 33]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:275 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 129, + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:278 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 257, + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:281 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 513, + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:284 +assert_return( + () => invoke($0, `i16x8.shr_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 514, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_bit_shift.wast:290 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0xff80, 0xffc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5]), + 1, + ]), + [i16x8([0xffc0, 0xffe0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2])], +); + +// ./test/core/simd/simd_bit_shift.wast:293 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + 2, + ]), + [i16x8([0xc0e, 0xc0e, 0xc0e, 0xc0e, 0xc0e, 0xc0e, 0xc0e, 0xc0e])], +); + +// ./test/core/simd/simd_bit_shift.wast:296 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab]), + 2, + ]), + [i16x8([0xe42a, 0xe42a, 0xe42a, 0xe42a, 0xe42a, 0xe42a, 0xe42a, 0xe42a])], +); + +// ./test/core/simd/simd_bit_shift.wast:299 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0xaabb, 0xccdd, 0xeeff, 0xa0b0, 0xc0d0, 0xe0f0, 0xa0b, 0xc0d]), + 4, + ]), + [i16x8([0xfaab, 0xfccd, 0xfeef, 0xfa0b, 0xfc0d, 0xfe0f, 0xa0, 0xc0])], +); + +// ./test/core/simd/simd_bit_shift.wast:302 +assert_return( + () => invoke($0, `i16x8.shr_s`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 8]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bit_shift.wast:306 +assert_return( + () => invoke($0, `i16x8.shr_s`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 32]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:309 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 128, + ]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:312 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 256, + ]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:316 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0xff80, 0xffc0, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5]), + 17, + ]), + [i16x8([0xffc0, 0xffe0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2])], +); + +// ./test/core/simd/simd_bit_shift.wast:319 +assert_return( + () => invoke($0, `i16x8.shr_s`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 17]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:322 +assert_return( + () => invoke($0, `i16x8.shr_s`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), 33]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:325 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 129, + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:328 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 257, + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:331 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 513, + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:334 +assert_return( + () => invoke($0, `i16x8.shr_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + 514, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_bit_shift.wast:339 +assert_return( + () => invoke($0, `i16x8.shl_1`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])]), + [i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe])], +); + +// ./test/core/simd/simd_bit_shift.wast:341 +assert_return( + () => invoke($0, `i16x8.shr_u_16`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:343 +assert_return( + () => invoke($0, `i16x8.shr_s_17`, [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:348 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x80000000, 0xffff8000, 0x0, 0xa0b0c0d]), 1]), + [i32x4([0x0, 0xffff0000, 0x0, 0x1416181a])], +); + +// ./test/core/simd/simd_bit_shift.wast:351 +assert_return( + () => invoke($0, `i32x4.shl`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + 2, + ]), + [i32x4([0x26580b48, 0x26580b48, 0x26580b48, 0x26580b48])], +); + +// ./test/core/simd/simd_bit_shift.wast:354 +assert_return( + () => invoke($0, `i32x4.shl`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + 2, + ]), + [i32x4([0x48d159e0, 0x48d159e0, 0x48d159e0, 0x48d159e0])], +); + +// ./test/core/simd/simd_bit_shift.wast:357 +assert_return( + () => invoke($0, `i32x4.shl`, [ + i32x4([0xaabbccdd, 0xeeffa0b0, 0xc0d0e0f0, 0xa0b0c0d]), + 4, + ]), + [i32x4([0xabbccdd0, 0xeffa0b00, 0xd0e0f00, 0xa0b0c0d0])], +); + +// ./test/core/simd/simd_bit_shift.wast:360 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 8]), + [i32x4([0x0, 0x100, 0xe00, 0xf00])], +); + +// ./test/core/simd/simd_bit_shift.wast:364 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 32]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:367 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 128]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:370 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 256]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:374 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x80000000, 0xffff8000, 0x0, 0xa0b0c0d]), 33]), + [i32x4([0x0, 0xffff0000, 0x0, 0x1416181a])], +); + +// ./test/core/simd/simd_bit_shift.wast:377 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 33]), + [i32x4([0x0, 0x2, 0x1c, 0x1e])], +); + +// ./test/core/simd/simd_bit_shift.wast:380 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 65]), + [i32x4([0x0, 0x2, 0x1c, 0x1e])], +); + +// ./test/core/simd/simd_bit_shift.wast:383 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 129]), + [i32x4([0x0, 0x2, 0x1c, 0x1e])], +); + +// ./test/core/simd/simd_bit_shift.wast:386 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 257]), + [i32x4([0x0, 0x2, 0x1c, 0x1e])], +); + +// ./test/core/simd/simd_bit_shift.wast:389 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 513]), + [i32x4([0x0, 0x2, 0x1c, 0x1e])], +); + +// ./test/core/simd/simd_bit_shift.wast:392 +assert_return( + () => invoke($0, `i32x4.shl`, [i32x4([0x0, 0x1, 0xe, 0xf]), 514]), + [i32x4([0x0, 0x4, 0x38, 0x3c])], +); + +// ./test/core/simd/simd_bit_shift.wast:398 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x80000000, 0xffff8000, 0xc, 0xd]), 1]), + [i32x4([0x40000000, 0x7fffc000, 0x6, 0x6])], +); + +// ./test/core/simd/simd_bit_shift.wast:401 +assert_return( + () => invoke($0, `i32x4.shr_u`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + 2, + ]), + [i32x4([0x126580b4, 0x126580b4, 0x126580b4, 0x126580b4])], +); + +// ./test/core/simd/simd_bit_shift.wast:404 +assert_return( + () => invoke($0, `i32x4.shr_u`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + 2, + ]), + [i32x4([0x242af37b, 0x242af37b, 0x242af37b, 0x242af37b])], +); + +// ./test/core/simd/simd_bit_shift.wast:407 +assert_return( + () => invoke($0, `i32x4.shr_u`, [ + i32x4([0xaabbccdd, 0xeeffa0b0, 0xc0d0e0f0, 0xa0b0c0d]), + 4, + ]), + [i32x4([0xaabbccd, 0xeeffa0b, 0xc0d0e0f, 0xa0b0c0])], +); + +// ./test/core/simd/simd_bit_shift.wast:410 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 8]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bit_shift.wast:414 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 32]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:417 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 128]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:420 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 256]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:424 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x80000000, 0xffff8000, 0xc, 0xd]), 33]), + [i32x4([0x40000000, 0x7fffc000, 0x6, 0x6])], +); + +// ./test/core/simd/simd_bit_shift.wast:427 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 33]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:430 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 65]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:433 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 129]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:436 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 257]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:439 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 513]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:442 +assert_return( + () => invoke($0, `i32x4.shr_u`, [i32x4([0x0, 0x1, 0xe, 0xf]), 514]), + [i32x4([0x0, 0x0, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:448 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x80000000, 0xffff8000, 0xc, 0xd]), 1]), + [i32x4([0xc0000000, 0xffffc000, 0x6, 0x6])], +); + +// ./test/core/simd/simd_bit_shift.wast:451 +assert_return( + () => invoke($0, `i32x4.shr_s`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + 2, + ]), + [i32x4([0x126580b4, 0x126580b4, 0x126580b4, 0x126580b4])], +); + +// ./test/core/simd/simd_bit_shift.wast:454 +assert_return( + () => invoke($0, `i32x4.shr_s`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + 2, + ]), + [i32x4([0xe42af37b, 0xe42af37b, 0xe42af37b, 0xe42af37b])], +); + +// ./test/core/simd/simd_bit_shift.wast:457 +assert_return( + () => invoke($0, `i32x4.shr_s`, [ + i32x4([0xaabbccdd, 0xeeffa0b0, 0xc0d0e0f0, 0xa0b0c0d]), + 4, + ]), + [i32x4([0xfaabbccd, 0xfeeffa0b, 0xfc0d0e0f, 0xa0b0c0])], +); + +// ./test/core/simd/simd_bit_shift.wast:461 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 8]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bit_shift.wast:464 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 32]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:467 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 128]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:470 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 256]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:474 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x80000000, 0xffff8000, 0xc, 0xd]), 33]), + [i32x4([0xc0000000, 0xffffc000, 0x6, 0x6])], +); + +// ./test/core/simd/simd_bit_shift.wast:477 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 33]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:480 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 65]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:483 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 129]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:486 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 257]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:489 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 513]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:492 +assert_return( + () => invoke($0, `i32x4.shr_s`, [i32x4([0x0, 0x1, 0xe, 0xf]), 514]), + [i32x4([0x0, 0x0, 0x3, 0x3])], +); + +// ./test/core/simd/simd_bit_shift.wast:497 +assert_return( + () => invoke($0, `i32x4.shl_1`, [i32x4([0x0, 0x1, 0xe, 0xf])]), + [i32x4([0x0, 0x2, 0x1c, 0x1e])], +); + +// ./test/core/simd/simd_bit_shift.wast:499 +assert_return( + () => invoke($0, `i32x4.shr_u_32`, [i32x4([0x0, 0x1, 0xe, 0xf])]), + [i32x4([0x0, 0x1, 0xe, 0xf])], +); + +// ./test/core/simd/simd_bit_shift.wast:501 +assert_return( + () => invoke($0, `i32x4.shr_s_33`, [i32x4([0x0, 0x1, 0xe, 0xf])]), + [i32x4([0x0, 0x0, 0x7, 0x7])], +); + +// ./test/core/simd/simd_bit_shift.wast:506 +assert_return( + () => invoke($0, `i64x2.shl`, [i64x2([0x8000000000000000n, 0xffffffff80000000n]), 1]), + [i64x2([0x0n, 0xffffffff00000000n])], +); + +// ./test/core/simd/simd_bit_shift.wast:509 +assert_return( + () => invoke($0, `i64x2.shl`, [i64x2([0x112210f47de98115n, 0x112210f47de98115n]), 2]), + [i64x2([0x448843d1f7a60454n, 0x448843d1f7a60454n])], +); + +// ./test/core/simd/simd_bit_shift.wast:512 +assert_return( + () => invoke($0, `i64x2.shl`, [i64x2([0x1234567890abcdefn, 0x1234567890abcdefn]), 2]), + [i64x2([0x48d159e242af37bcn, 0x48d159e242af37bcn])], +); + +// ./test/core/simd/simd_bit_shift.wast:515 +assert_return( + () => invoke($0, `i64x2.shl`, [i64x2([0xaabbccddeeffa0b0n, 0xc0d0e0f00a0b0c0dn]), 4]), + [i64x2([0xabbccddeeffa0b00n, 0xd0e0f00a0b0c0d0n])], +); + +// ./test/core/simd/simd_bit_shift.wast:518 +assert_return( + () => invoke($0, `i64x2.shl`, [i64x2([0xaabbccddeeffa0b0n, 0xc0d0e0f00a0b0c0dn]), 8]), + [i64x2([0xbbccddeeffa0b000n, 0xd0e0f00a0b0c0d00n])], +); + +// ./test/core/simd/simd_bit_shift.wast:521 +assert_return(() => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 16]), [i64x2([0x10000n, 0xf0000n])]); + +// ./test/core/simd/simd_bit_shift.wast:524 +assert_return( + () => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 32]), + [i64x2([0x100000000n, 0xf00000000n])], +); + +// ./test/core/simd/simd_bit_shift.wast:528 +assert_return(() => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 128]), [i64x2([0x1n, 0xfn])]); + +// ./test/core/simd/simd_bit_shift.wast:531 +assert_return(() => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 256]), [i64x2([0x1n, 0xfn])]); + +// ./test/core/simd/simd_bit_shift.wast:535 +assert_return(() => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 65]), [i64x2([0x2n, 0x1en])]); + +// ./test/core/simd/simd_bit_shift.wast:538 +assert_return(() => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 129]), [i64x2([0x2n, 0x1en])]); + +// ./test/core/simd/simd_bit_shift.wast:541 +assert_return(() => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 257]), [i64x2([0x2n, 0x1en])]); + +// ./test/core/simd/simd_bit_shift.wast:544 +assert_return(() => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 513]), [i64x2([0x2n, 0x1en])]); + +// ./test/core/simd/simd_bit_shift.wast:547 +assert_return(() => invoke($0, `i64x2.shl`, [i64x2([0x1n, 0xfn]), 514]), [i64x2([0x4n, 0x3cn])]); + +// ./test/core/simd/simd_bit_shift.wast:553 +assert_return( + () => invoke($0, `i64x2.shr_u`, [ + i64x2([0x8000000000000000n, 0xffffffff80000000n]), + 1, + ]), + [i64x2([0x4000000000000000n, 0x7fffffffc0000000n])], +); + +// ./test/core/simd/simd_bit_shift.wast:556 +assert_return( + () => invoke($0, `i64x2.shr_u`, [ + i64x2([0x112210f47de98115n, 0x112210f47de98115n]), + 2, + ]), + [i64x2([0x448843d1f7a6045n, 0x448843d1f7a6045n])], +); + +// ./test/core/simd/simd_bit_shift.wast:559 +assert_return( + () => invoke($0, `i64x2.shr_u`, [ + i64x2([0x90abcdef87654321n, 0x90abcdef87654321n]), + 2, + ]), + [i64x2([0x242af37be1d950c8n, 0x242af37be1d950c8n])], +); + +// ./test/core/simd/simd_bit_shift.wast:562 +assert_return( + () => invoke($0, `i64x2.shr_u`, [ + i64x2([0xaabbccddeeffa0b0n, 0xc0d0e0f00a0b0c0dn]), + 4, + ]), + [i64x2([0xaabbccddeeffa0bn, 0xc0d0e0f00a0b0c0n])], +); + +// ./test/core/simd/simd_bit_shift.wast:565 +assert_return( + () => invoke($0, `i64x2.shr_u`, [ + i64x2([0xaabbccddeeffa0b0n, 0xc0d0e0f00a0b0c0dn]), + 8, + ]), + [i64x2([0xaabbccddeeffa0n, 0xc0d0e0f00a0b0cn])], +); + +// ./test/core/simd/simd_bit_shift.wast:568 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x1n, 0xfn]), 16]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_bit_shift.wast:571 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x1n, 0xfn]), 32]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_bit_shift.wast:575 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x1n, 0xfn]), 128]), [i64x2([0x1n, 0xfn])]); + +// ./test/core/simd/simd_bit_shift.wast:578 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x1n, 0xfn]), 256]), [i64x2([0x1n, 0xfn])]); + +// ./test/core/simd/simd_bit_shift.wast:582 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x1n, 0xfn]), 65]), [i64x2([0x0n, 0x7n])]); + +// ./test/core/simd/simd_bit_shift.wast:585 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x1n, 0xfn]), 129]), [i64x2([0x0n, 0x7n])]); + +// ./test/core/simd/simd_bit_shift.wast:588 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x1n, 0xfn]), 257]), [i64x2([0x0n, 0x7n])]); + +// ./test/core/simd/simd_bit_shift.wast:591 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x1n, 0xfn]), 513]), [i64x2([0x0n, 0x7n])]); + +// ./test/core/simd/simd_bit_shift.wast:594 +assert_return(() => invoke($0, `i64x2.shr_u`, [i64x2([0x0n, 0xfn]), 514]), [i64x2([0x0n, 0x3n])]); + +// ./test/core/simd/simd_bit_shift.wast:600 +assert_return( + () => invoke($0, `i64x2.shr_s`, [ + i64x2([0x8000000000000000n, 0xffffffff80000000n]), + 1, + ]), + [i64x2([0xc000000000000000n, 0xffffffffc0000000n])], +); + +// ./test/core/simd/simd_bit_shift.wast:603 +assert_return( + () => invoke($0, `i64x2.shr_s`, [ + i64x2([0x112210f47de98115n, 0x112210f47de98115n]), + 2, + ]), + [i64x2([0x448843d1f7a6045n, 0x448843d1f7a6045n])], +); + +// ./test/core/simd/simd_bit_shift.wast:606 +assert_return( + () => invoke($0, `i64x2.shr_s`, [ + i64x2([0x90abcdef87654321n, 0x90abcdef87654321n]), + 2, + ]), + [i64x2([0xe42af37be1d950c8n, 0xe42af37be1d950c8n])], +); + +// ./test/core/simd/simd_bit_shift.wast:609 +assert_return( + () => invoke($0, `i64x2.shr_s`, [ + i64x2([0xaabbccddeeffa0b0n, 0xc0d0e0f00a0b0c0dn]), + 4, + ]), + [i64x2([0xfaabbccddeeffa0bn, 0xfc0d0e0f00a0b0c0n])], +); + +// ./test/core/simd/simd_bit_shift.wast:612 +assert_return( + () => invoke($0, `i64x2.shr_s`, [ + i64x2([0xffaabbccddeeffa0n, 0xc0d0e0f00a0b0c0dn]), + 8, + ]), + [i64x2([0xffffaabbccddeeffn, 0xffc0d0e0f00a0b0cn])], +); + +// ./test/core/simd/simd_bit_shift.wast:615 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0x1n, 0xfn]), 16]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_bit_shift.wast:618 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0x1n, 0xfn]), 32]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_bit_shift.wast:622 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0x1n, 0xfn]), 128]), [i64x2([0x1n, 0xfn])]); + +// ./test/core/simd/simd_bit_shift.wast:625 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0x1n, 0xfn]), 256]), [i64x2([0x1n, 0xfn])]); + +// ./test/core/simd/simd_bit_shift.wast:629 +assert_return( + () => invoke($0, `i64x2.shr_s`, [ + i64x2([0x8000000000000000n, 0xffffffff80000000n]), + 65, + ]), + [i64x2([0xc000000000000000n, 0xffffffffc0000000n])], +); + +// ./test/core/simd/simd_bit_shift.wast:632 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0xcn, 0xdn]), 65]), [i64x2([0x6n, 0x6n])]); + +// ./test/core/simd/simd_bit_shift.wast:635 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0x1n, 0xfn]), 129]), [i64x2([0x0n, 0x7n])]); + +// ./test/core/simd/simd_bit_shift.wast:638 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0x1n, 0xfn]), 257]), [i64x2([0x0n, 0x7n])]); + +// ./test/core/simd/simd_bit_shift.wast:641 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0x1n, 0xfn]), 513]), [i64x2([0x0n, 0x7n])]); + +// ./test/core/simd/simd_bit_shift.wast:644 +assert_return(() => invoke($0, `i64x2.shr_s`, [i64x2([0x1n, 0xfn]), 514]), [i64x2([0x0n, 0x3n])]); + +// ./test/core/simd/simd_bit_shift.wast:649 +assert_return(() => invoke($0, `i64x2.shl_1`, [i64x2([0x1n, 0xfn])]), [i64x2([0x2n, 0x1en])]); + +// ./test/core/simd/simd_bit_shift.wast:651 +assert_return(() => invoke($0, `i64x2.shr_u_64`, [i64x2([0x1n, 0xfn])]), [i64x2([0x1n, 0xfn])]); + +// ./test/core/simd/simd_bit_shift.wast:653 +assert_return(() => invoke($0, `i64x2.shr_s_65`, [i64x2([0x1n, 0xfn])]), [i64x2([0x0n, 0x7n])]); + +// ./test/core/simd/simd_bit_shift.wast:658 +let $1 = instantiate(`(module (memory 1) + (func (export "i8x16.shl-in-block") + (block + (drop + (block (result v128) + (i8x16.shl + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i8x16.shr_s-in-block") + (block + (drop + (block (result v128) + (i8x16.shr_s + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i8x16.shr_u-in-block") + (block + (drop + (block (result v128) + (i8x16.shr_u + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i16x8.shl-in-block") + (block + (drop + (block (result v128) + (i16x8.shl + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i16x8.shr_s-in-block") + (block + (drop + (block (result v128) + (i16x8.shr_s + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i16x8.shr_u-in-block") + (block + (drop + (block (result v128) + (i16x8.shr_u + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i32x4.shl-in-block") + (block + (drop + (block (result v128) + (i32x4.shl + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i32x4.shr_s-in-block") + (block + (drop + (block (result v128) + (i32x4.shr_s + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i32x4.shr_u-in-block") + (block + (drop + (block (result v128) + (i32x4.shr_u + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i64x2.shl-in-block") + (block + (drop + (block (result v128) + (i64x2.shl + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i64x2.shr_s-in-block") + (block + (drop + (block (result v128) + (i64x2.shr_s + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "i64x2.shr_u-in-block") + (block + (drop + (block (result v128) + (i64x2.shr_u + (block (result v128) (v128.load (i32.const 0))) (i32.const 1) + ) + ) + ) + ) + ) + (func (export "nested-i8x16.shl") + (drop + (i8x16.shl + (i8x16.shl + (i8x16.shl + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i8x16.shr_s") + (drop + (i8x16.shr_s + (i8x16.shr_s + (i8x16.shr_s + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i8x16.shr_u") + (drop + (i8x16.shr_u + (i8x16.shr_u + (i8x16.shr_u + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i16x8.shl") + (drop + (i16x8.shl + (i16x8.shl + (i16x8.shl + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i16x8.shr_s") + (drop + (i16x8.shr_s + (i16x8.shr_s + (i16x8.shr_s + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i16x8.shr_u") + (drop + (i16x8.shr_u + (i16x8.shr_u + (i16x8.shr_u + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i32x4.shl") + (drop + (i32x4.shl + (i32x4.shl + (i32x4.shl + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i32x4.shr_s") + (drop + (i32x4.shr_s + (i32x4.shr_s + (i32x4.shr_s + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i32x4.shr_u") + (drop + (i32x4.shr_u + (i32x4.shr_u + (i32x4.shr_u + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i64x2.shl") + (drop + (i64x2.shl + (i64x2.shl + (i64x2.shl + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i64x2.shr_s") + (drop + (i64x2.shr_s + (i64x2.shr_s + (i64x2.shr_s + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) + (func (export "nested-i64x2.shr_u") + (drop + (i64x2.shr_u + (i64x2.shr_u + (i64x2.shr_u + (v128.load (i32.const 0)) (i32.const 1) + ) + (i32.const 1) + ) + (i32.const 1) + ) + ) + ) +)`); + +// ./test/core/simd/simd_bit_shift.wast:949 +assert_return(() => invoke($1, `i8x16.shl-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:950 +assert_return(() => invoke($1, `i8x16.shr_s-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:951 +assert_return(() => invoke($1, `i8x16.shr_u-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:952 +assert_return(() => invoke($1, `i16x8.shl-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:953 +assert_return(() => invoke($1, `i16x8.shr_s-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:954 +assert_return(() => invoke($1, `i16x8.shr_u-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:955 +assert_return(() => invoke($1, `i32x4.shl-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:956 +assert_return(() => invoke($1, `i32x4.shr_s-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:957 +assert_return(() => invoke($1, `i32x4.shr_u-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:958 +assert_return(() => invoke($1, `i64x2.shl-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:959 +assert_return(() => invoke($1, `i64x2.shr_s-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:960 +assert_return(() => invoke($1, `i64x2.shr_u-in-block`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:961 +assert_return(() => invoke($1, `nested-i8x16.shl`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:962 +assert_return(() => invoke($1, `nested-i8x16.shr_s`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:963 +assert_return(() => invoke($1, `nested-i8x16.shr_u`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:964 +assert_return(() => invoke($1, `nested-i16x8.shl`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:965 +assert_return(() => invoke($1, `nested-i16x8.shr_s`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:966 +assert_return(() => invoke($1, `nested-i16x8.shr_u`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:967 +assert_return(() => invoke($1, `nested-i32x4.shl`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:968 +assert_return(() => invoke($1, `nested-i32x4.shr_s`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:969 +assert_return(() => invoke($1, `nested-i32x4.shr_u`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:970 +assert_return(() => invoke($1, `nested-i64x2.shl`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:971 +assert_return(() => invoke($1, `nested-i64x2.shr_s`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:972 +assert_return(() => invoke($1, `nested-i64x2.shr_u`, []), []); + +// ./test/core/simd/simd_bit_shift.wast:976 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.shl (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:977 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.shr_s (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:978 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.shr_u (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:979 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.shl (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:980 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.shr_s (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:981 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.shr_u (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:982 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.shl (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:983 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.shr_s (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:984 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.shr_u (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:985 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.shl (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:986 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.shr_s (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:987 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.shr_u (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:991 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.shl_s (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:992 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.shl_r (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:993 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.shr (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:994 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.shl_s (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:995 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.shl_r (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:996 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.shr (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:997 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.shl_s (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:998 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.shl_r (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:999 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.shr (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:1000 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.shl_s (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:1001 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.shl_r (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:1002 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.shr (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:1003 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f32x4.shl (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:1004 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f32x4.shr_s (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:1005 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f32x4.shr_u (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_bit_shift.wast:1009 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.shl-1st-arg-empty (result v128) + (i8x16.shl (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1017 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.shl-last-arg-empty (result v128) + (i8x16.shl (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1025 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.shl-arg-empty (result v128) + (i8x16.shl) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1033 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.shr_u-1st-arg-empty (result v128) + (i16x8.shr_u (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1041 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.shr_u-last-arg-empty (result v128) + (i16x8.shr_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1049 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.shr_u-arg-empty (result v128) + (i16x8.shr_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1057 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.shr_s-1st-arg-empty (result v128) + (i32x4.shr_s (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1065 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.shr_s-last-arg-empty (result v128) + (i32x4.shr_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1073 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.shr_s-arg-empty (result v128) + (i32x4.shr_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1081 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.shl-1st-arg-empty (result v128) + (i64x2.shl (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1089 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.shr_u-last-arg-empty (result v128) + (i64x2.shr_u (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bit_shift.wast:1097 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.shr_s-arg-empty (result v128) + (i64x2.shr_s) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_bitwise.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_bitwise.wast.js new file mode 100644 index 0000000000..0c270c4cc7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_bitwise.wast.js @@ -0,0 +1,2769 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_bitwise.wast + +// ./test/core/simd/simd_bitwise.wast:3 +let $0 = instantiate(`(module + (func (export "not") (param $$0 v128) (result v128) (v128.not (local.get $$0))) + (func (export "and") (param $$0 v128) (param $$1 v128) (result v128) (v128.and (local.get $$0) (local.get $$1))) + (func (export "or") (param $$0 v128) (param $$1 v128) (result v128) (v128.or (local.get $$0) (local.get $$1))) + (func (export "xor") (param $$0 v128) (param $$1 v128) (result v128) (v128.xor (local.get $$0) (local.get $$1))) + (func (export "bitselect") (param $$0 v128) (param $$1 v128) (param $$2 v128) (result v128) + (v128.bitselect (local.get $$0) (local.get $$1) (local.get $$2)) + ) + (func (export "andnot") (param $$0 v128) (param $$1 v128) (result v128) (v128.andnot (local.get $$0) (local.get $$1))) +)`); + +// ./test/core/simd/simd_bitwise.wast:15 +assert_return( + () => invoke($0, `not`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:17 +assert_return( + () => invoke($0, `not`, [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:19 +assert_return( + () => invoke($0, `not`, [i32x4([0xffffffff, 0x0, 0xffffffff, 0x0])]), + [i32x4([0x0, 0xffffffff, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:21 +assert_return( + () => invoke($0, `not`, [i32x4([0x0, 0xffffffff, 0x0, 0xffffffff])]), + [i32x4([0xffffffff, 0x0, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:23 +assert_return( + () => invoke($0, `not`, [i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555])]), + [i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa])], +); + +// ./test/core/simd/simd_bitwise.wast:25 +assert_return( + () => invoke($0, `not`, [i32x4([0xcccccccc, 0xcccccccc, 0xcccccccc, 0xcccccccc])]), + [i32x4([0x33333333, 0x33333333, 0x33333333, 0x33333333])], +); + +// ./test/core/simd/simd_bitwise.wast:27 +assert_return( + () => invoke($0, `not`, [i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2])]), + [i32x4([0xb669fd2d, 0xb669fd2d, 0xb669fd2d, 0xb669fd2d])], +); + +// ./test/core/simd/simd_bitwise.wast:29 +assert_return( + () => invoke($0, `not`, [i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678])]), + [i32x4([0xedcba987, 0xedcba987, 0xedcba987, 0xedcba987])], +); + +// ./test/core/simd/simd_bitwise.wast:31 +assert_return( + () => invoke($0, `and`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:34 +assert_return( + () => invoke($0, `and`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:37 +assert_return( + () => invoke($0, `and`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:40 +assert_return( + () => invoke($0, `and`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:43 +assert_return( + () => invoke($0, `and`, [i32x4([0x1, 0x1, 0x1, 0x1]), i32x4([0x1, 0x1, 0x1, 0x1])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_bitwise.wast:46 +assert_return( + () => invoke($0, `and`, [ + i32x4([0xff, 0xff, 0xff, 0xff]), + i32x4([0x55, 0x55, 0x55, 0x55]), + ]), + [i32x4([0x55, 0x55, 0x55, 0x55])], +); + +// ./test/core/simd/simd_bitwise.wast:49 +assert_return( + () => invoke($0, `and`, [ + i32x4([0xff, 0xff, 0xff, 0xff]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_bitwise.wast:52 +assert_return( + () => invoke($0, `and`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0xa, 0x80, 0x5, 0xa5]), + ]), + [i32x4([0xa, 0x80, 0x0, 0xa0])], +); + +// ./test/core/simd/simd_bitwise.wast:55 +assert_return( + () => invoke($0, `and`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + ]), + [i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555])], +); + +// ./test/core/simd/simd_bitwise.wast:58 +assert_return( + () => invoke($0, `and`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa])], +); + +// ./test/core/simd/simd_bitwise.wast:61 +assert_return( + () => invoke($0, `and`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:64 +assert_return( + () => invoke($0, `and`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i32x4([0x5555, 0xffff, 0x55ff, 0x5fff]), + ]), + [i32x4([0x5555, 0x5555, 0x5555, 0x5555])], +); + +// ./test/core/simd/simd_bitwise.wast:67 +assert_return( + () => invoke($0, `and`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2])], +); + +// ./test/core/simd/simd_bitwise.wast:70 +assert_return( + () => invoke($0, `and`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [i32x4([0x10204468, 0x10204468, 0x10204468, 0x10204468])], +); + +// ./test/core/simd/simd_bitwise.wast:73 +assert_return( + () => invoke($0, `or`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:76 +assert_return( + () => invoke($0, `or`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:79 +assert_return( + () => invoke($0, `or`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:82 +assert_return( + () => invoke($0, `or`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:85 +assert_return( + () => invoke($0, `or`, [i32x4([0x1, 0x1, 0x1, 0x1]), i32x4([0x1, 0x1, 0x1, 0x1])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_bitwise.wast:88 +assert_return( + () => invoke($0, `or`, [ + i32x4([0xff, 0xff, 0xff, 0xff]), + i32x4([0x55, 0x55, 0x55, 0x55]), + ]), + [i32x4([0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_bitwise.wast:91 +assert_return( + () => invoke($0, `or`, [ + i32x4([0xff, 0xff, 0xff, 0xff]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_bitwise.wast:94 +assert_return( + () => invoke($0, `or`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0xa, 0x80, 0x5, 0xa5]), + ]), + [i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaf, 0xaaaaaaaf])], +); + +// ./test/core/simd/simd_bitwise.wast:97 +assert_return( + () => invoke($0, `or`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:100 +assert_return( + () => invoke($0, `or`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:103 +assert_return( + () => invoke($0, `or`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:106 +assert_return( + () => invoke($0, `or`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i32x4([0x5555, 0xffff, 0x55ff, 0x5fff]), + ]), + [i32x4([0x55555555, 0x5555ffff, 0x555555ff, 0x55555fff])], +); + +// ./test/core/simd/simd_bitwise.wast:109 +assert_return( + () => invoke($0, `or`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2])], +); + +// ./test/core/simd/simd_bitwise.wast:112 +assert_return( + () => invoke($0, `or`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [i32x4([0x92bfdfff, 0x92bfdfff, 0x92bfdfff, 0x92bfdfff])], +); + +// ./test/core/simd/simd_bitwise.wast:115 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:118 +assert_return( + () => invoke($0, `xor`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:121 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:124 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:127 +assert_return( + () => invoke($0, `xor`, [i32x4([0x1, 0x1, 0x1, 0x1]), i32x4([0x1, 0x1, 0x1, 0x1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:130 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0xff, 0xff, 0xff, 0xff]), + i32x4([0x55, 0x55, 0x55, 0x55]), + ]), + [i32x4([0xaa, 0xaa, 0xaa, 0xaa])], +); + +// ./test/core/simd/simd_bitwise.wast:133 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0xff, 0xff, 0xff, 0xff]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_bitwise.wast:136 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0xa, 0x80, 0x5, 0xa5]), + ]), + [i32x4([0xaaaaaaa0, 0xaaaaaa2a, 0xaaaaaaaf, 0xaaaaaa0f])], +); + +// ./test/core/simd/simd_bitwise.wast:139 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + ]), + [i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa])], +); + +// ./test/core/simd/simd_bitwise.wast:142 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555])], +); + +// ./test/core/simd/simd_bitwise.wast:145 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:148 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i32x4([0x5555, 0xffff, 0x55ff, 0x5fff]), + ]), + [i32x4([0x55550000, 0x5555aaaa, 0x555500aa, 0x55550aaa])], +); + +// ./test/core/simd/simd_bitwise.wast:151 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:154 +assert_return( + () => invoke($0, `xor`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [i32x4([0x829f9b97, 0x829f9b97, 0x829f9b97, 0x829f9b97])], +); + +// ./test/core/simd/simd_bitwise.wast:157 +assert_return( + () => invoke($0, `bitselect`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb]), + i32x4([0x112345, 0xf00fffff, 0x10112021, 0xbbaabbaa]), + ]), + [i32x4([0xbbaababa, 0xabbaaaaa, 0xabaabbba, 0xaabbaabb])], +); + +// ./test/core/simd/simd_bitwise.wast:161 +assert_return( + () => invoke($0, `bitselect`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb])], +); + +// ./test/core/simd/simd_bitwise.wast:165 +assert_return( + () => invoke($0, `bitselect`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb]), + i32x4([0x11111111, 0x11111111, 0x11111111, 0x11111111]), + ]), + [i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa])], +); + +// ./test/core/simd/simd_bitwise.wast:169 +assert_return( + () => invoke($0, `bitselect`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb, 0xbbbbbbbb]), + i32x4([0x1234567, 0x89abcdef, 0xfedcba98, 0x76543210]), + ]), + [i32x4([0xbabababa, 0xbabababa, 0xabababab, 0xabababab])], +); + +// ./test/core/simd/simd_bitwise.wast:173 +assert_return( + () => invoke($0, `bitselect`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i32x4([0x1234567, 0x89abcdef, 0xfedcba98, 0x76543210]), + ]), + [i32x4([0x54761032, 0xdcfe98ba, 0xab89efcd, 0x23016745])], +); + +// ./test/core/simd/simd_bitwise.wast:177 +assert_return( + () => invoke($0, `bitselect`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i32x4([0x55555555, 0xaaaaaaaa, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0xffffffff, 0x55555555, 0xaaaaaaaa])], +); + +// ./test/core/simd/simd_bitwise.wast:181 +assert_return( + () => invoke($0, `bitselect`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + i32x4([0xb669fd2e, 0xb669fd2e, 0xb669fd2e, 0xb669fd2e]), + i32x4([0xcdefcdef, 0xcdefcdef, 0xcdefcdef, 0xcdefcdef]), + ]), + [i32x4([0x7b8630c2, 0x7b8630c2, 0x7b8630c2, 0x7b8630c2])], +); + +// ./test/core/simd/simd_bitwise.wast:185 +assert_return( + () => invoke($0, `bitselect`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + i32x4([0xcdefcdef, 0xcdefcdef, 0xcdefcdef, 0xcdefcdef]), + ]), + [i32x4([0x10244468, 0x10244468, 0x10244468, 0x10244468])], +); + +// ./test/core/simd/simd_bitwise.wast:189 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:192 +assert_return( + () => invoke($0, `andnot`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:195 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:198 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:201 +assert_return( + () => invoke($0, `andnot`, [i32x4([0x1, 0x1, 0x1, 0x1]), i32x4([0x1, 0x1, 0x1, 0x1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:204 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0xff, 0xff, 0xff, 0xff]), + i32x4([0x55, 0x55, 0x55, 0x55]), + ]), + [i32x4([0xaa, 0xaa, 0xaa, 0xaa])], +); + +// ./test/core/simd/simd_bitwise.wast:207 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0xff, 0xff, 0xff, 0xff]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_bitwise.wast:210 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i32x4([0xa, 0x80, 0x5, 0xa5]), + ]), + [i32x4([0xaaaaaaa0, 0xaaaaaa2a, 0xaaaaaaaa, 0xaaaaaa0a])], +); + +// ./test/core/simd/simd_bitwise.wast:213 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + ]), + [i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa])], +); + +// ./test/core/simd/simd_bitwise.wast:216 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555])], +); + +// ./test/core/simd/simd_bitwise.wast:219 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_bitwise.wast:222 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i32x4([0x5555, 0xffff, 0x55ff, 0x5fff]), + ]), + [i32x4([0x55550000, 0x55550000, 0x55550000, 0x55550000])], +); + +// ./test/core/simd/simd_bitwise.wast:225 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:228 +assert_return( + () => invoke($0, `andnot`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [i32x4([0x2141210, 0x2141210, 0x2141210, 0x2141210])], +); + +// ./test/core/simd/simd_bitwise.wast:233 +assert_return( + () => invoke($0, `not`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000000000000000000000587747), + value("f32", 0.00000000000000000000000000000000000000587747), + value("f32", 0.00000000000000000000000000000000000000587747), + value("f32", 0.00000000000000000000000000000000000000587747), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:235 +assert_return( + () => invoke($0, `not`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000000000000000000000000000000000000587747), + value("f32", -0.00000000000000000000000000000000000000587747), + value("f32", -0.00000000000000000000000000000000000000587747), + value("f32", -0.00000000000000000000000000000000000000587747), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:237 +assert_return( + () => invoke($0, `not`, [f32x4([-Infinity, -Infinity, -Infinity, -Infinity])]), + [i32x4([0x7fffff, 0x7fffff, 0x7fffff, 0x7fffff])], +); + +// ./test/core/simd/simd_bitwise.wast:239 +assert_return( + () => invoke($0, `not`, [f32x4([Infinity, Infinity, Infinity, Infinity])]), + [i32x4([0x807fffff, 0x807fffff, 0x807fffff, 0x807fffff])], +); + +// ./test/core/simd/simd_bitwise.wast:241 +assert_return( + () => invoke($0, `and`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffc00000, 0xffc00000, 0xffc00000, 0xffc00000])], +); + +// ./test/core/simd/simd_bitwise.wast:244 +assert_return( + () => invoke($0, `and`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:247 +assert_return( + () => invoke($0, `and`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:250 +assert_return( + () => invoke($0, `and`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:253 +assert_return( + () => invoke($0, `and`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:256 +assert_return( + () => invoke($0, `and`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:259 +assert_return( + () => invoke($0, `and`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:262 +assert_return( + () => invoke($0, `and`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:265 +assert_return( + () => invoke($0, `and`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:268 +assert_return( + () => invoke($0, `and`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:271 +assert_return( + () => invoke($0, `or`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffc00000, 0xffc00000, 0xffc00000, 0xffc00000])], +); + +// ./test/core/simd/simd_bitwise.wast:274 +assert_return( + () => invoke($0, `or`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffc00000, 0xffc00000, 0xffc00000, 0xffc00000])], +); + +// ./test/core/simd/simd_bitwise.wast:277 +assert_return( + () => invoke($0, `or`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffc00000, 0xffc00000, 0xffc00000, 0xffc00000])], +); + +// ./test/core/simd/simd_bitwise.wast:280 +assert_return( + () => invoke($0, `or`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffc00000, 0xffc00000, 0xffc00000, 0xffc00000])], +); + +// ./test/core/simd/simd_bitwise.wast:283 +assert_return( + () => invoke($0, `or`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:286 +assert_return( + () => invoke($0, `or`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffc00000, 0xffc00000, 0xffc00000, 0xffc00000])], +); + +// ./test/core/simd/simd_bitwise.wast:289 +assert_return( + () => invoke($0, `or`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:292 +assert_return( + () => invoke($0, `or`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:295 +assert_return( + () => invoke($0, `or`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:298 +assert_return( + () => invoke($0, `or`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:301 +assert_return( + () => invoke($0, `xor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:304 +assert_return( + () => invoke($0, `xor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:307 +assert_return( + () => invoke($0, `xor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x400000, 0x400000, 0x400000, 0x400000])], +); + +// ./test/core/simd/simd_bitwise.wast:310 +assert_return( + () => invoke($0, `xor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x80400000, 0x80400000, 0x80400000, 0x80400000])], +); + +// ./test/core/simd/simd_bitwise.wast:313 +assert_return( + () => invoke($0, `xor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:316 +assert_return( + () => invoke($0, `xor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x80400000, 0x80400000, 0x80400000, 0x80400000])], +); + +// ./test/core/simd/simd_bitwise.wast:319 +assert_return( + () => invoke($0, `xor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x400000, 0x400000, 0x400000, 0x400000])], +); + +// ./test/core/simd/simd_bitwise.wast:322 +assert_return( + () => invoke($0, `xor`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:325 +assert_return( + () => invoke($0, `xor`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_bitwise.wast:328 +assert_return( + () => invoke($0, `xor`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:331 +assert_return( + () => invoke($0, `bitselect`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [i32x4([0xffc00000, 0xffc00000, 0xffc00000, 0xffc00000])], +); + +// ./test/core/simd/simd_bitwise.wast:335 +assert_return( + () => invoke($0, `bitselect`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:339 +assert_return( + () => invoke($0, `bitselect`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:343 +assert_return( + () => invoke($0, `bitselect`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:347 +assert_return( + () => invoke($0, `bitselect`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:351 +assert_return( + () => invoke($0, `bitselect`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:355 +assert_return( + () => invoke($0, `bitselect`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:359 +assert_return( + () => invoke($0, `bitselect`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:363 +assert_return( + () => invoke($0, `bitselect`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:367 +assert_return( + () => invoke($0, `bitselect`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([2779096600, 2779096600, 2779096600, 2779096600]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:371 +assert_return( + () => invoke($0, `andnot`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:374 +assert_return( + () => invoke($0, `andnot`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:377 +assert_return( + () => invoke($0, `andnot`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x400000, 0x400000, 0x400000, 0x400000])], +); + +// ./test/core/simd/simd_bitwise.wast:380 +assert_return( + () => invoke($0, `andnot`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x80400000, 0x80400000, 0x80400000, 0x80400000])], +); + +// ./test/core/simd/simd_bitwise.wast:383 +assert_return( + () => invoke($0, `andnot`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:386 +assert_return( + () => invoke($0, `andnot`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x400000, 0x400000, 0x400000, 0x400000])], +); + +// ./test/core/simd/simd_bitwise.wast:389 +assert_return( + () => invoke($0, `andnot`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x400000, 0x400000, 0x400000, 0x400000])], +); + +// ./test/core/simd/simd_bitwise.wast:392 +assert_return( + () => invoke($0, `andnot`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_bitwise.wast:395 +assert_return( + () => invoke($0, `andnot`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_bitwise.wast:398 +assert_return( + () => invoke($0, `andnot`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_bitwise.wast:405 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.not (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:407 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.and (i32.const 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:408 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.and (v128.const i32x4 0 0 0 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:409 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.and (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:411 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.or (i32.const 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:412 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.or (v128.const i32x4 0 0 0 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:413 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.or (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:415 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.xor (i32.const 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:416 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.xor (v128.const i32x4 0 0 0 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:417 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.xor (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:419 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.bitselect (i32.const 0) (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:420 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.bitselect (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:421 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.bitselect (i32.const 0) (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:423 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.andnot (i32.const 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:424 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.andnot (v128.const i32x4 0 0 0 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:425 +assert_invalid( + () => instantiate(`(module (func (result v128) (v128.andnot (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:429 +let $1 = instantiate(`(module (memory 1) + (func (export "v128.not-in-block") + (block + (drop + (block (result v128) + (v128.not + (block (result v128) (v128.load (i32.const 0))) + ) + ) + ) + ) + ) + (func (export "v128.and-in-block") + (block + (drop + (block (result v128) + (v128.and + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "v128.or-in-block") + (block + (drop + (block (result v128) + (v128.or + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "v128.xor-in-block") + (block + (drop + (block (result v128) + (v128.xor + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "v128.bitselect-in-block") + (block + (drop + (block (result v128) + (v128.bitselect + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + (block (result v128) (v128.load (i32.const 2))) + ) + ) + ) + ) + ) + (func (export "v128.andnot-in-block") + (block + (drop + (block (result v128) + (v128.andnot + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "nested-v128.not") + (drop + (v128.not + (v128.not + (v128.not + (v128.load (i32.const 0)) + ) + ) + ) + ) + ) + (func (export "nested-v128.and") + (drop + (v128.and + (v128.and + (v128.and + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (v128.and + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + (v128.and + (v128.and + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (v128.and + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + ) + ) + ) + (func (export "nested-v128.or") + (drop + (v128.or + (v128.or + (v128.or + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (v128.or + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + (v128.or + (v128.or + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (v128.or + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + ) + ) + ) + (func (export "nested-v128.xor") + (drop + (v128.xor + (v128.xor + (v128.xor + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (v128.xor + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + (v128.xor + (v128.xor + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (v128.xor + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + ) + ) + ) + (func (export "nested-v128.bitselect") + (drop + (v128.bitselect + (v128.bitselect + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + ) + (v128.bitselect + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + ) + (v128.bitselect + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + ) + ) + ) + ) + (func (export "nested-v128.andnot") + (drop + (v128.andnot + (v128.andnot + (v128.andnot + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (v128.andnot + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + (v128.andnot + (v128.andnot + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (v128.andnot + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + ) + ) + ) + (func (export "as-param") + (drop + (v128.or + (v128.and + (v128.not + (v128.load (i32.const 0)) + ) + (v128.not + (v128.load (i32.const 1)) + ) + ) + (v128.xor + (v128.bitselect + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + (v128.load (i32.const 2)) + ) + (v128.andnot + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + ) + ) + ) + ) +)`); + +// ./test/core/simd/simd_bitwise.wast:700 +assert_return(() => invoke($1, `v128.not-in-block`, []), []); + +// ./test/core/simd/simd_bitwise.wast:701 +assert_return(() => invoke($1, `v128.and-in-block`, []), []); + +// ./test/core/simd/simd_bitwise.wast:702 +assert_return(() => invoke($1, `v128.or-in-block`, []), []); + +// ./test/core/simd/simd_bitwise.wast:703 +assert_return(() => invoke($1, `v128.xor-in-block`, []), []); + +// ./test/core/simd/simd_bitwise.wast:704 +assert_return(() => invoke($1, `v128.bitselect-in-block`, []), []); + +// ./test/core/simd/simd_bitwise.wast:705 +assert_return(() => invoke($1, `v128.andnot-in-block`, []), []); + +// ./test/core/simd/simd_bitwise.wast:706 +assert_return(() => invoke($1, `nested-v128.not`, []), []); + +// ./test/core/simd/simd_bitwise.wast:707 +assert_return(() => invoke($1, `nested-v128.and`, []), []); + +// ./test/core/simd/simd_bitwise.wast:708 +assert_return(() => invoke($1, `nested-v128.or`, []), []); + +// ./test/core/simd/simd_bitwise.wast:709 +assert_return(() => invoke($1, `nested-v128.xor`, []), []); + +// ./test/core/simd/simd_bitwise.wast:710 +assert_return(() => invoke($1, `nested-v128.bitselect`, []), []); + +// ./test/core/simd/simd_bitwise.wast:711 +assert_return(() => invoke($1, `nested-v128.andnot`, []), []); + +// ./test/core/simd/simd_bitwise.wast:712 +assert_return(() => invoke($1, `as-param`, []), []); + +// ./test/core/simd/simd_bitwise.wast:717 +assert_invalid( + () => instantiate(`(module + (func $$v128.not-arg-empty (result v128) + (v128.not) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:725 +assert_invalid( + () => instantiate(`(module + (func $$v128.and-1st-arg-empty (result v128) + (v128.and (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:733 +assert_invalid( + () => instantiate(`(module + (func $$v128.and-arg-empty (result v128) + (v128.and) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:741 +assert_invalid( + () => instantiate(`(module + (func $$v128.or-1st-arg-empty (result v128) + (v128.or (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:749 +assert_invalid( + () => instantiate(`(module + (func $$v128.or-arg-empty (result v128) + (v128.or) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:757 +assert_invalid( + () => instantiate(`(module + (func $$v128.xor-1st-arg-empty (result v128) + (v128.xor (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:765 +assert_invalid( + () => instantiate(`(module + (func $$v128.xor-arg-empty (result v128) + (v128.xor) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:773 +assert_invalid( + () => instantiate(`(module + (func $$v128.andnot-1st-arg-empty (result v128) + (v128.andnot (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:781 +assert_invalid( + () => instantiate(`(module + (func $$v128.andnot-arg-empty (result v128) + (v128.andnot) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:789 +assert_invalid( + () => instantiate(`(module + (func $$v128.bitselect-1st-arg-empty (result v128) + (v128.bitselect (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:797 +assert_invalid( + () => instantiate(`(module + (func $$v128.bitselect-two-args-empty (result v128) + (v128.bitselect (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_bitwise.wast:805 +assert_invalid( + () => instantiate(`(module + (func $$v128.bitselect-arg-empty (result v128) + (v128.bitselect) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_boolean.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_boolean.wast.js new file mode 100644 index 0000000000..63959fad79 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_boolean.wast.js @@ -0,0 +1,2455 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_boolean.wast + +// ./test/core/simd/simd_boolean.wast:3 +let $0 = instantiate(`(module + (func (export "i8x16.any_true") (param $$0 v128) (result i32) (v128.any_true (local.get $$0))) + (func (export "i8x16.all_true") (param $$0 v128) (result i32) (i8x16.all_true (local.get $$0))) + (func (export "i8x16.bitmask") (param $$0 v128) (result i32) (i8x16.bitmask (local.get $$0))) + + (func (export "i16x8.any_true") (param $$0 v128) (result i32) (v128.any_true (local.get $$0))) + (func (export "i16x8.all_true") (param $$0 v128) (result i32) (i16x8.all_true (local.get $$0))) + (func (export "i16x8.bitmask") (param $$0 v128) (result i32) (i16x8.bitmask (local.get $$0))) + + (func (export "i32x4.any_true") (param $$0 v128) (result i32) (v128.any_true (local.get $$0))) + (func (export "i32x4.all_true") (param $$0 v128) (result i32) (i32x4.all_true (local.get $$0))) + (func (export "i32x4.bitmask") (param $$0 v128) (result i32) (i32x4.bitmask (local.get $$0))) + + (func (export "i64x2.all_true") (param $$0 v128) (result i32) (i64x2.all_true (local.get $$0))) + (func (export "i64x2.bitmask") (param $$0 v128) (result i32) (i64x2.bitmask (local.get $$0))) +)`); + +// ./test/core/simd/simd_boolean.wast:21 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:23 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:25 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:27 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:29 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0xff, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xf]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:31 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:33 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:35 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:37 +assert_return( + () => invoke($0, `i8x16.any_true`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:39 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:41 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:43 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:45 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:47 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0xff, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xf]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:49 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:51 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:53 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:55 +assert_return( + () => invoke($0, `i8x16.all_true`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:57 +assert_return( + () => invoke($0, `i8x16.bitmask`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 65535)], +); + +// ./test/core/simd/simd_boolean.wast:59 +assert_return( + () => invoke($0, `i8x16.bitmask`, [ + i8x16([0xff, 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xf]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:63 +assert_return( + () => invoke($0, `i16x8.any_true`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:65 +assert_return( + () => invoke($0, `i16x8.any_true`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:67 +assert_return( + () => invoke($0, `i16x8.any_true`, [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:69 +assert_return( + () => invoke($0, `i16x8.any_true`, [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:71 +assert_return( + () => invoke($0, `i16x8.any_true`, [ + i16x8([0xffff, 0x0, 0x1, 0x2, 0xb, 0xc, 0xd, 0xf]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:73 +assert_return( + () => invoke($0, `i16x8.any_true`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:75 +assert_return( + () => invoke($0, `i16x8.any_true`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:77 +assert_return( + () => invoke($0, `i16x8.any_true`, [ + i16x8([0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:79 +assert_return( + () => invoke($0, `i16x8.any_true`, [ + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:81 +assert_return( + () => invoke($0, `i16x8.any_true`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:83 +assert_return( + () => invoke($0, `i16x8.any_true`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:85 +assert_return( + () => invoke($0, `i16x8.all_true`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:87 +assert_return( + () => invoke($0, `i16x8.all_true`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:89 +assert_return( + () => invoke($0, `i16x8.all_true`, [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:91 +assert_return( + () => invoke($0, `i16x8.all_true`, [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:93 +assert_return( + () => invoke($0, `i16x8.all_true`, [ + i16x8([0xffff, 0x0, 0x1, 0x2, 0xb, 0xc, 0xd, 0xf]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:95 +assert_return( + () => invoke($0, `i16x8.all_true`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:97 +assert_return( + () => invoke($0, `i16x8.all_true`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:99 +assert_return( + () => invoke($0, `i16x8.all_true`, [ + i16x8([0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:101 +assert_return( + () => invoke($0, `i16x8.all_true`, [ + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:103 +assert_return( + () => invoke($0, `i16x8.all_true`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:105 +assert_return( + () => invoke($0, `i16x8.all_true`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:107 +assert_return( + () => invoke($0, `i16x8.bitmask`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 255)], +); + +// ./test/core/simd/simd_boolean.wast:109 +assert_return( + () => invoke($0, `i16x8.bitmask`, [ + i16x8([0xffff, 0x0, 0x1, 0x2, 0xb, 0xc, 0xd, 0xf]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:113 +assert_return(() => invoke($0, `i32x4.any_true`, [i32x4([0x0, 0x0, 0x0, 0x0])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:115 +assert_return(() => invoke($0, `i32x4.any_true`, [i32x4([0x0, 0x0, 0x1, 0x0])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:117 +assert_return(() => invoke($0, `i32x4.any_true`, [i32x4([0x1, 0x1, 0x0, 0x1])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:119 +assert_return(() => invoke($0, `i32x4.any_true`, [i32x4([0x1, 0x1, 0x1, 0x1])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:121 +assert_return( + () => invoke($0, `i32x4.any_true`, [i32x4([0xffffffff, 0x0, 0x1, 0xf])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:123 +assert_return(() => invoke($0, `i32x4.any_true`, [i32x4([0x0, 0x0, 0x0, 0x0])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:125 +assert_return(() => invoke($0, `i32x4.any_true`, [i32x4([0xff, 0xff, 0xff, 0xff])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:127 +assert_return(() => invoke($0, `i32x4.any_true`, [i32x4([0xab, 0xab, 0xab, 0xab])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:129 +assert_return(() => invoke($0, `i32x4.any_true`, [i32x4([0x55, 0x55, 0x55, 0x55])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:131 +assert_return( + () => invoke($0, `i32x4.any_true`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:133 +assert_return( + () => invoke($0, `i32x4.any_true`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:135 +assert_return(() => invoke($0, `i32x4.all_true`, [i32x4([0x0, 0x0, 0x0, 0x0])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:137 +assert_return(() => invoke($0, `i32x4.all_true`, [i32x4([0x0, 0x0, 0x1, 0x0])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:139 +assert_return(() => invoke($0, `i32x4.all_true`, [i32x4([0x1, 0x1, 0x0, 0x1])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:141 +assert_return(() => invoke($0, `i32x4.all_true`, [i32x4([0x1, 0x1, 0x1, 0x1])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:143 +assert_return( + () => invoke($0, `i32x4.all_true`, [i32x4([0xffffffff, 0x0, 0x1, 0xf])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:145 +assert_return(() => invoke($0, `i32x4.all_true`, [i32x4([0x0, 0x0, 0x0, 0x0])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:147 +assert_return(() => invoke($0, `i32x4.all_true`, [i32x4([0xff, 0xff, 0xff, 0xff])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:149 +assert_return(() => invoke($0, `i32x4.all_true`, [i32x4([0xab, 0xab, 0xab, 0xab])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:151 +assert_return(() => invoke($0, `i32x4.all_true`, [i32x4([0x55, 0x55, 0x55, 0x55])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:153 +assert_return( + () => invoke($0, `i32x4.all_true`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:155 +assert_return( + () => invoke($0, `i32x4.all_true`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:157 +assert_return( + () => invoke($0, `i32x4.bitmask`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 15)], +); + +// ./test/core/simd/simd_boolean.wast:159 +assert_return( + () => invoke($0, `i32x4.bitmask`, [i32x4([0xffffffff, 0x0, 0x1, 0xf])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:163 +assert_return(() => invoke($0, `i64x2.all_true`, [i64x2([0x0n, 0x0n])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:165 +assert_return(() => invoke($0, `i64x2.all_true`, [i64x2([0x0n, 0x1n])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:167 +assert_return(() => invoke($0, `i64x2.all_true`, [i64x2([0x1n, 0x0n])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:169 +assert_return(() => invoke($0, `i64x2.all_true`, [i64x2([0x1n, 0x1n])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:171 +assert_return( + () => invoke($0, `i64x2.all_true`, [i64x2([0xffffffffffffffffn, 0x0n])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:173 +assert_return(() => invoke($0, `i64x2.all_true`, [i64x2([0x0n, 0x0n])]), [value("i32", 0)]); + +// ./test/core/simd/simd_boolean.wast:175 +assert_return(() => invoke($0, `i64x2.all_true`, [i64x2([0xffn, 0xffn])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:177 +assert_return(() => invoke($0, `i64x2.all_true`, [i64x2([0xabn, 0xabn])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:179 +assert_return(() => invoke($0, `i64x2.all_true`, [i64x2([0x55n, 0x55n])]), [value("i32", 1)]); + +// ./test/core/simd/simd_boolean.wast:181 +assert_return( + () => invoke($0, `i64x2.bitmask`, [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])]), + [value("i32", 3)], +); + +// ./test/core/simd/simd_boolean.wast:183 +assert_return( + () => invoke($0, `i64x2.bitmask`, [i64x2([0xffffffffffffffffn, 0xfn])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:188 +let $1 = instantiate(`(module (memory 1) + ;; as if condition + (func (export "i8x16_any_true_as_if_cond") (param v128) (result i32) + (if (result i32) (v128.any_true (local.get 0)) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (func (export "i16x8_any_true_as_if_cond") (param v128) (result i32) + (if (result i32) (v128.any_true (local.get 0)) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (func (export "i32x4_any_true_as_if_cond") (param v128) (result i32) + (if (result i32) (v128.any_true (local.get 0)) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (func (export "i8x16_all_true_as_if_cond") (param v128) (result i32) + (if (result i32) (i8x16.all_true (local.get 0)) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (func (export "i16x8_all_true_as_if_cond") (param v128) (result i32) + (if (result i32) (i16x8.all_true (local.get 0)) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (func (export "i32x4_all_true_as_if_cond") (param v128) (result i32) + (if (result i32) (i32x4.all_true (local.get 0)) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ;; any_true as select condition + (func (export "i8x16_any_true_as_select_cond") (param v128) (result i32) + (select (i32.const 1) (i32.const 0) (v128.any_true (local.get 0))) + ) + (func (export "i16x8_any_true_as_select_cond") (param v128) (result i32) + (select (i32.const 1) (i32.const 0) (v128.any_true (local.get 0))) + ) + (func (export "i32x4_any_true_as_select_cond") (param v128) (result i32) + (select (i32.const 1) (i32.const 0) (v128.any_true (local.get 0))) + ) + ;; all_true as select condition + (func (export "i8x16_all_true_as_select_cond") (param v128) (result i32) + (select (i32.const 1) (i32.const 0) (i8x16.all_true (local.get 0))) + ) + (func (export "i16x8_all_true_as_select_cond") (param v128) (result i32) + (select (i32.const 1) (i32.const 0) (i16x8.all_true (local.get 0))) + ) + (func (export "i32x4_all_true_as_select_cond") (param v128) (result i32) + (select (i32.const 1) (i32.const 0) (i32x4.all_true (local.get 0))) + ) + ;; any_true as br_if condition + (func (export "i8x16_any_true_as_br_if_cond") (param $$0 v128) (result i32) + (local $$1 i32) + (local.set $$1 (i32.const 2)) + (block + (local.set $$1 (i32.const 1)) + (br_if 0 (v128.any_true (local.get $$0))) + (local.set $$1 (i32.const 0)) + ) + (local.get $$1) + ) + (func (export "i16x8_any_true_as_br_if_cond") (param $$0 v128) (result i32) + (local $$1 i32) + (local.set $$1 (i32.const 2)) + (block + (local.set $$1 (i32.const 1)) + (br_if 0 (v128.any_true (local.get $$0))) + (local.set $$1 (i32.const 0)) + ) + (local.get $$1) + ) + (func (export "i32x4_any_true_as_br_if_cond") (param $$0 v128) (result i32) + (local $$1 i32) + (local.set $$1 (i32.const 2)) + (block + (local.set $$1 (i32.const 1)) + (br_if 0 (v128.any_true (local.get $$0))) + (local.set $$1 (i32.const 0)) + ) + (local.get $$1) + ) + ;; all_true as br_if condition + (func (export "i8x16_all_true_as_br_if_cond") (param $$0 v128) (result i32) + (local $$1 i32) + (local.set $$1 (i32.const 2)) + (block + (local.set $$1 (i32.const 1)) + (br_if 0 (i8x16.all_true (local.get $$0))) + (local.set $$1 (i32.const 0)) + ) + (local.get $$1) + ) + (func (export "i16x8_all_true_as_br_if_cond") (param $$0 v128) (result i32) + (local $$1 i32) + (local.set $$1 (i32.const 2)) + (block + (local.set $$1 (i32.const 1)) + (br_if 0 (i16x8.all_true (local.get $$0))) + (local.set $$1 (i32.const 0)) + ) + (local.get $$1) + ) + (func (export "i32x4_all_true_as_br_if_cond") (param $$0 v128) (result i32) + (local $$1 i32) + (local.set $$1 (i32.const 2)) + (block + (local.set $$1 (i32.const 1)) + (br_if 0 (i32x4.all_true (local.get $$0))) + (local.set $$1 (i32.const 0)) + ) + (local.get $$1) + ) + ;; any_true as i32.and operand + (func (export "i8x16_any_true_as_i32.and_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.and (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + (func (export "i16x8_any_true_as_i32.and_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.and (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + (func (export "i32x4_any_true_as_i32.and_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.and (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + ;; any_true as i32.or operand + (func (export "i8x16_any_true_as_i32.or_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.or (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + (func (export "i16x8_any_true_as_i32.or_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.or (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + (func (export "i32x4_any_true_as_i32.or_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.or (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + ;; any_true as i32.xor operand + (func (export "i8x16_any_true_as_i32.xor_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.xor (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + (func (export "i16x8_any_true_as_i32.xor_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.xor (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + (func (export "i32x4_any_true_as_i32.xor_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.xor (v128.any_true (local.get $$0)) (v128.any_true (local.get $$1))) + ) + ;; all_true as i32.and operand + (func (export "i8x16_all_true_as_i32.and_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.and (i8x16.all_true (local.get $$0)) (i8x16.all_true (local.get $$1))) + ) + (func (export "i16x8_all_true_as_i32.and_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.and (i16x8.all_true (local.get $$0)) (i16x8.all_true (local.get $$1))) + ) + (func (export "i32x4_all_true_as_i32.and_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.and (i32x4.all_true (local.get $$0)) (i32x4.all_true (local.get $$1))) + ) + ;; all_true as i32.or operand + (func (export "i8x16_all_true_as_i32.or_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.or (i8x16.all_true (local.get $$0)) (i8x16.all_true (local.get $$1))) + ) + (func (export "i16x8_all_true_as_i32.or_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.or (i16x8.all_true (local.get $$0)) (i16x8.all_true (local.get $$1))) + ) + (func (export "i32x4_all_true_as_i32.or_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.or (i32x4.all_true (local.get $$0)) (i32x4.all_true (local.get $$1))) + ) + ;; all_true as i32.xor operand + (func (export "i8x16_all_true_as_i32.xor_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.xor (i8x16.all_true (local.get $$0)) (i8x16.all_true (local.get $$1))) + ) + (func (export "i16x8_all_true_as_i32.xor_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.xor (i16x8.all_true (local.get $$0)) (i16x8.all_true (local.get $$1))) + ) + (func (export "i32x4_all_true_as_i32.xor_operand") (param $$0 v128) (param $$1 v128) (result i32) + (i32.xor (i32x4.all_true (local.get $$0)) (i32x4.all_true (local.get $$1))) + ) + ;; any_true with v128.not + (func (export "i8x16_any_true_with_v128.not") (param $$0 v128) (result i32) + (v128.any_true (v128.not (local.get $$0))) + ) + (func (export "i16x8_any_true_with_v128.not") (param $$0 v128) (result i32) + (v128.any_true (v128.not (local.get $$0))) + ) + (func (export "i32x4_any_true_with_v128.not") (param $$0 v128) (result i32) + (v128.any_true (v128.not (local.get $$0))) + ) + ;; any_true with v128.and + (func (export "i8x16_any_true_with_v128.and") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.and (local.get $$0) (local.get $$1))) + ) + (func (export "i16x8_any_true_with_v128.and") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.and (local.get $$0) (local.get $$1))) + ) + (func (export "i32x4_any_true_with_v128.and") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.and (local.get $$0) (local.get $$1))) + ) + ;; any_true with v128.or + (func (export "i8x16_any_true_with_v128.or") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.or (local.get $$0) (local.get $$1))) + ) + (func (export "i16x8_any_true_with_v128.or") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.or (local.get $$0) (local.get $$1))) + ) + (func (export "i32x4_any_true_with_v128.or") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.or (local.get $$0) (local.get $$1))) + ) + ;; any_true with v128.xor + (func (export "i8x16_any_true_with_v128.xor") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.xor (local.get $$0) (local.get $$1))) + ) + (func (export "i16x8_any_true_with_v128.xor") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.xor (local.get $$0) (local.get $$1))) + ) + (func (export "i32x4_any_true_with_v128.xor") (param $$0 v128) (param $$1 v128) (result i32) + (v128.any_true (v128.xor (local.get $$0) (local.get $$1))) + ) + ;; any_true with v128.bitselect + (func (export "i8x16_any_true_with_v128.bitselect") (param $$0 v128) (param $$1 v128) (param $$2 v128) (result i32) + (v128.any_true (v128.bitselect (local.get $$0) (local.get $$1) (local.get $$2))) + ) + (func (export "i16x8_any_true_with_v128.bitselect") (param $$0 v128) (param $$1 v128) (param $$2 v128) (result i32) + (v128.any_true (v128.bitselect (local.get $$0) (local.get $$1) (local.get $$2))) + ) + (func (export "i32x4_any_true_with_v128.bitselect") (param $$0 v128) (param $$1 v128) (param $$2 v128) (result i32) + (v128.any_true (v128.bitselect (local.get $$0) (local.get $$1) (local.get $$2))) + ) + ;; all_true with v128.not + (func (export "i8x16_all_true_with_v128.not") (param $$0 v128) (result i32) + (i8x16.all_true (v128.not (local.get $$0))) + ) + (func (export "i16x8_all_true_with_v128.not") (param $$0 v128) (result i32) + (i16x8.all_true (v128.not (local.get $$0))) + ) + (func (export "i32x4_all_true_with_v128.not") (param $$0 v128) (result i32) + (i32x4.all_true (v128.not (local.get $$0))) + ) + ;; all_true with v128.and + (func (export "i8x16_all_true_with_v128.and") (param $$0 v128) (param $$1 v128) (result i32) + (i8x16.all_true (v128.and (local.get $$0) (local.get $$1))) + ) + (func (export "i16x8_all_true_with_v128.and") (param $$0 v128) (param $$1 v128) (result i32) + (i16x8.all_true (v128.and (local.get $$0) (local.get $$1))) + ) + (func (export "i32x4_all_true_with_v128.and") (param $$0 v128) (param $$1 v128) (result i32) + (i32x4.all_true (v128.and (local.get $$0) (local.get $$1))) + ) + ;; all_true with v128.or + (func (export "i8x16_all_true_with_v128.or") (param $$0 v128) (param $$1 v128) (result i32) + (i8x16.all_true (v128.or (local.get $$0) (local.get $$1))) + ) + (func (export "i16x8_all_true_with_v128.or") (param $$0 v128) (param $$1 v128) (result i32) + (i16x8.all_true (v128.or (local.get $$0) (local.get $$1))) + ) + (func (export "i32x4_all_true_with_v128.or") (param $$0 v128) (param $$1 v128) (result i32) + (i32x4.all_true (v128.or (local.get $$0) (local.get $$1))) + ) + ;; all_true with v128.xor + (func (export "i8x16_all_true_with_v128.xor") (param $$0 v128) (param $$1 v128) (result i32) + (i8x16.all_true (v128.xor (local.get $$0) (local.get $$1))) + ) + (func (export "i16x8_all_true_with_v128.xor") (param $$0 v128) (param $$1 v128) (result i32) + (i16x8.all_true (v128.xor (local.get $$0) (local.get $$1))) + ) + (func (export "i32x4_all_true_with_v128.xor") (param $$0 v128) (param $$1 v128) (result i32) + (i32x4.all_true (v128.xor (local.get $$0) (local.get $$1))) + ) + ;; all_true with v128.bitselect + (func (export "i8x16_all_true_with_v128.bitselect") (param $$0 v128) (param $$1 v128) (param $$2 v128) (result i32) + (i8x16.all_true (v128.bitselect (local.get $$0) (local.get $$1) (local.get $$2))) + ) + (func (export "i16x8_all_true_with_v128.bitselect") (param $$0 v128) (param $$1 v128) (param $$2 v128) (result i32) + (i16x8.all_true (v128.bitselect (local.get $$0) (local.get $$1) (local.get $$2))) + ) + (func (export "i32x4_all_true_with_v128.bitselect") (param $$0 v128) (param $$1 v128) (param $$2 v128) (result i32) + (i32x4.all_true (v128.bitselect (local.get $$0) (local.get $$1) (local.get $$2))) + ) +)`); + +// ./test/core/simd/simd_boolean.wast:472 +assert_return( + () => invoke($1, `i8x16_any_true_as_if_cond`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:474 +assert_return( + () => invoke($1, `i8x16_any_true_as_if_cond`, [ + i8x16([0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:476 +assert_return( + () => invoke($1, `i8x16_any_true_as_if_cond`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:479 +assert_return( + () => invoke($1, `i16x8_any_true_as_if_cond`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:481 +assert_return( + () => invoke($1, `i16x8_any_true_as_if_cond`, [ + i16x8([0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:483 +assert_return( + () => invoke($1, `i16x8_any_true_as_if_cond`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:486 +assert_return( + () => invoke($1, `i32x4_any_true_as_if_cond`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:488 +assert_return( + () => invoke($1, `i32x4_any_true_as_if_cond`, [i32x4([0x0, 0x0, 0x1, 0x0])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:490 +assert_return( + () => invoke($1, `i32x4_any_true_as_if_cond`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:495 +assert_return( + () => invoke($1, `i8x16_all_true_as_if_cond`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:497 +assert_return( + () => invoke($1, `i8x16_all_true_as_if_cond`, [ + i8x16([0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:499 +assert_return( + () => invoke($1, `i8x16_all_true_as_if_cond`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:502 +assert_return( + () => invoke($1, `i16x8_all_true_as_if_cond`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:504 +assert_return( + () => invoke($1, `i16x8_all_true_as_if_cond`, [ + i16x8([0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:506 +assert_return( + () => invoke($1, `i16x8_all_true_as_if_cond`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:509 +assert_return( + () => invoke($1, `i32x4_all_true_as_if_cond`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:511 +assert_return( + () => invoke($1, `i32x4_all_true_as_if_cond`, [i32x4([0x1, 0x1, 0x1, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:513 +assert_return( + () => invoke($1, `i32x4_all_true_as_if_cond`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:517 +assert_return( + () => invoke($1, `i8x16_any_true_as_select_cond`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:519 +assert_return( + () => invoke($1, `i8x16_any_true_as_select_cond`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:521 +assert_return( + () => invoke($1, `i16x8_any_true_as_select_cond`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:523 +assert_return( + () => invoke($1, `i16x8_any_true_as_select_cond`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:525 +assert_return( + () => invoke($1, `i32x4_any_true_as_select_cond`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:527 +assert_return( + () => invoke($1, `i32x4_any_true_as_select_cond`, [i32x4([0x0, 0x0, 0x1, 0x0])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:530 +assert_return( + () => invoke($1, `i8x16_all_true_as_select_cond`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:532 +assert_return( + () => invoke($1, `i8x16_all_true_as_select_cond`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:534 +assert_return( + () => invoke($1, `i16x8_all_true_as_select_cond`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:536 +assert_return( + () => invoke($1, `i16x8_all_true_as_select_cond`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:538 +assert_return( + () => invoke($1, `i32x4_all_true_as_select_cond`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:540 +assert_return( + () => invoke($1, `i32x4_all_true_as_select_cond`, [i32x4([0x1, 0x1, 0x0, 0x1])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:543 +assert_return( + () => invoke($1, `i8x16_any_true_as_br_if_cond`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:545 +assert_return( + () => invoke($1, `i8x16_any_true_as_br_if_cond`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:547 +assert_return( + () => invoke($1, `i16x8_any_true_as_br_if_cond`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:549 +assert_return( + () => invoke($1, `i16x8_any_true_as_br_if_cond`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:551 +assert_return( + () => invoke($1, `i32x4_any_true_as_br_if_cond`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:553 +assert_return( + () => invoke($1, `i32x4_any_true_as_br_if_cond`, [i32x4([0x0, 0x0, 0x1, 0x0])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:556 +assert_return( + () => invoke($1, `i8x16_all_true_as_br_if_cond`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:558 +assert_return( + () => invoke($1, `i8x16_all_true_as_br_if_cond`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:560 +assert_return( + () => invoke($1, `i16x8_all_true_as_br_if_cond`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:562 +assert_return( + () => invoke($1, `i16x8_all_true_as_br_if_cond`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:564 +assert_return( + () => invoke($1, `i32x4_all_true_as_br_if_cond`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:566 +assert_return( + () => invoke($1, `i32x4_all_true_as_br_if_cond`, [i32x4([0x1, 0x1, 0x0, 0x1])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:569 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.and_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:572 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.and_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:575 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.and_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:578 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.and_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:581 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.and_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:584 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.and_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:587 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.and_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:590 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.and_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:593 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.and_operand`, [ + i32x4([0x0, 0x0, 0x1, 0x0]), + i32x4([0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:597 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.or_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:600 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.or_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:603 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.or_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:606 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.or_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:609 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.or_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:612 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.or_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:615 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.or_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:618 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.or_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:621 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.or_operand`, [ + i32x4([0x0, 0x0, 0x1, 0x0]), + i32x4([0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:625 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.xor_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:628 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.xor_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:631 +assert_return( + () => invoke($1, `i8x16_any_true_as_i32.xor_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:634 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.xor_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:637 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.xor_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:640 +assert_return( + () => invoke($1, `i16x8_any_true_as_i32.xor_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:643 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.xor_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:646 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.xor_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:649 +assert_return( + () => invoke($1, `i32x4_any_true_as_i32.xor_operand`, [ + i32x4([0x0, 0x0, 0x1, 0x0]), + i32x4([0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:653 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.and_operand`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:656 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.and_operand`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:659 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.and_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:662 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.and_operand`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:665 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.and_operand`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:668 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.and_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:671 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.and_operand`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:674 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.and_operand`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:677 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.and_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x1, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:681 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.or_operand`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:684 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.or_operand`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:687 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.or_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:690 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.or_operand`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:693 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.or_operand`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:696 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.or_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:699 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.or_operand`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:702 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.or_operand`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:705 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.or_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:709 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.xor_operand`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:712 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.xor_operand`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:715 +assert_return( + () => invoke($1, `i8x16_all_true_as_i32.xor_operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:718 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.xor_operand`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:721 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.xor_operand`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:724 +assert_return( + () => invoke($1, `i16x8_all_true_as_i32.xor_operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:727 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.xor_operand`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:730 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.xor_operand`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x0, 0x1]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:733 +assert_return( + () => invoke($1, `i32x4_all_true_as_i32.xor_operand`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:737 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.not`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:739 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.not`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:741 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.not`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:743 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.not`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:745 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.not`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:747 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.not`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:749 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.not`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:751 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.not`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:753 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.not`, [i32x4([0x0, 0x0, 0xffffffff, 0x0])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:756 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.and`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:759 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.and`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:762 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.and`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:765 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.and`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:768 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.and`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:771 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.and`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:774 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.and`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:777 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.and`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:780 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.and`, [ + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:784 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.or`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:787 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.or`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:790 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.or`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:793 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.or`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:796 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.or`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:799 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.or`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:802 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.or`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:805 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.or`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:808 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.or`, [ + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:812 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.xor`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:815 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.xor`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:818 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.xor`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:821 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.xor`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:824 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.xor`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:827 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.xor`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:830 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.xor`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:833 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.xor`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:836 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.xor`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:840 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.bitselect`, [ + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:844 +assert_return( + () => invoke($1, `i8x16_any_true_with_v128.bitselect`, [ + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xff, 0x55]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:848 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.bitselect`, [ + i16x8([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:852 +assert_return( + () => invoke($1, `i16x8_any_true_with_v128.bitselect`, [ + i16x8([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xff, 0x55]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:856 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.bitselect`, [ + i32x4([0xaa, 0xaa, 0xaa, 0xaa]), + i32x4([0x55, 0x55, 0x55, 0x55]), + i32x4([0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:860 +assert_return( + () => invoke($1, `i32x4_any_true_with_v128.bitselect`, [ + i32x4([0xaa, 0xaa, 0xaa, 0xaa]), + i32x4([0x55, 0x55, 0x55, 0x55]), + i32x4([0x55, 0x55, 0xff, 0x55]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:865 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.not`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:867 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.not`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:869 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.not`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:871 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.not`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:873 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.not`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:875 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.not`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:877 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.not`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:879 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.not`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:881 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.not`, [i32x4([0x0, 0x0, 0xffffffff, 0x0])]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:884 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.and`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:887 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.and`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:890 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.and`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:893 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.and`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:896 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.and`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:899 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.and`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:902 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.and`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:905 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.and`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:908 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.and`, [ + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:912 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.or`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:915 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.or`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:918 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.or`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:921 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.or`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:924 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.or`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:927 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.or`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:930 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.or`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:933 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.or`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:936 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.or`, [ + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + i32x4([0x0, 0x0, 0xffffffff, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:940 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.xor`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:943 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.xor`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:946 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.xor`, [ + i8x16([0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff]), + i8x16([0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:949 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.xor`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:952 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.xor`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:955 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.xor`, [ + i16x8([0x0, 0xffff, 0x0, 0xffff, 0x0, 0xffff, 0x0, 0xffff]), + i16x8([0xffff, 0x0, 0xffff, 0x0, 0xffff, 0x0, 0xffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:958 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.xor`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:961 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.xor`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:964 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.xor`, [ + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0xffffffff, 0x0, 0xffffffff, 0x0]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:968 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.bitselect`, [ + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:972 +assert_return( + () => invoke($1, `i8x16_all_true_with_v128.bitselect`, [ + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:976 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.bitselect`, [ + i16x8([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:980 +assert_return( + () => invoke($1, `i16x8_all_true_with_v128.bitselect`, [ + i16x8([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + i16x8([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:984 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.bitselect`, [ + i32x4([0xaa, 0xaa, 0xaa, 0xaa]), + i32x4([0x55, 0x55, 0x55, 0x55]), + i32x4([0x55, 0x55, 0x55, 0x55]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_boolean.wast:988 +assert_return( + () => invoke($1, `i32x4_all_true_with_v128.bitselect`, [ + i32x4([0xaa, 0xaa, 0xaa, 0xaa]), + i32x4([0x55, 0x55, 0x55, 0x55]), + i32x4([0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_boolean.wast:995 +assert_invalid( + () => instantiate(`(module (func (result i32) (v128.any_true (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:996 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.all_true (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:997 +assert_invalid( + () => instantiate(`(module (func (result i32) (v128.any_true (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:998 +assert_invalid( + () => instantiate(`(module (func (result i32) (i16x8.all_true (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:999 +assert_invalid( + () => instantiate(`(module (func (result i32) (v128.any_true (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:1000 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32x4.all_true (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:1004 +assert_malformed( + () => instantiate(`(memory 1) (func (result i32) (f32x4.any_true (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_boolean.wast:1005 +assert_malformed( + () => instantiate(`(memory 1) (func (result i32) (f32x4.all_true (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_boolean.wast:1006 +assert_malformed( + () => instantiate(`(memory 1) (func (result i32) (f64x2.any_true (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_boolean.wast:1007 +assert_malformed( + () => instantiate(`(memory 1) (func (result i32) (f64x2.all_true (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_boolean.wast:1011 +assert_invalid( + () => instantiate(`(module + (func $$v128.any_true-arg-empty (result v128) + (v128.any_true) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:1019 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.all_true-arg-empty (result v128) + (i8x16.all_true) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:1027 +assert_invalid( + () => instantiate(`(module + (func $$v128.any_true-arg-empty (result v128) + (v128.any_true) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:1035 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.all_true-arg-empty (result v128) + (i16x8.all_true) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:1043 +assert_invalid( + () => instantiate(`(module + (func $$v128.any_true-arg-empty (result v128) + (v128.any_true) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_boolean.wast:1051 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.all_true-arg-empty (result v128) + (i32x4.all_true) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_const.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_const.wast.js new file mode 100644 index 0000000000..76c05b43bc --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_const.wast.js @@ -0,0 +1,4681 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_const.wast + +// ./test/core/simd/simd_const.wast:3 +let $0 = instantiate(`(module (func (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF) drop))`); + +// ./test/core/simd/simd_const.wast:4 +let $1 = instantiate(`(module (func (v128.const i8x16 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80) drop))`); + +// ./test/core/simd/simd_const.wast:5 +let $2 = instantiate(`(module (func (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255) drop))`); + +// ./test/core/simd/simd_const.wast:6 +let $3 = instantiate(`(module (func (v128.const i8x16 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128) drop))`); + +// ./test/core/simd/simd_const.wast:7 +let $4 = instantiate(`(module (func (v128.const i16x8 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF 0xFFFF) drop))`); + +// ./test/core/simd/simd_const.wast:8 +let $5 = instantiate(`(module (func (v128.const i16x8 -0x8000 -0x8000 -0x8000 -0x8000 -0x8000 -0x8000 -0x8000 -0x8000) drop))`); + +// ./test/core/simd/simd_const.wast:9 +let $6 = instantiate(`(module (func (v128.const i16x8 65535 65535 65535 65535 65535 65535 65535 65535) drop))`); + +// ./test/core/simd/simd_const.wast:10 +let $7 = instantiate(`(module (func (v128.const i16x8 -32768 -32768 -32768 -32768 -32768 -32768 -32768 -32768) drop))`); + +// ./test/core/simd/simd_const.wast:11 +let $8 = instantiate(`(module (func (v128.const i16x8 65_535 65_535 65_535 65_535 65_535 65_535 65_535 65_535) drop))`); + +// ./test/core/simd/simd_const.wast:12 +let $9 = instantiate(`(module (func (v128.const i16x8 -32_768 -32_768 -32_768 -32_768 -32_768 -32_768 -32_768 -32_768) drop))`); + +// ./test/core/simd/simd_const.wast:13 +let $10 = instantiate(`(module (func (v128.const i16x8 0_123_45 0_123_45 0_123_45 0_123_45 0_123_45 0_123_45 0_123_45 0_123_45) drop))`); + +// ./test/core/simd/simd_const.wast:14 +let $11 = instantiate(`(module (func (v128.const i16x8 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234) drop))`); + +// ./test/core/simd/simd_const.wast:15 +let $12 = instantiate(`(module (func (v128.const i32x4 0xffffffff 0xffffffff 0xffffffff 0xffffffff) drop))`); + +// ./test/core/simd/simd_const.wast:16 +let $13 = instantiate(`(module (func (v128.const i32x4 -0x80000000 -0x80000000 -0x80000000 -0x80000000) drop))`); + +// ./test/core/simd/simd_const.wast:17 +let $14 = instantiate(`(module (func (v128.const i32x4 4294967295 4294967295 4294967295 4294967295) drop))`); + +// ./test/core/simd/simd_const.wast:18 +let $15 = instantiate(`(module (func (v128.const i32x4 -2147483648 -2147483648 -2147483648 -2147483648) drop))`); + +// ./test/core/simd/simd_const.wast:19 +let $16 = instantiate(`(module (func (v128.const i32x4 0xffff_ffff 0xffff_ffff 0xffff_ffff 0xffff_ffff) drop))`); + +// ./test/core/simd/simd_const.wast:20 +let $17 = instantiate(`(module (func (v128.const i32x4 -0x8000_0000 -0x8000_0000 -0x8000_0000 -0x8000_0000) drop))`); + +// ./test/core/simd/simd_const.wast:21 +let $18 = instantiate(`(module (func (v128.const i32x4 4_294_967_295 4_294_967_295 4_294_967_295 4_294_967_295) drop))`); + +// ./test/core/simd/simd_const.wast:22 +let $19 = instantiate(`(module (func (v128.const i32x4 -2_147_483_648 -2_147_483_648 -2_147_483_648 -2_147_483_648) drop))`); + +// ./test/core/simd/simd_const.wast:23 +let $20 = instantiate(`(module (func (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789) drop))`); + +// ./test/core/simd/simd_const.wast:24 +let $21 = instantiate(`(module (func (v128.const i32x4 0x0_9acf_fBDF 0x0_9acf_fBDF 0x0_9acf_fBDF 0x0_9acf_fBDF) drop))`); + +// ./test/core/simd/simd_const.wast:25 +let $22 = instantiate(`(module (func (v128.const i64x2 0xffffffffffffffff 0xffffffffffffffff) drop))`); + +// ./test/core/simd/simd_const.wast:26 +let $23 = instantiate(`(module (func (v128.const i64x2 -0x8000000000000000 -0x8000000000000000) drop))`); + +// ./test/core/simd/simd_const.wast:27 +let $24 = instantiate(`(module (func (v128.const i64x2 18446744073709551615 18446744073709551615) drop))`); + +// ./test/core/simd/simd_const.wast:28 +let $25 = instantiate(`(module (func (v128.const i64x2 -9223372036854775808 -9223372036854775808) drop))`); + +// ./test/core/simd/simd_const.wast:29 +let $26 = instantiate(`(module (func (v128.const i64x2 0xffff_ffff_ffff_ffff 0xffff_ffff_ffff_ffff) drop))`); + +// ./test/core/simd/simd_const.wast:30 +let $27 = instantiate(`(module (func (v128.const i64x2 -0x8000_0000_0000_0000 -0x8000_0000_0000_0000) drop))`); + +// ./test/core/simd/simd_const.wast:31 +let $28 = instantiate(`(module (func (v128.const i64x2 18_446_744_073_709_551_615 18_446_744_073_709_551_615) drop))`); + +// ./test/core/simd/simd_const.wast:32 +let $29 = instantiate(`(module (func (v128.const i64x2 -9_223_372_036_854_775_808 -9_223_372_036_854_775_808) drop))`); + +// ./test/core/simd/simd_const.wast:33 +let $30 = instantiate(`(module (func (v128.const i64x2 0_123_456_789 0_123_456_789) drop))`); + +// ./test/core/simd/simd_const.wast:34 +let $31 = instantiate(`(module (func (v128.const i64x2 0x0125_6789_ADEF_bcef 0x0125_6789_ADEF_bcef) drop))`); + +// ./test/core/simd/simd_const.wast:35 +let $32 = instantiate(`(module (func (v128.const f32x4 0x1p127 0x1p127 0x1p127 0x1p127) drop))`); + +// ./test/core/simd/simd_const.wast:36 +let $33 = instantiate(`(module (func (v128.const f32x4 -0x1p127 -0x1p127 -0x1p127 -0x1p127) drop))`); + +// ./test/core/simd/simd_const.wast:37 +let $34 = instantiate(`(module (func (v128.const f32x4 1e38 1e38 1e38 1e38) drop))`); + +// ./test/core/simd/simd_const.wast:38 +let $35 = instantiate(`(module (func (v128.const f32x4 -1e38 -1e38 -1e38 -1e38) drop))`); + +// ./test/core/simd/simd_const.wast:39 +let $36 = instantiate(`(module (func (v128.const f32x4 340282356779733623858607532500980858880 340282356779733623858607532500980858880 + 340282356779733623858607532500980858880 340282356779733623858607532500980858880) drop))`); + +// ./test/core/simd/simd_const.wast:41 +let $37 = instantiate(`(module (func (v128.const f32x4 -340282356779733623858607532500980858880 -340282356779733623858607532500980858880 + -340282356779733623858607532500980858880 -340282356779733623858607532500980858880) drop))`); + +// ./test/core/simd/simd_const.wast:43 +let $38 = instantiate(`(module (func (v128.const f32x4 nan:0x1 nan:0x1 nan:0x1 nan:0x1) drop))`); + +// ./test/core/simd/simd_const.wast:44 +let $39 = instantiate(`(module (func (v128.const f32x4 nan:0x7f_ffff nan:0x7f_ffff nan:0x7f_ffff nan:0x7f_ffff) drop))`); + +// ./test/core/simd/simd_const.wast:45 +let $40 = instantiate(`(module (func (v128.const f32x4 0123456789 0123456789 0123456789 0123456789) drop))`); + +// ./test/core/simd/simd_const.wast:46 +let $41 = instantiate(`(module (func (v128.const f32x4 0123456789e019 0123456789e019 0123456789e019 0123456789e019) drop))`); + +// ./test/core/simd/simd_const.wast:47 +let $42 = instantiate(`(module (func (v128.const f32x4 0123456789e+019 0123456789e+019 0123456789e+019 0123456789e+019) drop))`); + +// ./test/core/simd/simd_const.wast:48 +let $43 = instantiate(`(module (func (v128.const f32x4 0123456789e-019 0123456789e-019 0123456789e-019 0123456789e-019) drop))`); + +// ./test/core/simd/simd_const.wast:49 +let $44 = instantiate(`(module (func (v128.const f32x4 0123456789. 0123456789. 0123456789. 0123456789.) drop))`); + +// ./test/core/simd/simd_const.wast:50 +let $45 = instantiate(`(module (func (v128.const f32x4 0123456789.e019 0123456789.e019 0123456789.e019 0123456789.e019) drop))`); + +// ./test/core/simd/simd_const.wast:51 +let $46 = instantiate(`(module (func (v128.const f32x4 0123456789.e+019 0123456789.e+019 0123456789.e+019 0123456789.e+019) drop))`); + +// ./test/core/simd/simd_const.wast:52 +let $47 = instantiate(`(module (func (v128.const f32x4 0123456789.e-019 0123456789.e-019 0123456789.e-019 0123456789.e-019) drop))`); + +// ./test/core/simd/simd_const.wast:53 +let $48 = instantiate(`(module (func (v128.const f32x4 0123456789.0123456789 0123456789.0123456789 0123456789.0123456789 0123456789.0123456789) drop))`); + +// ./test/core/simd/simd_const.wast:54 +let $49 = instantiate(`(module (func (v128.const f32x4 0123456789.0123456789e019 0123456789.0123456789e019 0123456789.0123456789e019 0123456789.0123456789e019) drop))`); + +// ./test/core/simd/simd_const.wast:55 +let $50 = instantiate(`(module (func (v128.const f32x4 0123456789.0123456789e+019 0123456789.0123456789e+019 0123456789.0123456789e+019 0123456789.0123456789e+019) drop))`); + +// ./test/core/simd/simd_const.wast:56 +let $51 = instantiate(`(module (func (v128.const f32x4 0123456789.0123456789e-019 0123456789.0123456789e-019 0123456789.0123456789e-019 0123456789.0123456789e-019) drop))`); + +// ./test/core/simd/simd_const.wast:57 +let $52 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF 0x0123456789ABCDEF 0x0123456789ABCDEF 0x0123456789ABCDEF) drop))`); + +// ./test/core/simd/simd_const.wast:58 +let $53 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEFp019 0x0123456789ABCDEFp019 0x0123456789ABCDEFp019 0x0123456789ABCDEFp019) drop))`); + +// ./test/core/simd/simd_const.wast:59 +let $54 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEFp+019 0x0123456789ABCDEFp+019 0x0123456789ABCDEFp+019 0x0123456789ABCDEFp+019) drop))`); + +// ./test/core/simd/simd_const.wast:60 +let $55 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEFp-019 0x0123456789ABCDEFp-019 0x0123456789ABCDEFp-019 0x0123456789ABCDEFp-019) drop))`); + +// ./test/core/simd/simd_const.wast:61 +let $56 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF. 0x0123456789ABCDEF. 0x0123456789ABCDEF. 0x0123456789ABCDEF.) drop))`); + +// ./test/core/simd/simd_const.wast:62 +let $57 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF.p019 0x0123456789ABCDEF.p019 0x0123456789ABCDEF.p019 0x0123456789ABCDEF.p019) drop))`); + +// ./test/core/simd/simd_const.wast:63 +let $58 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF.p+019 0x0123456789ABCDEF.p+019 0x0123456789ABCDEF.p+019 0x0123456789ABCDEF.p+019) drop))`); + +// ./test/core/simd/simd_const.wast:64 +let $59 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF.p-019 0x0123456789ABCDEF.p-019 0x0123456789ABCDEF.p-019 0x0123456789ABCDEF.p-019) drop))`); + +// ./test/core/simd/simd_const.wast:65 +let $60 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF.019aF 0x0123456789ABCDEF.019aF 0x0123456789ABCDEF.019aF 0x0123456789ABCDEF.019aF) drop))`); + +// ./test/core/simd/simd_const.wast:66 +let $61 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF.019aFp019 0x0123456789ABCDEF.019aFp019 0x0123456789ABCDEF.019aFp019 0x0123456789ABCDEF.019aFp019) drop))`); + +// ./test/core/simd/simd_const.wast:67 +let $62 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF.019aFp+019 0x0123456789ABCDEF.019aFp+019 0x0123456789ABCDEF.019aFp+019 0x0123456789ABCDEF.019aFp+019) drop))`); + +// ./test/core/simd/simd_const.wast:68 +let $63 = instantiate(`(module (func (v128.const f32x4 0x0123456789ABCDEF.019aFp-019 0x0123456789ABCDEF.019aFp-019 0x0123456789ABCDEF.019aFp-019 0x0123456789ABCDEF.019aFp-019) drop))`); + +// ./test/core/simd/simd_const.wast:69 +let $64 = instantiate(`(module (func (v128.const f64x2 0x1p1023 0x1p1023) drop))`); + +// ./test/core/simd/simd_const.wast:70 +let $65 = instantiate(`(module (func (v128.const f64x2 -0x1p1023 -0x1p1023) drop))`); + +// ./test/core/simd/simd_const.wast:71 +let $66 = instantiate(`(module (func (v128.const f64x2 1e308 1e308) drop))`); + +// ./test/core/simd/simd_const.wast:72 +let $67 = instantiate(`(module (func (v128.const f64x2 -1e308 -1e308) drop))`); + +// ./test/core/simd/simd_const.wast:73 +let $68 = instantiate(`(module (func (v128.const f64x2 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368 + 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368) drop))`); + +// ./test/core/simd/simd_const.wast:75 +let $69 = instantiate(`(module (func (v128.const f64x2 -179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368 + -179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368) drop))`); + +// ./test/core/simd/simd_const.wast:77 +let $70 = instantiate(`(module (func (v128.const f64x2 nan:0x1 nan:0x1) drop))`); + +// ./test/core/simd/simd_const.wast:78 +let $71 = instantiate(`(module (func (v128.const f64x2 nan:0xf_ffff_ffff_ffff nan:0xf_ffff_ffff_ffff) drop))`); + +// ./test/core/simd/simd_const.wast:79 +let $72 = instantiate(`(module (func (v128.const f64x2 0123456789 0123456789) drop))`); + +// ./test/core/simd/simd_const.wast:80 +let $73 = instantiate(`(module (func (v128.const f64x2 0123456789e019 0123456789e019) drop))`); + +// ./test/core/simd/simd_const.wast:81 +let $74 = instantiate(`(module (func (v128.const f64x2 0123456789e+019 0123456789e+019) drop))`); + +// ./test/core/simd/simd_const.wast:82 +let $75 = instantiate(`(module (func (v128.const f64x2 0123456789e-019 0123456789e-019) drop))`); + +// ./test/core/simd/simd_const.wast:83 +let $76 = instantiate(`(module (func (v128.const f64x2 0123456789. 0123456789.) drop))`); + +// ./test/core/simd/simd_const.wast:84 +let $77 = instantiate(`(module (func (v128.const f64x2 0123456789.e019 0123456789.e019) drop))`); + +// ./test/core/simd/simd_const.wast:85 +let $78 = instantiate(`(module (func (v128.const f64x2 0123456789.e+019 0123456789.e+019) drop))`); + +// ./test/core/simd/simd_const.wast:86 +let $79 = instantiate(`(module (func (v128.const f64x2 0123456789.e-019 0123456789.e-019) drop))`); + +// ./test/core/simd/simd_const.wast:87 +let $80 = instantiate(`(module (func (v128.const f64x2 0123456789.0123456789 0123456789.0123456789) drop))`); + +// ./test/core/simd/simd_const.wast:88 +let $81 = instantiate(`(module (func (v128.const f64x2 0123456789.0123456789e019 0123456789.0123456789e019) drop))`); + +// ./test/core/simd/simd_const.wast:89 +let $82 = instantiate(`(module (func (v128.const f64x2 0123456789.0123456789e+019 0123456789.0123456789e+019) drop))`); + +// ./test/core/simd/simd_const.wast:90 +let $83 = instantiate(`(module (func (v128.const f64x2 0123456789.0123456789e-019 0123456789.0123456789e-019) drop))`); + +// ./test/core/simd/simd_const.wast:91 +let $84 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef 0x0123456789ABCDEFabcdef) drop))`); + +// ./test/core/simd/simd_const.wast:92 +let $85 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdefp019 0x0123456789ABCDEFabcdefp019) drop))`); + +// ./test/core/simd/simd_const.wast:93 +let $86 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdefp+019 0x0123456789ABCDEFabcdefp+019) drop))`); + +// ./test/core/simd/simd_const.wast:94 +let $87 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdefp-019 0x0123456789ABCDEFabcdefp-019) drop))`); + +// ./test/core/simd/simd_const.wast:95 +let $88 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef. 0x0123456789ABCDEFabcdef.) drop))`); + +// ./test/core/simd/simd_const.wast:96 +let $89 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef.p019 0x0123456789ABCDEFabcdef.p019) drop))`); + +// ./test/core/simd/simd_const.wast:97 +let $90 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef.p+019 0x0123456789ABCDEFabcdef.p+019) drop))`); + +// ./test/core/simd/simd_const.wast:98 +let $91 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef.p-019 0x0123456789ABCDEFabcdef.p-019) drop))`); + +// ./test/core/simd/simd_const.wast:99 +let $92 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdef 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdef) drop))`); + +// ./test/core/simd/simd_const.wast:100 +let $93 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp019 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp019) drop))`); + +// ./test/core/simd/simd_const.wast:101 +let $94 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp+019 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp+019) drop))`); + +// ./test/core/simd/simd_const.wast:102 +let $95 = instantiate(`(module (func (v128.const f64x2 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp-019 0x0123456789ABCDEFabcdef.0123456789ABCDEFabcdefp-019) drop))`); + +// ./test/core/simd/simd_const.wast:106 +let $96 = instantiate(`(module (func (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF + -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80) drop))`); + +// ./test/core/simd/simd_const.wast:108 +let $97 = instantiate(`(module (func (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 255 255 255 255 + -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80 -0x80) drop))`); + +// ./test/core/simd/simd_const.wast:110 +let $98 = instantiate(`(module (func (v128.const i8x16 0xFF 0xFF 0xFF 0xFF 255 255 255 255 + -0x80 -0x80 -0x80 -0x80 -128 -128 -128 -128) drop))`); + +// ./test/core/simd/simd_const.wast:112 +let $99 = instantiate(`(module (func (v128.const i16x8 0xFF 0xFF 0xFF 0xFF -0x8000 -0x8000 -0x8000 -0x8000) drop))`); + +// ./test/core/simd/simd_const.wast:113 +let $100 = instantiate(`(module (func (v128.const i16x8 0xFF 0xFF 65535 65535 -0x8000 -0x8000 -0x8000 -0x8000) drop))`); + +// ./test/core/simd/simd_const.wast:114 +let $101 = instantiate(`(module (func (v128.const i16x8 0xFF 0xFF 65535 65535 -0x8000 -0x8000 -32768 -32768) drop))`); + +// ./test/core/simd/simd_const.wast:115 +let $102 = instantiate(`(module (func (v128.const i32x4 0xffffffff 0xffffffff -0x80000000 -0x80000000) drop))`); + +// ./test/core/simd/simd_const.wast:116 +let $103 = instantiate(`(module (func (v128.const i32x4 0xffffffff 4294967295 -0x80000000 -0x80000000) drop))`); + +// ./test/core/simd/simd_const.wast:117 +let $104 = instantiate(`(module (func (v128.const i32x4 0xffffffff 4294967295 -0x80000000 -2147483648) drop))`); + +// ./test/core/simd/simd_const.wast:118 +let $105 = instantiate(`(module (func (v128.const f32x4 0x1p127 0x1p127 -0x1p127 -1e38) drop))`); + +// ./test/core/simd/simd_const.wast:119 +let $106 = instantiate(`(module (func (v128.const f32x4 0x1p127 340282356779733623858607532500980858880 -1e38 -340282356779733623858607532500980858880) drop))`); + +// ./test/core/simd/simd_const.wast:120 +let $107 = instantiate(`(module (func (v128.const f32x4 nan -nan inf -inf) drop))`); + +// ./test/core/simd/simd_const.wast:121 +let $108 = instantiate(`(module (func (v128.const i64x2 0xffffffffffffffff 0x8000000000000000) drop))`); + +// ./test/core/simd/simd_const.wast:122 +let $109 = instantiate(`(module (func (v128.const i64x2 0xffffffffffffffff -9223372036854775808) drop))`); + +// ./test/core/simd/simd_const.wast:123 +let $110 = instantiate(`(module (func (v128.const f64x2 0x1p1023 -1e308) drop))`); + +// ./test/core/simd/simd_const.wast:124 +let $111 = instantiate(`(module (func (v128.const f64x2 nan -inf) drop))`); + +// ./test/core/simd/simd_const.wast:128 +let $112 = instantiate(`(module (memory 1))`); + +// ./test/core/simd/simd_const.wast:129 +assert_malformed( + () => instantiate(`(func (v128.const i8x16 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100 0x100) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:133 +assert_malformed( + () => instantiate(`(func (v128.const i8x16 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81 -0x81) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:137 +assert_malformed( + () => instantiate(`(func (v128.const i8x16 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256 256) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:141 +assert_malformed( + () => instantiate(`(func (v128.const i8x16 -129 -129 -129 -129 -129 -129 -129 -129 -129 -129 -129 -129 -129 -129 -129 -129) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:145 +assert_malformed( + () => instantiate(`(func (v128.const i16x8 0x10000 0x10000 0x10000 0x10000 0x10000 0x10000 0x10000 0x10000) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:149 +assert_malformed( + () => instantiate(`(func (v128.const i16x8 -0x8001 -0x8001 -0x8001 -0x8001 -0x8001 -0x8001 -0x8001 -0x8001) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:153 +assert_malformed( + () => instantiate(`(func (v128.const i16x8 65536 65536 65536 65536 65536 65536 65536 65536) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:157 +assert_malformed( + () => instantiate(`(func (v128.const i16x8 -32769 -32769 -32769 -32769 -32769 -32769 -32769 -32769) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:161 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 0x100000000 0x100000000 0x100000000 0x100000000) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:165 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 -0x80000001 -0x80000001 -0x80000001 -0x80000001) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:169 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 4294967296 4294967296 4294967296 4294967296) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:173 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 -2147483649 -2147483649 -2147483649 -2147483649) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:177 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x1p128 0x1p128 0x1p128 0x1p128) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:181 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 -0x1p128 -0x1p128 -0x1p128 -0x1p128) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:185 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 1e39 1e39 1e39 1e39) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:189 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 -1e39 -1e39 -1e39 -1e39) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:193 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 340282356779733661637539395458142568448 340282356779733661637539395458142568448 340282356779733661637539395458142568448 340282356779733661637539395458142568448) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:198 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 -340282356779733661637539395458142568448 -340282356779733661637539395458142568448 -340282356779733661637539395458142568448 -340282356779733661637539395458142568448) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:204 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 nan:0x80_0000 nan:0x80_0000 nan:0x80_0000 nan:0x80_0000) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:209 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552 269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:214 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 -269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552 -269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:220 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 nan:0x10_0000_0000_0000 nan:0x10_0000_0000_0000) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:226 +assert_malformed(() => instantiate(`(func (v128.const) drop) `), `unexpected token`); + +// ./test/core/simd/simd_const.wast:231 +assert_malformed( + () => instantiate(`(func (v128.const 0 0 0 0) drop) `), + `unexpected token`, +); + +// ./test/core/simd/simd_const.wast:235 +assert_malformed( + () => instantiate(`(func (v128.const i8x16) drop) `), + `wrong number of lane literals`, +); + +// ./test/core/simd/simd_const.wast:239 +assert_malformed( + () => instantiate(`(func (v128.const i8x16 0x 0x 0x 0x 0x 0x 0x 0x 0x 0x 0x 0x 0x 0x 0x 0x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:243 +assert_malformed( + () => instantiate(`(func (v128.const i8x16 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:247 +assert_malformed( + () => instantiate(`(func (v128.const i8x16 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:252 +assert_malformed( + () => instantiate(`(func (v128.const i16x8) drop) `), + `wrong number of lane literals`, +); + +// ./test/core/simd/simd_const.wast:256 +assert_malformed( + () => instantiate(`(func (v128.const i16x8 0x 0x 0x 0x 0x 0x 0x 0x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:260 +assert_malformed( + () => instantiate(`(func (v128.const i16x8 1x 1x 1x 1x 1x 1x 1x 1x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:264 +assert_malformed( + () => instantiate(`(func (v128.const i16x8 0xg 0xg 0xg 0xg 0xg 0xg 0xg 0xg) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:269 +assert_malformed( + () => instantiate(`(func (v128.const i32x4) drop) `), + `wrong number of lane literals`, +); + +// ./test/core/simd/simd_const.wast:273 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 0x 0x 0x 0x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:277 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 1x 1x 1x 1x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:281 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 0xg 0xg 0xg 0xg) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:286 +assert_malformed( + () => instantiate(`(func (v128.const i64x2) drop) `), + `wrong number of lane literals`, +); + +// ./test/core/simd/simd_const.wast:290 +assert_malformed( + () => instantiate(`(func (v128.const i64x2 0x 0x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:294 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 1x 1x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:298 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0xg 0xg) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:303 +assert_malformed( + () => instantiate(`(func (v128.const f32x4) drop) `), + `wrong number of lane literals`, +); + +// ./test/core/simd/simd_const.wast:307 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 .0 .0 .0 .0) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:311 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 .0e0 .0e0 .0e0 .0e0) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:315 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0e 0e 0e 0e) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:319 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0e+ 0e+ 0e+ 0e+) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:323 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0.0e 0.0e 0.0e 0.0e) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:327 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0.0e- 0.0e- 0.0e- 0.0e-) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:331 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x 0x 0x 0x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:335 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 1x 1x 1x 1x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:339 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0xg 0xg 0xg 0xg) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:343 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x. 0x. 0x. 0x.) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:347 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x0.g 0x0.g 0x0.g 0x0.g) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:351 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x0p 0x0p 0x0p 0x0p) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:355 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x0p+ 0x0p+ 0x0p+ 0x0p+) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:359 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x0p- 0x0p- 0x0p- 0x0p-) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:363 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x0.0p 0x0.0p 0x0.0p 0x0.0p) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:367 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x0.0p+ 0x0.0p+ 0x0.0p+ 0x0.0p+) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:371 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x0.0p- 0x0.0p- 0x0.0p- 0x0.0p-) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:375 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 0x0pA 0x0pA 0x0pA 0x0pA) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:379 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 nan:1 nan:1 nan:1 nan:1) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:383 +assert_malformed( + () => instantiate(`(func (v128.const f32x4 nan:0x0 nan:0x0 nan:0x0 nan:0x0) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:388 +assert_malformed( + () => instantiate(`(func (v128.const f64x2) drop) `), + `wrong number of lane literals`, +); + +// ./test/core/simd/simd_const.wast:392 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 .0 .0) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:396 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 .0e0 .0e0) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:400 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0e 0e) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:404 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0e+ 0e+) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:408 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0.0e+ 0.0e+) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:412 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0.0e- 0.0e-) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:416 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x 0x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:420 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 1x 1x) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:424 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0xg 0xg) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:428 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x. 0x.) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:432 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x0.g 0x0.g) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:436 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x0p 0x0p) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:440 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x0p+ 0x0p+) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:444 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x0p- 0x0p-) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:448 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x0.0p 0x0.0p) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:452 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x0.0p+ 0x0.0p+) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:456 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x0.0p- 0x0.0p-) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:460 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 0x0pA 0x0pA) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:464 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 nan:1 nan:1) drop) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:468 +assert_malformed( + () => instantiate(`(func (v128.const f64x2 nan:0x0 nan:0x0) drop) `), + `constant out of range`, +); + +// ./test/core/simd/simd_const.wast:475 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 0x10000000000000000 0x10000000000000000) drop) `), + `wrong number of lane literals`, +); + +// ./test/core/simd/simd_const.wast:481 +assert_malformed( + () => instantiate(`(func (v128.const i32x4 0x1 0x1 0x1 0x1 0x1) drop) `), + `wrong number of lane literals`, +); + +// ./test/core/simd/simd_const.wast:489 +let $113 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x1.00000100000000000p-50 +0x1.00000100000000000p-50 +0x1.00000100000000000p-50 +0x1.00000100000000000p-50)))`); + +// ./test/core/simd/simd_const.wast:490 +assert_return( + () => invoke($113, `f`, []), + [ + new F32x4Pattern( + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + ), + ], +); + +// ./test/core/simd/simd_const.wast:491 +let $114 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x1.00000100000000000p-50 -0x1.00000100000000000p-50 -0x1.00000100000000000p-50 -0x1.00000100000000000p-50)))`); + +// ./test/core/simd/simd_const.wast:492 +assert_return( + () => invoke($114, `f`, []), + [ + new F32x4Pattern( + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + ), + ], +); + +// ./test/core/simd/simd_const.wast:493 +let $115 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x1.00000500000000001p-50 +0x1.00000500000000001p-50 +0x1.00000500000000001p-50 +0x1.00000500000000001p-50)))`); + +// ./test/core/simd/simd_const.wast:494 +assert_return( + () => invoke($115, `f`, []), + [ + new F32x4Pattern( + value("f32", 0.0000000000000008881787), + value("f32", 0.0000000000000008881787), + value("f32", 0.0000000000000008881787), + value("f32", 0.0000000000000008881787), + ), + ], +); + +// ./test/core/simd/simd_const.wast:495 +let $116 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x1.00000500000000001p-50 -0x1.00000500000000001p-50 -0x1.00000500000000001p-50 -0x1.00000500000000001p-50)))`); + +// ./test/core/simd/simd_const.wast:496 +assert_return( + () => invoke($116, `f`, []), + [ + new F32x4Pattern( + value("f32", -0.0000000000000008881787), + value("f32", -0.0000000000000008881787), + value("f32", -0.0000000000000008881787), + value("f32", -0.0000000000000008881787), + ), + ], +); + +// ./test/core/simd/simd_const.wast:498 +let $117 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x4000.004000000p-64 +0x4000.004000000p-64 +0x4000.004000000p-64 +0x4000.004000000p-64)))`); + +// ./test/core/simd/simd_const.wast:499 +assert_return( + () => invoke($117, `f`, []), + [ + new F32x4Pattern( + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + ), + ], +); + +// ./test/core/simd/simd_const.wast:500 +let $118 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x4000.004000000p-64 -0x4000.004000000p-64 -0x4000.004000000p-64 -0x4000.004000000p-64)))`); + +// ./test/core/simd/simd_const.wast:501 +assert_return( + () => invoke($118, `f`, []), + [ + new F32x4Pattern( + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + ), + ], +); + +// ./test/core/simd/simd_const.wast:502 +let $119 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x4000.014000001p-64 +0x4000.014000001p-64 +0x4000.014000001p-64 +0x4000.014000001p-64)))`); + +// ./test/core/simd/simd_const.wast:503 +assert_return( + () => invoke($119, `f`, []), + [ + new F32x4Pattern( + value("f32", 0.0000000000000008881787), + value("f32", 0.0000000000000008881787), + value("f32", 0.0000000000000008881787), + value("f32", 0.0000000000000008881787), + ), + ], +); + +// ./test/core/simd/simd_const.wast:504 +let $120 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x4000.014000001p-64 -0x4000.014000001p-64 -0x4000.014000001p-64 -0x4000.014000001p-64)))`); + +// ./test/core/simd/simd_const.wast:505 +assert_return( + () => invoke($120, `f`, []), + [ + new F32x4Pattern( + value("f32", -0.0000000000000008881787), + value("f32", -0.0000000000000008881787), + value("f32", -0.0000000000000008881787), + value("f32", -0.0000000000000008881787), + ), + ], +); + +// ./test/core/simd/simd_const.wast:507 +let $121 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +8.8817847263968443573e-16 +8.8817847263968443573e-16 +8.8817847263968443573e-16 +8.8817847263968443573e-16)))`); + +// ./test/core/simd/simd_const.wast:508 +assert_return( + () => invoke($121, `f`, []), + [ + new F32x4Pattern( + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + value("f32", 0.0000000000000008881784), + ), + ], +); + +// ./test/core/simd/simd_const.wast:509 +let $122 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -8.8817847263968443573e-16 -8.8817847263968443573e-16 -8.8817847263968443573e-16 -8.8817847263968443573e-16)))`); + +// ./test/core/simd/simd_const.wast:510 +assert_return( + () => invoke($122, `f`, []), + [ + new F32x4Pattern( + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + value("f32", -0.0000000000000008881784), + ), + ], +); + +// ./test/core/simd/simd_const.wast:511 +let $123 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +8.8817857851880284253e-16 +8.8817857851880284253e-16 +8.8817857851880284253e-16 +8.8817857851880284253e-16)))`); + +// ./test/core/simd/simd_const.wast:512 +assert_return( + () => invoke($123, `f`, []), + [ + new F32x4Pattern( + value("f32", 0.0000000000000008881786), + value("f32", 0.0000000000000008881786), + value("f32", 0.0000000000000008881786), + value("f32", 0.0000000000000008881786), + ), + ], +); + +// ./test/core/simd/simd_const.wast:513 +let $124 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -8.8817857851880284253e-16 -8.8817857851880284253e-16 -8.8817857851880284253e-16 -8.8817857851880284253e-16)))`); + +// ./test/core/simd/simd_const.wast:514 +assert_return( + () => invoke($124, `f`, []), + [ + new F32x4Pattern( + value("f32", -0.0000000000000008881786), + value("f32", -0.0000000000000008881786), + value("f32", -0.0000000000000008881786), + value("f32", -0.0000000000000008881786), + ), + ], +); + +// ./test/core/simd/simd_const.wast:517 +let $125 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x1.00000100000000000p+50 +0x1.00000100000000000p+50 +0x1.00000100000000000p+50 +0x1.00000100000000000p+50)))`); + +// ./test/core/simd/simd_const.wast:518 +assert_return( + () => invoke($125, `f`, []), + [ + new F32x4Pattern( + value("f32", 1125899900000000), + value("f32", 1125899900000000), + value("f32", 1125899900000000), + value("f32", 1125899900000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:519 +let $126 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x1.00000100000000000p+50 -0x1.00000100000000000p+50 -0x1.00000100000000000p+50 -0x1.00000100000000000p+50)))`); + +// ./test/core/simd/simd_const.wast:520 +assert_return( + () => invoke($126, `f`, []), + [ + new F32x4Pattern( + value("f32", -1125899900000000), + value("f32", -1125899900000000), + value("f32", -1125899900000000), + value("f32", -1125899900000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:521 +let $127 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x1.00000500000000001p+50 +0x1.00000500000000001p+50 +0x1.00000500000000001p+50 +0x1.00000500000000001p+50)))`); + +// ./test/core/simd/simd_const.wast:522 +assert_return( + () => invoke($127, `f`, []), + [ + new F32x4Pattern( + value("f32", 1125900300000000), + value("f32", 1125900300000000), + value("f32", 1125900300000000), + value("f32", 1125900300000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:523 +let $128 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x1.00000500000000001p+50 -0x1.00000500000000001p+50 -0x1.00000500000000001p+50 -0x1.00000500000000001p+50)))`); + +// ./test/core/simd/simd_const.wast:524 +assert_return( + () => invoke($128, `f`, []), + [ + new F32x4Pattern( + value("f32", -1125900300000000), + value("f32", -1125900300000000), + value("f32", -1125900300000000), + value("f32", -1125900300000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:526 +let $129 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x4000004000000 +0x4000004000000 +0x4000004000000 +0x4000004000000)))`); + +// ./test/core/simd/simd_const.wast:527 +assert_return( + () => invoke($129, `f`, []), + [ + new F32x4Pattern( + value("f32", 1125899900000000), + value("f32", 1125899900000000), + value("f32", 1125899900000000), + value("f32", 1125899900000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:528 +let $130 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x4000004000000 -0x4000004000000 -0x4000004000000 -0x4000004000000)))`); + +// ./test/core/simd/simd_const.wast:529 +assert_return( + () => invoke($130, `f`, []), + [ + new F32x4Pattern( + value("f32", -1125899900000000), + value("f32", -1125899900000000), + value("f32", -1125899900000000), + value("f32", -1125899900000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:530 +let $131 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x400000c000000 +0x400000c000000 +0x400000c000000 +0x400000c000000)))`); + +// ./test/core/simd/simd_const.wast:531 +assert_return( + () => invoke($131, `f`, []), + [ + new F32x4Pattern( + value("f32", 1125900200000000), + value("f32", 1125900200000000), + value("f32", 1125900200000000), + value("f32", 1125900200000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:532 +let $132 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x400000c000000 -0x400000c000000 -0x400000c000000 -0x400000c000000)))`); + +// ./test/core/simd/simd_const.wast:533 +assert_return( + () => invoke($132, `f`, []), + [ + new F32x4Pattern( + value("f32", -1125900200000000), + value("f32", -1125900200000000), + value("f32", -1125900200000000), + value("f32", -1125900200000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:535 +let $133 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +1125899973951488 +1125899973951488 +1125899973951488 +1125899973951488)))`); + +// ./test/core/simd/simd_const.wast:536 +assert_return( + () => invoke($133, `f`, []), + [ + new F32x4Pattern( + value("f32", 1125899900000000), + value("f32", 1125899900000000), + value("f32", 1125899900000000), + value("f32", 1125899900000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:537 +let $134 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -1125899973951488 -1125899973951488 -1125899973951488 -1125899973951488)))`); + +// ./test/core/simd/simd_const.wast:538 +assert_return( + () => invoke($134, `f`, []), + [ + new F32x4Pattern( + value("f32", -1125899900000000), + value("f32", -1125899900000000), + value("f32", -1125899900000000), + value("f32", -1125899900000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:539 +let $135 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +1125900108169216 +1125900108169216 +1125900108169216 +1125900108169216)))`); + +// ./test/core/simd/simd_const.wast:540 +assert_return( + () => invoke($135, `f`, []), + [ + new F32x4Pattern( + value("f32", 1125900200000000), + value("f32", 1125900200000000), + value("f32", 1125900200000000), + value("f32", 1125900200000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:541 +let $136 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -1125900108169216 -1125900108169216 -1125900108169216 -1125900108169216)))`); + +// ./test/core/simd/simd_const.wast:542 +assert_return( + () => invoke($136, `f`, []), + [ + new F32x4Pattern( + value("f32", -1125900200000000), + value("f32", -1125900200000000), + value("f32", -1125900200000000), + value("f32", -1125900200000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:545 +let $137 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x0.00000100000000000p-126 +0x0.00000100000000000p-126 +0x0.00000100000000000p-126 +0x0.00000100000000000p-126)))`); + +// ./test/core/simd/simd_const.wast:546 +assert_return( + () => invoke($137, `f`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_const.wast:547 +let $138 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x0.00000100000000000p-126 -0x0.00000100000000000p-126 -0x0.00000100000000000p-126 -0x0.00000100000000000p-126)))`); + +// ./test/core/simd/simd_const.wast:548 +assert_return( + () => invoke($138, `f`, []), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_const.wast:549 +let $139 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x0.00000500000000001p-126 +0x0.00000500000000001p-126 +0x0.00000500000000001p-126 +0x0.00000500000000001p-126)))`); + +// ./test/core/simd/simd_const.wast:550 +assert_return( + () => invoke($139, `f`, []), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000004), + value("f32", 0.000000000000000000000000000000000000000000004), + value("f32", 0.000000000000000000000000000000000000000000004), + value("f32", 0.000000000000000000000000000000000000000000004), + ), + ], +); + +// ./test/core/simd/simd_const.wast:551 +let $140 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x0.00000500000000001p-126 -0x0.00000500000000001p-126 -0x0.00000500000000001p-126 -0x0.00000500000000001p-126)))`); + +// ./test/core/simd/simd_const.wast:552 +assert_return( + () => invoke($140, `f`, []), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000004), + value("f32", -0.000000000000000000000000000000000000000000004), + value("f32", -0.000000000000000000000000000000000000000000004), + value("f32", -0.000000000000000000000000000000000000000000004), + ), + ], +); + +// ./test/core/simd/simd_const.wast:555 +let $141 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x1.fffffe8p127 +0x1.fffffe8p127 +0x1.fffffe8p127 +0x1.fffffe8p127)))`); + +// ./test/core/simd/simd_const.wast:556 +assert_return( + () => invoke($141, `f`, []), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:557 +let $142 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x1.fffffe8p127 -0x1.fffffe8p127 -0x1.fffffe8p127 -0x1.fffffe8p127)))`); + +// ./test/core/simd/simd_const.wast:558 +assert_return( + () => invoke($142, `f`, []), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:559 +let $143 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 +0x1.fffffefffffffffffp127 +0x1.fffffefffffffffffp127 +0x1.fffffefffffffffffp127 +0x1.fffffefffffffffffp127)))`); + +// ./test/core/simd/simd_const.wast:560 +assert_return( + () => invoke($143, `f`, []), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:561 +let $144 = instantiate(`(module (func (export "f") (result v128) (v128.const f32x4 -0x1.fffffefffffffffffp127 -0x1.fffffefffffffffffp127 -0x1.fffffefffffffffffp127 -0x1.fffffefffffffffffp127)))`); + +// ./test/core/simd/simd_const.wast:562 +assert_return( + () => invoke($144, `f`, []), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:565 +let $145 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000000p-600)))`); + +// ./test/core/simd/simd_const.wast:566 +assert_return( + () => invoke($145, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102884), + ], +); + +// ./test/core/simd/simd_const.wast:567 +let $146 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000000p-600)))`); + +// ./test/core/simd/simd_const.wast:568 +assert_return( + () => invoke($146, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102884), + ], +); + +// ./test/core/simd/simd_const.wast:569 +let $147 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000080000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:570 +assert_return( + () => invoke($147, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:571 +let $148 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000080000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:572 +assert_return( + () => invoke($148, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:573 +let $149 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.0000000000000fffffffffffp-600)))`); + +// ./test/core/simd/simd_const.wast:574 +assert_return( + () => invoke($149, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:575 +let $150 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.0000000000000fffffffffffp-600)))`); + +// ./test/core/simd/simd_const.wast:576 +assert_return( + () => invoke($150, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:577 +let $151 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000000p-600)))`); + +// ./test/core/simd/simd_const.wast:578 +assert_return( + () => invoke($151, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:579 +let $152 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000000p-600)))`); + +// ./test/core/simd/simd_const.wast:580 +assert_return( + () => invoke($152, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:581 +let $153 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000100000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:582 +assert_return( + () => invoke($153, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:583 +let $154 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000100000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:584 +assert_return( + () => invoke($154, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:585 +let $155 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.00000000000017ffffffffffp-600)))`); + +// ./test/core/simd/simd_const.wast:586 +assert_return( + () => invoke($155, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:587 +let $156 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.00000000000017ffffffffffp-600)))`); + +// ./test/core/simd/simd_const.wast:588 +assert_return( + () => invoke($156, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:589 +let $157 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000000p-600)))`); + +// ./test/core/simd/simd_const.wast:590 +assert_return( + () => invoke($157, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:591 +let $158 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000000p-600)))`); + +// ./test/core/simd/simd_const.wast:592 +assert_return( + () => invoke($158, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:593 +let $159 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000180000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:594 +assert_return( + () => invoke($159, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:595 +let $160 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000180000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:596 +assert_return( + () => invoke($160, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:597 +let $161 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.0000000000001fffffffffffp-600)))`); + +// ./test/core/simd/simd_const.wast:598 +assert_return( + () => invoke($161, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:599 +let $162 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.0000000000001fffffffffffp-600)))`); + +// ./test/core/simd/simd_const.wast:600 +assert_return( + () => invoke($162, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:601 +let $163 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000000p-600)))`); + +// ./test/core/simd/simd_const.wast:602 +assert_return( + () => invoke($163, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:603 +let $164 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000000p-600)))`); + +// ./test/core/simd/simd_const.wast:604 +assert_return( + () => invoke($164, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:605 +let $165 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000200000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:606 +assert_return( + () => invoke($165, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:607 +let $166 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000200000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:608 +assert_return( + () => invoke($166, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:609 +let $167 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.00000000000027ffffffffffp-600)))`); + +// ./test/core/simd/simd_const.wast:610 +assert_return( + () => invoke($167, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:611 +let $168 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.00000000000027ffffffffffp-600)))`); + +// ./test/core/simd/simd_const.wast:612 +assert_return( + () => invoke($168, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:613 +let $169 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x1.000000000000280000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:614 +assert_return( + () => invoke($169, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028857), + ], +); + +// ./test/core/simd/simd_const.wast:615 +let $170 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x1.000000000000280000000001p-600)))`); + +// ./test/core/simd/simd_const.wast:616 +assert_return( + () => invoke($170, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028857), + ], +); + +// ./test/core/simd/simd_const.wast:617 +let $171 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000400000000000p-627)))`); + +// ./test/core/simd/simd_const.wast:618 +assert_return( + () => invoke($171, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102884), + ], +); + +// ./test/core/simd/simd_const.wast:619 +let $172 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000400000000000p-627)))`); + +// ./test/core/simd/simd_const.wast:620 +assert_return( + () => invoke($172, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102884), + ], +); + +// ./test/core/simd/simd_const.wast:621 +let $173 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000400000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:622 +assert_return( + () => invoke($173, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:623 +let $174 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000400000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:624 +assert_return( + () => invoke($174, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:625 +let $175 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.0000007fffffffffffp-627)))`); + +// ./test/core/simd/simd_const.wast:626 +assert_return( + () => invoke($175, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:627 +let $176 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.0000007fffffffffffp-627)))`); + +// ./test/core/simd/simd_const.wast:628 +assert_return( + () => invoke($176, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:629 +let $177 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000800000000000p-627)))`); + +// ./test/core/simd/simd_const.wast:630 +assert_return( + () => invoke($177, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:631 +let $178 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000800000000000p-627)))`); + +// ./test/core/simd/simd_const.wast:632 +assert_return( + () => invoke($178, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:633 +let $179 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000800000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:634 +assert_return( + () => invoke($179, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:635 +let $180 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000800000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:636 +assert_return( + () => invoke($180, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:637 +let $181 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000bfffffffffffp-627)))`); + +// ./test/core/simd/simd_const.wast:638 +assert_return( + () => invoke($181, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:639 +let $182 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000bfffffffffffp-627)))`); + +// ./test/core/simd/simd_const.wast:640 +assert_return( + () => invoke($182, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028847), + ], +); + +// ./test/core/simd/simd_const.wast:641 +let $183 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000c00000000000p-627)))`); + +// ./test/core/simd/simd_const.wast:642 +assert_return( + () => invoke($183, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:643 +let $184 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000c00000000000p-627)))`); + +// ./test/core/simd/simd_const.wast:644 +assert_return( + () => invoke($184, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:645 +let $185 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000c00000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:646 +assert_return( + () => invoke($185, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:647 +let $186 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000c00000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:648 +assert_return( + () => invoke($186, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:649 +let $187 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000000ffffffffffffp-627)))`); + +// ./test/core/simd/simd_const.wast:650 +assert_return( + () => invoke($187, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:651 +let $188 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000000ffffffffffffp-627)))`); + +// ./test/core/simd/simd_const.wast:652 +assert_return( + () => invoke($188, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:653 +let $189 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000001000000000000p-627)))`); + +// ./test/core/simd/simd_const.wast:654 +assert_return( + () => invoke($189, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:655 +let $190 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000001000000000000p-627)))`); + +// ./test/core/simd/simd_const.wast:656 +assert_return( + () => invoke($190, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:657 +let $191 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000001000000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:658 +assert_return( + () => invoke($191, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:659 +let $192 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000001000000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:660 +assert_return( + () => invoke($192, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:661 +let $193 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.0000013fffffffffffp-627)))`); + +// ./test/core/simd/simd_const.wast:662 +assert_return( + () => invoke($193, `f`, []), + [ + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:663 +let $194 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.0000013fffffffffffp-627)))`); + +// ./test/core/simd/simd_const.wast:664 +assert_return( + () => invoke($194, `f`, []), + [ + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002409919865102885), + ], +); + +// ./test/core/simd/simd_const.wast:665 +let $195 = instantiate(`(module (func (export "f") (result f64) (f64.const +0x8000000.000001400000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:666 +assert_return( + () => invoke($195, `f`, []), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028857), + ], +); + +// ./test/core/simd/simd_const.wast:667 +let $196 = instantiate(`(module (func (export "f") (result f64) (f64.const -0x8000000.000001400000000001p-627)))`); + +// ./test/core/simd/simd_const.wast:668 +assert_return( + () => invoke($196, `f`, []), + [ + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024099198651028857), + ], +); + +// ./test/core/simd/simd_const.wast:669 +let $197 = instantiate(`(module (func (export "f") (result f64) (f64.const +5.3575430359313371995e+300)))`); + +// ./test/core/simd/simd_const.wast:670 +assert_return( + () => invoke($197, `f`, []), + [ + value("f64", 5357543035931337000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_const.wast:671 +let $198 = instantiate(`(module (func (export "f") (result f64) (f64.const -5.3575430359313371995e+300)))`); + +// ./test/core/simd/simd_const.wast:672 +assert_return( + () => invoke($198, `f`, []), + [ + value("f64", -5357543035931337000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_const.wast:673 +let $199 = instantiate(`(module (func (export "f") (result f64) (f64.const +5.3575430359313371996e+300)))`); + +// ./test/core/simd/simd_const.wast:674 +assert_return( + () => invoke($199, `f`, []), + [ + value("f64", 5357543035931338000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_const.wast:675 +let $200 = instantiate(`(module (func (export "f") (result f64) (f64.const -5.3575430359313371996e+300)))`); + +// ./test/core/simd/simd_const.wast:676 +assert_return( + () => invoke($200, `f`, []), + [ + value("f64", -5357543035931338000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_const.wast:677 +let $201 = instantiate(`(module (func (export "f") (result f64) (f64.const +5.3575430359313383891e+300)))`); + +// ./test/core/simd/simd_const.wast:678 +assert_return( + () => invoke($201, `f`, []), + [ + value("f64", 5357543035931338000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_const.wast:679 +let $202 = instantiate(`(module (func (export "f") (result f64) (f64.const -5.3575430359313383891e+300)))`); + +// ./test/core/simd/simd_const.wast:680 +assert_return( + () => invoke($202, `f`, []), + [ + value("f64", -5357543035931338000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_const.wast:681 +let $203 = instantiate(`(module (func (export "f") (result f64) (f64.const +5.3575430359313383892e+300)))`); + +// ./test/core/simd/simd_const.wast:682 +assert_return( + () => invoke($203, `f`, []), + [ + value("f64", 5357543035931339000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_const.wast:683 +let $204 = instantiate(`(module (func (export "f") (result f64) (f64.const -5.3575430359313383892e+300)))`); + +// ./test/core/simd/simd_const.wast:684 +assert_return( + () => invoke($204, `f`, []), + [ + value("f64", -5357543035931339000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_const.wast:687 +let $205 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000080000000000p+600 +0x1.000000000000080000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:688 +assert_return( + () => invoke($205, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880993000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880993000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:689 +let $206 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000080000000000p+600 -0x1.000000000000080000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:690 +assert_return( + () => invoke($206, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880993000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880993000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:691 +let $207 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000080000000001p+600 +0x1.000000000000080000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:692 +assert_return( + () => invoke($207, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:693 +let $208 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000080000000001p+600 -0x1.000000000000080000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:694 +assert_return( + () => invoke($208, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:695 +let $209 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.0000000000000fffffffffffp+600 +0x1.0000000000000fffffffffffp+600)))`); + +// ./test/core/simd/simd_const.wast:696 +assert_return( + () => invoke($209, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:697 +let $210 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.0000000000000fffffffffffp+600 -0x1.0000000000000fffffffffffp+600)))`); + +// ./test/core/simd/simd_const.wast:698 +assert_return( + () => invoke($210, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:699 +let $211 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000100000000000p+600 +0x1.000000000000100000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:700 +assert_return( + () => invoke($211, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:701 +let $212 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000100000000000p+600 -0x1.000000000000100000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:702 +assert_return( + () => invoke($212, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:703 +let $213 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000100000000001p+600 +0x1.000000000000100000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:704 +assert_return( + () => invoke($213, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:705 +let $214 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000100000000001p+600 -0x1.000000000000100000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:706 +assert_return( + () => invoke($214, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:707 +let $215 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.00000000000017ffffffffffp+600 +0x1.00000000000017ffffffffffp+600)))`); + +// ./test/core/simd/simd_const.wast:708 +assert_return( + () => invoke($215, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:709 +let $216 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.00000000000017ffffffffffp+600 -0x1.00000000000017ffffffffffp+600)))`); + +// ./test/core/simd/simd_const.wast:710 +assert_return( + () => invoke($216, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880994000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:711 +let $217 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000180000000000p+600 +0x1.000000000000180000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:712 +assert_return( + () => invoke($217, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:713 +let $218 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000180000000000p+600 -0x1.000000000000180000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:714 +assert_return( + () => invoke($218, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:715 +let $219 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000180000000001p+600 +0x1.000000000000180000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:716 +assert_return( + () => invoke($219, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:717 +let $220 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000180000000001p+600 -0x1.000000000000180000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:718 +assert_return( + () => invoke($220, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:719 +let $221 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.0000000000001fffffffffffp+600 +0x1.0000000000001fffffffffffp+600)))`); + +// ./test/core/simd/simd_const.wast:720 +assert_return( + () => invoke($221, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:721 +let $222 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.0000000000001fffffffffffp+600 -0x1.0000000000001fffffffffffp+600)))`); + +// ./test/core/simd/simd_const.wast:722 +assert_return( + () => invoke($222, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:723 +let $223 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000200000000000p+600 +0x1.000000000000200000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:724 +assert_return( + () => invoke($223, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:725 +let $224 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000200000000000p+600 -0x1.000000000000200000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:726 +assert_return( + () => invoke($224, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:727 +let $225 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000200000000001p+600 +0x1.000000000000200000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:728 +assert_return( + () => invoke($225, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:729 +let $226 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000200000000001p+600 -0x1.000000000000200000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:730 +assert_return( + () => invoke($226, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:731 +let $227 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.00000000000027ffffffffffp+600 +0x1.00000000000027ffffffffffp+600)))`); + +// ./test/core/simd/simd_const.wast:732 +assert_return( + () => invoke($227, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:733 +let $228 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.00000000000027ffffffffffp+600 -0x1.00000000000027ffffffffffp+600)))`); + +// ./test/core/simd/simd_const.wast:734 +assert_return( + () => invoke($228, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:735 +let $229 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000280000000000p+600 +0x1.000000000000280000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:736 +assert_return( + () => invoke($229, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:737 +let $230 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000280000000000p+600 -0x1.000000000000280000000000p+600)))`); + +// ./test/core/simd/simd_const.wast:738 +assert_return( + () => invoke($230, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880995000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:739 +let $231 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000280000000001p+600 +0x1.000000000000280000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:740 +assert_return( + () => invoke($231, `f`, []), + [ + new F64x2Pattern( + value("f64", 4149515568880996000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 4149515568880996000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:741 +let $232 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000280000000001p+600 -0x1.000000000000280000000001p+600)))`); + +// ./test/core/simd/simd_const.wast:742 +assert_return( + () => invoke($232, `f`, []), + [ + new F64x2Pattern( + value("f64", -4149515568880996000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -4149515568880996000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:743 +let $233 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000100000000000 +0x2000000000000100000000000)))`); + +// ./test/core/simd/simd_const.wast:744 +assert_return( + () => invoke($233, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528680000000000000), + value("f64", 158456325028528680000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:745 +let $234 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000100000000000 -0x2000000000000100000000000)))`); + +// ./test/core/simd/simd_const.wast:746 +assert_return( + () => invoke($234, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528680000000000000), + value("f64", -158456325028528680000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:747 +let $235 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000100000000001 +0x2000000000000100000000001)))`); + +// ./test/core/simd/simd_const.wast:748 +assert_return( + () => invoke($235, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528700000000000000), + value("f64", 158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:749 +let $236 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000100000000001 -0x2000000000000100000000001)))`); + +// ./test/core/simd/simd_const.wast:750 +assert_return( + () => invoke($236, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528700000000000000), + value("f64", -158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:751 +let $237 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x20000000000001fffffffffff +0x20000000000001fffffffffff)))`); + +// ./test/core/simd/simd_const.wast:752 +assert_return( + () => invoke($237, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528700000000000000), + value("f64", 158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:753 +let $238 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x20000000000001fffffffffff -0x20000000000001fffffffffff)))`); + +// ./test/core/simd/simd_const.wast:754 +assert_return( + () => invoke($238, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528700000000000000), + value("f64", -158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:755 +let $239 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000200000000000 +0x2000000000000200000000000)))`); + +// ./test/core/simd/simd_const.wast:756 +assert_return( + () => invoke($239, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528700000000000000), + value("f64", 158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:757 +let $240 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000200000000000 -0x2000000000000200000000000)))`); + +// ./test/core/simd/simd_const.wast:758 +assert_return( + () => invoke($240, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528700000000000000), + value("f64", -158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:759 +let $241 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000200000000001 +0x2000000000000200000000001)))`); + +// ./test/core/simd/simd_const.wast:760 +assert_return( + () => invoke($241, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528700000000000000), + value("f64", 158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:761 +let $242 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000200000000001 -0x2000000000000200000000001)))`); + +// ./test/core/simd/simd_const.wast:762 +assert_return( + () => invoke($242, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528700000000000000), + value("f64", -158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:763 +let $243 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x20000000000002fffffffffff +0x20000000000002fffffffffff)))`); + +// ./test/core/simd/simd_const.wast:764 +assert_return( + () => invoke($243, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528700000000000000), + value("f64", 158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:765 +let $244 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x20000000000002fffffffffff -0x20000000000002fffffffffff)))`); + +// ./test/core/simd/simd_const.wast:766 +assert_return( + () => invoke($244, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528700000000000000), + value("f64", -158456325028528700000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:767 +let $245 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000300000000000 +0x2000000000000300000000000)))`); + +// ./test/core/simd/simd_const.wast:768 +assert_return( + () => invoke($245, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528750000000000000), + value("f64", 158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:769 +let $246 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000300000000000 -0x2000000000000300000000000)))`); + +// ./test/core/simd/simd_const.wast:770 +assert_return( + () => invoke($246, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528750000000000000), + value("f64", -158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:771 +let $247 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000300000000001 +0x2000000000000300000000001)))`); + +// ./test/core/simd/simd_const.wast:772 +assert_return( + () => invoke($247, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528750000000000000), + value("f64", 158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:773 +let $248 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000300000000001 -0x2000000000000300000000001)))`); + +// ./test/core/simd/simd_const.wast:774 +assert_return( + () => invoke($248, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528750000000000000), + value("f64", -158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:775 +let $249 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x20000000000003fffffffffff +0x20000000000003fffffffffff)))`); + +// ./test/core/simd/simd_const.wast:776 +assert_return( + () => invoke($249, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528750000000000000), + value("f64", 158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:777 +let $250 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x20000000000003fffffffffff -0x20000000000003fffffffffff)))`); + +// ./test/core/simd/simd_const.wast:778 +assert_return( + () => invoke($250, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528750000000000000), + value("f64", -158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:779 +let $251 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000400000000000 +0x2000000000000400000000000)))`); + +// ./test/core/simd/simd_const.wast:780 +assert_return( + () => invoke($251, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528750000000000000), + value("f64", 158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:781 +let $252 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000400000000000 -0x2000000000000400000000000)))`); + +// ./test/core/simd/simd_const.wast:782 +assert_return( + () => invoke($252, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528750000000000000), + value("f64", -158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:783 +let $253 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000400000000001 +0x2000000000000400000000001)))`); + +// ./test/core/simd/simd_const.wast:784 +assert_return( + () => invoke($253, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528750000000000000), + value("f64", 158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:785 +let $254 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000400000000001 -0x2000000000000400000000001)))`); + +// ./test/core/simd/simd_const.wast:786 +assert_return( + () => invoke($254, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528750000000000000), + value("f64", -158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:787 +let $255 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x20000000000004fffffffffff +0x20000000000004fffffffffff)))`); + +// ./test/core/simd/simd_const.wast:788 +assert_return( + () => invoke($255, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528750000000000000), + value("f64", 158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:789 +let $256 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x20000000000004fffffffffff -0x20000000000004fffffffffff)))`); + +// ./test/core/simd/simd_const.wast:790 +assert_return( + () => invoke($256, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528750000000000000), + value("f64", -158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:791 +let $257 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000500000000000 +0x2000000000000500000000000)))`); + +// ./test/core/simd/simd_const.wast:792 +assert_return( + () => invoke($257, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528750000000000000), + value("f64", 158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:793 +let $258 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000500000000000 -0x2000000000000500000000000)))`); + +// ./test/core/simd/simd_const.wast:794 +assert_return( + () => invoke($258, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528750000000000000), + value("f64", -158456325028528750000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:795 +let $259 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x2000000000000500000000001 +0x2000000000000500000000001)))`); + +// ./test/core/simd/simd_const.wast:796 +assert_return( + () => invoke($259, `f`, []), + [ + new F64x2Pattern( + value("f64", 158456325028528780000000000000), + value("f64", 158456325028528780000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:797 +let $260 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x2000000000000500000000001 -0x2000000000000500000000001)))`); + +// ./test/core/simd/simd_const.wast:798 +assert_return( + () => invoke($260, `f`, []), + [ + new F64x2Pattern( + value("f64", -158456325028528780000000000000), + value("f64", -158456325028528780000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:799 +let $261 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +1152921504606847104 +1152921504606847104)))`); + +// ./test/core/simd/simd_const.wast:800 +assert_return( + () => invoke($261, `f`, []), + [ + new F64x2Pattern( + value("f64", 1152921504606847000), + value("f64", 1152921504606847000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:801 +let $262 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -1152921504606847104 -1152921504606847104)))`); + +// ./test/core/simd/simd_const.wast:802 +assert_return( + () => invoke($262, `f`, []), + [ + new F64x2Pattern( + value("f64", -1152921504606847000), + value("f64", -1152921504606847000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:803 +let $263 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +1152921504606847105 +1152921504606847105)))`); + +// ./test/core/simd/simd_const.wast:804 +assert_return( + () => invoke($263, `f`, []), + [ + new F64x2Pattern( + value("f64", 1152921504606847200), + value("f64", 1152921504606847200), + ), + ], +); + +// ./test/core/simd/simd_const.wast:805 +let $264 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -1152921504606847105 -1152921504606847105)))`); + +// ./test/core/simd/simd_const.wast:806 +assert_return( + () => invoke($264, `f`, []), + [ + new F64x2Pattern( + value("f64", -1152921504606847200), + value("f64", -1152921504606847200), + ), + ], +); + +// ./test/core/simd/simd_const.wast:807 +let $265 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +1152921504606847359 +1152921504606847359)))`); + +// ./test/core/simd/simd_const.wast:808 +assert_return( + () => invoke($265, `f`, []), + [ + new F64x2Pattern( + value("f64", 1152921504606847200), + value("f64", 1152921504606847200), + ), + ], +); + +// ./test/core/simd/simd_const.wast:809 +let $266 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -1152921504606847359 -1152921504606847359)))`); + +// ./test/core/simd/simd_const.wast:810 +assert_return( + () => invoke($266, `f`, []), + [ + new F64x2Pattern( + value("f64", -1152921504606847200), + value("f64", -1152921504606847200), + ), + ], +); + +// ./test/core/simd/simd_const.wast:811 +let $267 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +1152921504606847360 +1152921504606847360)))`); + +// ./test/core/simd/simd_const.wast:812 +assert_return( + () => invoke($267, `f`, []), + [ + new F64x2Pattern( + value("f64", 1152921504606847500), + value("f64", 1152921504606847500), + ), + ], +); + +// ./test/core/simd/simd_const.wast:813 +let $268 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -1152921504606847360 -1152921504606847360)))`); + +// ./test/core/simd/simd_const.wast:814 +assert_return( + () => invoke($268, `f`, []), + [ + new F64x2Pattern( + value("f64", -1152921504606847500), + value("f64", -1152921504606847500), + ), + ], +); + +// ./test/core/simd/simd_const.wast:817 +let $269 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000080000000000p-1022 +0x0.000000000000080000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:818 +assert_return(() => invoke($269, `f`, []), [new F64x2Pattern(value("f64", 0), value("f64", 0))]); + +// ./test/core/simd/simd_const.wast:819 +let $270 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000080000000000p-1022 -0x0.000000000000080000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:820 +assert_return(() => invoke($270, `f`, []), [new F64x2Pattern(value("f64", -0), value("f64", -0))]); + +// ./test/core/simd/simd_const.wast:821 +let $271 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000080000000001p-1022 +0x0.000000000000080000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:822 +assert_return( + () => invoke($271, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:823 +let $272 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000080000000001p-1022 -0x0.000000000000080000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:824 +assert_return( + () => invoke($272, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:825 +let $273 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.0000000000000fffffffffffp-1022 +0x0.0000000000000fffffffffffp-1022)))`); + +// ./test/core/simd/simd_const.wast:826 +assert_return( + () => invoke($273, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:827 +let $274 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.0000000000000fffffffffffp-1022 -0x0.0000000000000fffffffffffp-1022)))`); + +// ./test/core/simd/simd_const.wast:828 +assert_return( + () => invoke($274, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:829 +let $275 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000100000000000p-1022 +0x0.000000000000100000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:830 +assert_return( + () => invoke($275, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:831 +let $276 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000100000000000p-1022 -0x0.000000000000100000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:832 +assert_return( + () => invoke($276, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:833 +let $277 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000100000000001p-1022 +0x0.000000000000100000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:834 +assert_return( + () => invoke($277, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:835 +let $278 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000100000000001p-1022 -0x0.000000000000100000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:836 +assert_return( + () => invoke($278, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:837 +let $279 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.00000000000017ffffffffffp-1022 +0x0.00000000000017ffffffffffp-1022)))`); + +// ./test/core/simd/simd_const.wast:838 +assert_return( + () => invoke($279, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:839 +let $280 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.00000000000017ffffffffffp-1022 -0x0.00000000000017ffffffffffp-1022)))`); + +// ./test/core/simd/simd_const.wast:840 +assert_return( + () => invoke($280, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_const.wast:841 +let $281 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000180000000000p-1022 +0x0.000000000000180000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:842 +assert_return( + () => invoke($281, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:843 +let $282 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000180000000000p-1022 -0x0.000000000000180000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:844 +assert_return( + () => invoke($282, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:845 +let $283 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000180000000001p-1022 +0x0.000000000000180000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:846 +assert_return( + () => invoke($283, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:847 +let $284 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000180000000001p-1022 -0x0.000000000000180000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:848 +assert_return( + () => invoke($284, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:849 +let $285 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.0000000000001fffffffffffp-1022 +0x0.0000000000001fffffffffffp-1022)))`); + +// ./test/core/simd/simd_const.wast:850 +assert_return( + () => invoke($285, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:851 +let $286 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.0000000000001fffffffffffp-1022 -0x0.0000000000001fffffffffffp-1022)))`); + +// ./test/core/simd/simd_const.wast:852 +assert_return( + () => invoke($286, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:853 +let $287 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000200000000000p-1022 +0x0.000000000000200000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:854 +assert_return( + () => invoke($287, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:855 +let $288 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000200000000000p-1022 -0x0.000000000000200000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:856 +assert_return( + () => invoke($288, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:857 +let $289 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000200000000001p-1022 +0x0.000000000000200000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:858 +assert_return( + () => invoke($289, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:859 +let $290 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000200000000001p-1022 -0x0.000000000000200000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:860 +assert_return( + () => invoke($290, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:861 +let $291 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.00000000000027ffffffffffp-1022 +0x0.00000000000027ffffffffffp-1022)))`); + +// ./test/core/simd/simd_const.wast:862 +assert_return( + () => invoke($291, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:863 +let $292 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.00000000000027ffffffffffp-1022 -0x0.00000000000027ffffffffffp-1022)))`); + +// ./test/core/simd/simd_const.wast:864 +assert_return( + () => invoke($292, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:865 +let $293 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x0.000000000000280000000000p-1022 +0x0.000000000000280000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:866 +assert_return( + () => invoke($293, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:867 +let $294 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x0.000000000000280000000000p-1022 -0x0.000000000000280000000000p-1022)))`); + +// ./test/core/simd/simd_const.wast:868 +assert_return( + () => invoke($294, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_const.wast:869 +let $295 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.000000000000280000000001p-1022 +0x1.000000000000280000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:870 +assert_return( + () => invoke($295, `f`, []), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507203), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507203), + ), + ], +); + +// ./test/core/simd/simd_const.wast:871 +let $296 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.000000000000280000000001p-1022 -0x1.000000000000280000000001p-1022)))`); + +// ./test/core/simd/simd_const.wast:872 +assert_return( + () => invoke($296, `f`, []), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507203), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507203), + ), + ], +); + +// ./test/core/simd/simd_const.wast:875 +let $297 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.fffffffffffff4p1023 +0x1.fffffffffffff4p1023)))`); + +// ./test/core/simd/simd_const.wast:876 +assert_return( + () => invoke($297, `f`, []), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:877 +let $298 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.fffffffffffff4p1023 -0x1.fffffffffffff4p1023)))`); + +// ./test/core/simd/simd_const.wast:878 +assert_return( + () => invoke($298, `f`, []), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:879 +let $299 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 +0x1.fffffffffffff7ffffffp1023 +0x1.fffffffffffff7ffffffp1023)))`); + +// ./test/core/simd/simd_const.wast:880 +assert_return( + () => invoke($299, `f`, []), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:881 +let $300 = instantiate(`(module (func (export "f") (result v128) (v128.const f64x2 -0x1.fffffffffffff7ffffffp1023 -0x1.fffffffffffff7ffffffp1023)))`); + +// ./test/core/simd/simd_const.wast:882 +assert_return( + () => invoke($300, `f`, []), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:886 +let $301 = instantiate(`(module (memory 1) + (func (export "as-br-retval") (result v128) + (block (result v128) (br 0 (v128.const i32x4 0x03020100 0x07060504 0x0b0a0908 0x0f0e0d0c))) + ) + (func (export "as-br_if-retval") (result v128) + (block (result v128) + (br_if 0 (v128.const i32x4 0 1 2 3) (i32.const 1)) + ) + ) + (func (export "as-return-retval") (result v128) + (return (v128.const i32x4 0 1 2 3)) + ) + (func (export "as-if-then-retval") (result v128) + (if (result v128) (i32.const 1) + (then (v128.const i32x4 0 1 2 3)) (else (v128.const i32x4 3 2 1 0)) + ) + ) + (func (export "as-if-else-retval") (result v128) + (if (result v128) (i32.const 0) + (then (v128.const i32x4 0 1 2 3)) (else (v128.const i32x4 3 2 1 0)) + ) + ) + (func $$f (param v128 v128 v128) (result v128) (v128.const i32x4 0 1 2 3)) + (func (export "as-call-param") (result v128) + (call $$f (v128.const i32x4 0 1 2 3) (v128.const i32x4 0 1 2 3) (v128.const i32x4 0 1 2 3)) + ) + (func (export "as-block-retval") (result v128) + (block (result v128) (v128.const i32x4 0 1 2 3)) + ) + (func (export "as-loop-retval") (result v128) + (loop (result v128) (v128.const i32x4 0 1 2 3)) + ) + (func (export "as-drop-operand") + (drop (v128.const i32x4 0 1 2 3)) + ) + + (func (export "as-br-retval2") (result v128) + (block (result v128) (br 0 (v128.const i64x2 0x0302010007060504 0x0b0a09080f0e0d0c))) + ) + (func (export "as-br_if-retval2") (result v128) + (block (result v128) + (br_if 0 (v128.const i64x2 0 1) (i32.const 1)) + ) + ) + (func (export "as-return-retval2") (result v128) + (return (v128.const i64x2 0 1)) + ) + (func (export "as-if-then-retval2") (result v128) + (if (result v128) (i32.const 1) + (then (v128.const i64x2 0 1)) (else (v128.const i64x2 1 0)) + ) + ) + (func (export "as-if-else-retval2") (result v128) + (if (result v128) (i32.const 0) + (then (v128.const i64x2 0 1)) (else (v128.const i64x2 1 0)) + ) + ) + (func $$f2 (param v128 v128 v128) (result v128) (v128.const i64x2 0 1)) + (func (export "as-call-param2") (result v128) + (call $$f2 (v128.const i64x2 0 1) (v128.const i64x2 0 1) (v128.const i64x2 0 1)) + ) + + (type $$sig (func (param v128 v128 v128) (result v128))) + (table funcref (elem $$f $$f2)) + (func (export "as-call_indirect-param") (result v128) + (call_indirect (type $$sig) + (v128.const i32x4 0 1 2 3) (v128.const i32x4 0 1 2 3) (v128.const i32x4 0 1 2 3) (i32.const 0) + ) + ) + (func (export "as-call_indirect-param2") (result v128) + (call_indirect (type $$sig) + (v128.const i64x2 0 1) (v128.const i64x2 0 1) (v128.const i64x2 0 1) (i32.const 1) + ) + ) + (func (export "as-block-retval2") (result v128) + (block (result v128) (v128.const i64x2 0 1)) + ) + (func (export "as-loop-retval2") (result v128) + (loop (result v128) (v128.const i64x2 0 1)) + ) + (func (export "as-drop-operand2") + (drop (v128.const i64x2 0 1)) + ) +)`); + +// ./test/core/simd/simd_const.wast:971 +assert_return( + () => invoke($301, `as-br-retval`, []), + [i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c])], +); + +// ./test/core/simd/simd_const.wast:972 +assert_return(() => invoke($301, `as-br_if-retval`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_const.wast:973 +assert_return(() => invoke($301, `as-return-retval`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_const.wast:974 +assert_return(() => invoke($301, `as-if-then-retval`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_const.wast:975 +assert_return(() => invoke($301, `as-if-else-retval`, []), [i32x4([0x3, 0x2, 0x1, 0x0])]); + +// ./test/core/simd/simd_const.wast:976 +assert_return(() => invoke($301, `as-call-param`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_const.wast:977 +assert_return(() => invoke($301, `as-call_indirect-param`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_const.wast:978 +assert_return(() => invoke($301, `as-block-retval`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_const.wast:979 +assert_return(() => invoke($301, `as-loop-retval`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_const.wast:980 +assert_return(() => invoke($301, `as-drop-operand`, []), []); + +// ./test/core/simd/simd_const.wast:982 +assert_return(() => invoke($301, `as-br-retval2`, []), [i64x2([0x302010007060504n, 0xb0a09080f0e0d0cn])]); + +// ./test/core/simd/simd_const.wast:983 +assert_return(() => invoke($301, `as-br_if-retval2`, []), [i64x2([0x0n, 0x1n])]); + +// ./test/core/simd/simd_const.wast:984 +assert_return(() => invoke($301, `as-return-retval2`, []), [i64x2([0x0n, 0x1n])]); + +// ./test/core/simd/simd_const.wast:985 +assert_return(() => invoke($301, `as-if-then-retval2`, []), [i64x2([0x0n, 0x1n])]); + +// ./test/core/simd/simd_const.wast:986 +assert_return(() => invoke($301, `as-if-else-retval2`, []), [i64x2([0x1n, 0x0n])]); + +// ./test/core/simd/simd_const.wast:987 +assert_return(() => invoke($301, `as-call-param2`, []), [i64x2([0x0n, 0x1n])]); + +// ./test/core/simd/simd_const.wast:988 +assert_return(() => invoke($301, `as-call_indirect-param2`, []), [i64x2([0x0n, 0x1n])]); + +// ./test/core/simd/simd_const.wast:989 +assert_return(() => invoke($301, `as-block-retval2`, []), [i64x2([0x0n, 0x1n])]); + +// ./test/core/simd/simd_const.wast:990 +assert_return(() => invoke($301, `as-loop-retval2`, []), [i64x2([0x0n, 0x1n])]); + +// ./test/core/simd/simd_const.wast:991 +assert_return(() => invoke($301, `as-drop-operand2`, []), []); + +// ./test/core/simd/simd_const.wast:995 +let $302 = instantiate(`(module (memory 1) + (func (export "as-local.set/get-value_0_0") (param $$0 v128) (result v128) + (local v128 v128 v128 v128) + (local.set 0 (local.get $$0)) + (local.get 0) + ) + (func (export "as-local.set/get-value_0_1") (param $$0 v128) (result v128) + (local v128 v128 v128 v128) + (local.set 0 (local.get $$0)) + (local.set 1 (local.get 0)) + (local.set 2 (local.get 1)) + (local.set 3 (local.get 2)) + (local.get 0) + ) + (func (export "as-local.set/get-value_3_0") (param $$0 v128) (result v128) + (local v128 v128 v128 v128) + (local.set 0 (local.get $$0)) + (local.set 1 (local.get 0)) + (local.set 2 (local.get 1)) + (local.set 3 (local.get 2)) + (local.get 3) + ) + (func (export "as-local.tee-value") (result v128) + (local v128) + (local.tee 0 (v128.const i32x4 0 1 2 3)) + ) +)`); + +// ./test/core/simd/simd_const.wast:1023 +assert_return( + () => invoke($302, `as-local.set/get-value_0_0`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_const.wast:1024 +assert_return( + () => invoke($302, `as-local.set/get-value_0_1`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_const.wast:1025 +assert_return( + () => invoke($302, `as-local.set/get-value_3_0`, [i32x4([0x2, 0x2, 0x2, 0x2])]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_const.wast:1026 +assert_return(() => invoke($302, `as-local.tee-value`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_const.wast:1031 +let $303 = instantiate(`(module (memory 1) + (global $$g0 (mut v128) (v128.const i32x4 0 1 2 3)) + (global $$g1 (mut v128) (v128.const i32x4 4 5 6 7)) + (global $$g2 (mut v128) (v128.const i32x4 8 9 10 11)) + (global $$g3 (mut v128) (v128.const i32x4 12 13 14 15)) + (global $$g4 (mut v128) (v128.const i32x4 16 17 18 19)) + + (func $$set_g0 (export "as-global.set_value_$$g0") (param $$0 v128) + (global.set $$g0 (local.get $$0)) + ) + (func $$set_g1_g2 (export "as-global.set_value_$$g1_$$g2") (param $$0 v128) (param $$1 v128) + (global.set $$g1 (local.get $$0)) + (global.set $$g2 (local.get $$1)) + ) + (func $$set_g0_g1_g2_g3 (export "as-global.set_value_$$g0_$$g1_$$g2_$$g3") (param $$0 v128) (param $$1 v128) (param $$2 v128) (param $$3 v128) + (call $$set_g0 (local.get $$0)) + (call $$set_g1_g2 (local.get $$1) (local.get $$2)) + (global.set $$g3 (local.get $$3)) + ) + (func (export "global.get_g0") (result v128) + (global.get $$g0) + ) + (func (export "global.get_g1") (result v128) + (global.get $$g1) + ) + (func (export "global.get_g2") (result v128) + (global.get $$g2) + ) + (func (export "global.get_g3") (result v128) + (global.get $$g3) + ) +)`); + +// ./test/core/simd/simd_const.wast:1064 +assert_return( + () => invoke($303, `as-global.set_value_$$g0_$$g1_$$g2_$$g3`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + i32x4([0x3, 0x3, 0x3, 0x3]), + i32x4([0x4, 0x4, 0x4, 0x4]), + ]), + [], +); + +// ./test/core/simd/simd_const.wast:1068 +assert_return(() => invoke($303, `global.get_g0`, []), [i32x4([0x1, 0x1, 0x1, 0x1])]); + +// ./test/core/simd/simd_const.wast:1069 +assert_return(() => invoke($303, `global.get_g1`, []), [i32x4([0x2, 0x2, 0x2, 0x2])]); + +// ./test/core/simd/simd_const.wast:1070 +assert_return(() => invoke($303, `global.get_g2`, []), [i32x4([0x3, 0x3, 0x3, 0x3])]); + +// ./test/core/simd/simd_const.wast:1071 +assert_return(() => invoke($303, `global.get_g3`, []), [i32x4([0x4, 0x4, 0x4, 0x4])]); + +// ./test/core/simd/simd_const.wast:1076 +let $304 = instantiate(`(module + (func (export "i32x4.test") (result v128) (return (v128.const i32x4 0x0bAdD00D 0x0bAdD00D 0x0bAdD00D 0x0bAdD00D))) + (func (export "i32x4.smax") (result v128) (return (v128.const i32x4 0x7fffffff 0x7fffffff 0x7fffffff 0x7fffffff))) + (func (export "i32x4.neg_smax") (result v128) (return (v128.const i32x4 -0x7fffffff -0x7fffffff -0x7fffffff -0x7fffffff))) + (func (export "i32x4.inc_smin") (result v128) (return (i32x4.add (v128.const i32x4 -0x80000000 -0x80000000 -0x80000000 -0x80000000) (v128.const i32x4 1 1 1 1)))) + (func (export "i32x4.neg_zero") (result v128) (return (v128.const i32x4 -0x0 -0x0 -0x0 -0x0))) + (func (export "i32x4.not_octal") (result v128) (return (v128.const i32x4 010 010 010 010))) + (func (export "i32x4.plus_sign") (result v128) (return (v128.const i32x4 +42 +42 +42 +42))) + + (func (export "i32x4-dec-sep1") (result v128) (v128.const i32x4 1_000_000 1_000_000 1_000_000 1_000_000)) + (func (export "i32x4-dec-sep2") (result v128) (v128.const i32x4 1_0_0_0 1_0_0_0 1_0_0_0 1_0_0_0)) + (func (export "i32x4-hex-sep1") (result v128) (v128.const i32x4 0xa_0f_00_99 0xa_0f_00_99 0xa_0f_00_99 0xa_0f_00_99)) + (func (export "i32x4-hex-sep2") (result v128) (v128.const i32x4 0x1_a_A_0_f 0x1_a_A_0_f 0x1_a_A_0_f 0x1_a_A_0_f)) + + (func (export "i64x2.test") (result v128) (return (v128.const i64x2 0x0bAdD00D0bAdD00D 0x0bAdD00D0bAdD00D))) + (func (export "i64x2.smax") (result v128) (return (v128.const i64x2 0x7fffffffffffffff 0x7fffffffffffffff))) + (func (export "i64x2.neg_smax") (result v128) (return (v128.const i64x2 -0x7fffffffffffffff -0x7fffffffffffffff))) + (func (export "i64x2.inc_smin") (result v128) (return (i64x2.add (v128.const i64x2 -0x8000000000000000 -0x8000000000000000) (v128.const i64x2 1 1)))) + (func (export "i64x2.neg_zero") (result v128) (return (v128.const i64x2 -0x0 -0x0))) + (func (export "i64x2.not_octal") (result v128) (return (v128.const i64x2 010010 010010))) + (func (export "i64x2.plus_sign") (result v128) (return (v128.const i64x2 +42 +42))) + + (func (export "i64x2-dec-sep1") (result v128) (v128.const i64x2 10_000_000_000_000 10_000_000_000_000)) + (func (export "i64x2-dec-sep2") (result v128) (v128.const i64x2 1_0_0_0_0_0_0_0 1_0_0_0_0_0_0_0)) + (func (export "i64x2-hex-sep1") (result v128) (v128.const i64x2 0xa_0f_00_99_0a_0f_00_99 0xa_0f_00_99_0a_0f_00_99)) + (func (export "i64x2-hex-sep2") (result v128) (v128.const i64x2 0x1_a_A_0_f_1_a_A_0_f 0x1_a_A_0_f_1_a_A_0_f)) +)`); + +// ./test/core/simd/simd_const.wast:1104 +assert_return(() => invoke($304, `i32x4.test`, []), [i32x4([0xbadd00d, 0xbadd00d, 0xbadd00d, 0xbadd00d])]); + +// ./test/core/simd/simd_const.wast:1105 +assert_return( + () => invoke($304, `i32x4.smax`, []), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_const.wast:1106 +assert_return( + () => invoke($304, `i32x4.neg_smax`, []), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_const.wast:1107 +assert_return( + () => invoke($304, `i32x4.inc_smin`, []), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_const.wast:1108 +assert_return(() => invoke($304, `i32x4.neg_zero`, []), [i32x4([0x0, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_const.wast:1109 +assert_return(() => invoke($304, `i32x4.not_octal`, []), [i32x4([0xa, 0xa, 0xa, 0xa])]); + +// ./test/core/simd/simd_const.wast:1110 +assert_return(() => invoke($304, `i32x4.plus_sign`, []), [i32x4([0x2a, 0x2a, 0x2a, 0x2a])]); + +// ./test/core/simd/simd_const.wast:1112 +assert_return(() => invoke($304, `i32x4-dec-sep1`, []), [i32x4([0xf4240, 0xf4240, 0xf4240, 0xf4240])]); + +// ./test/core/simd/simd_const.wast:1113 +assert_return(() => invoke($304, `i32x4-dec-sep2`, []), [i32x4([0x3e8, 0x3e8, 0x3e8, 0x3e8])]); + +// ./test/core/simd/simd_const.wast:1114 +assert_return( + () => invoke($304, `i32x4-hex-sep1`, []), + [i32x4([0xa0f0099, 0xa0f0099, 0xa0f0099, 0xa0f0099])], +); + +// ./test/core/simd/simd_const.wast:1115 +assert_return(() => invoke($304, `i32x4-hex-sep2`, []), [i32x4([0x1aa0f, 0x1aa0f, 0x1aa0f, 0x1aa0f])]); + +// ./test/core/simd/simd_const.wast:1117 +assert_return(() => invoke($304, `i64x2.test`, []), [i64x2([0xbadd00d0badd00dn, 0xbadd00d0badd00dn])]); + +// ./test/core/simd/simd_const.wast:1118 +assert_return(() => invoke($304, `i64x2.smax`, []), [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])]); + +// ./test/core/simd/simd_const.wast:1119 +assert_return( + () => invoke($304, `i64x2.neg_smax`, []), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_const.wast:1120 +assert_return( + () => invoke($304, `i64x2.inc_smin`, []), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_const.wast:1121 +assert_return(() => invoke($304, `i64x2.neg_zero`, []), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_const.wast:1122 +assert_return(() => invoke($304, `i64x2.not_octal`, []), [i64x2([0x271an, 0x271an])]); + +// ./test/core/simd/simd_const.wast:1123 +assert_return(() => invoke($304, `i64x2.plus_sign`, []), [i64x2([0x2an, 0x2an])]); + +// ./test/core/simd/simd_const.wast:1125 +assert_return(() => invoke($304, `i64x2-dec-sep1`, []), [i64x2([0x9184e72a000n, 0x9184e72a000n])]); + +// ./test/core/simd/simd_const.wast:1126 +assert_return(() => invoke($304, `i64x2-dec-sep2`, []), [i64x2([0x989680n, 0x989680n])]); + +// ./test/core/simd/simd_const.wast:1127 +assert_return(() => invoke($304, `i64x2-hex-sep1`, []), [i64x2([0xa0f00990a0f0099n, 0xa0f00990a0f0099n])]); + +// ./test/core/simd/simd_const.wast:1128 +assert_return(() => invoke($304, `i64x2-hex-sep2`, []), [i64x2([0x1aa0f1aa0fn, 0x1aa0f1aa0fn])]); + +// ./test/core/simd/simd_const.wast:1130 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 _100 _100 _100 _100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1134 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 +_100 +_100 +_100 +_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1138 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 -_100 -_100 -_100 -_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1142 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 99_ 99_ 99_ 99_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1146 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 1__000 1__000 1__000 1__000)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1150 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 _0x100 _0x100 _0x100 _0x100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1154 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 0_x100 0_x100 0_x100 0_x100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1158 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 0x_100 0x_100 0x_100 0x_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1162 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 0x00_ 0x00_ 0x00_ 0x00_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1166 +assert_malformed( + () => instantiate(`(global v128 (v128.const i32x4 0xff__ffff 0xff__ffff 0xff__ffff 0xff__ffff)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1171 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 _100_100 _100_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1175 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 +_100_100 +_100_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1179 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 -_100_100 -_100_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1183 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 99_99_ 99_99_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1187 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 1__000_000 1__000_000)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1191 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 _0x100000 _0x100000)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1195 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 0_x100000 0_x100000)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1199 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 0x_100000 0x_100000)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1203 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 0x00_ 0x00_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1207 +assert_malformed( + () => instantiate(`(global v128 (v128.const i64x2 0xff__ffff_ffff_ffff 0xff__ffff_ffff_ffff)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1214 +let $305 = instantiate(`(module + (func (export "f32-dec-sep1") (result v128) (v128.const f32x4 1_000_000 1_000_000 1_000_000 1_000_000)) + (func (export "f32-dec-sep2") (result v128) (v128.const f32x4 1_0_0_0 1_0_0_0 1_0_0_0 1_0_0_0)) + (func (export "f32-dec-sep3") (result v128) (v128.const f32x4 100_3.141_592 100_3.141_592 100_3.141_592 100_3.141_592)) + (func (export "f32-dec-sep4") (result v128) (v128.const f32x4 99e+1_3 99e+1_3 99e+1_3 99e+1_3)) + (func (export "f32-dec-sep5") (result v128) (v128.const f32x4 122_000.11_3_54E0_2_3 122_000.11_3_54E0_2_3 122_000.11_3_54E0_2_3 122_000.11_3_54E0_2_3)) + (func (export "f32-hex-sep1") (result v128) (v128.const f32x4 0xa_0f_00_99 0xa_0f_00_99 0xa_0f_00_99 0xa_0f_00_99)) + (func (export "f32-hex-sep2") (result v128) (v128.const f32x4 0x1_a_A_0_f 0x1_a_A_0_f 0x1_a_A_0_f 0x1_a_A_0_f)) + (func (export "f32-hex-sep3") (result v128) (v128.const f32x4 0xa0_ff.f141_a59a 0xa0_ff.f141_a59a 0xa0_ff.f141_a59a 0xa0_ff.f141_a59a)) + (func (export "f32-hex-sep4") (result v128) (v128.const f32x4 0xf0P+1_3 0xf0P+1_3 0xf0P+1_3 0xf0P+1_3)) + (func (export "f32-hex-sep5") (result v128) (v128.const f32x4 0x2a_f00a.1f_3_eep2_3 0x2a_f00a.1f_3_eep2_3 0x2a_f00a.1f_3_eep2_3 0x2a_f00a.1f_3_eep2_3)) + (func (export "f64-dec-sep1") (result v128) (v128.const f64x2 1_000_000 1_000_000)) + (func (export "f64-dec-sep2") (result v128) (v128.const f64x2 1_0_0_0 1_0_0_0)) + (func (export "f64-dec-sep3") (result v128) (v128.const f64x2 100_3.141_592 100_3.141_592)) + (func (export "f64-dec-sep4") (result v128) (v128.const f64x2 99e+1_3 99e+1_3)) + (func (export "f64-dec-sep5") (result v128) (v128.const f64x2 122_000.11_3_54E0_2_3 122_000.11_3_54E0_2_3)) + (func (export "f64-hex-sep1") (result v128) (v128.const f64x2 0xa_0f_00_99 0xa_0f_00_99)) + (func (export "f64-hex-sep2") (result v128) (v128.const f64x2 0x1_a_A_0_f 0x1_a_A_0_f)) + (func (export "f64-hex-sep3") (result v128) (v128.const f64x2 0xa0_ff.f141_a59a 0xa0_ff.f141_a59a)) + (func (export "f64-hex-sep4") (result v128) (v128.const f64x2 0xf0P+1_3 0xf0P+1_3)) + (func (export "f64-hex-sep5") (result v128) (v128.const f64x2 0x2a_f00a.1f_3_eep2_3 0x2a_f00a.1f_3_eep2_3)) +)`); + +// ./test/core/simd/simd_const.wast:1237 +assert_return( + () => invoke($305, `f32-dec-sep1`, []), + [ + new F32x4Pattern( + value("f32", 1000000), + value("f32", 1000000), + value("f32", 1000000), + value("f32", 1000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1238 +assert_return( + () => invoke($305, `f32-dec-sep2`, []), + [ + new F32x4Pattern( + value("f32", 1000), + value("f32", 1000), + value("f32", 1000), + value("f32", 1000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1239 +assert_return( + () => invoke($305, `f32-dec-sep3`, []), + [ + new F32x4Pattern( + value("f32", 1003.1416), + value("f32", 1003.1416), + value("f32", 1003.1416), + value("f32", 1003.1416), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1240 +assert_return( + () => invoke($305, `f32-dec-sep4`, []), + [ + new F32x4Pattern( + value("f32", 990000000000000), + value("f32", 990000000000000), + value("f32", 990000000000000), + value("f32", 990000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1241 +assert_return( + () => invoke($305, `f32-dec-sep5`, []), + [ + new F32x4Pattern( + value("f32", 12200012000000000000000000000), + value("f32", 12200012000000000000000000000), + value("f32", 12200012000000000000000000000), + value("f32", 12200012000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1242 +assert_return( + () => invoke($305, `f32-hex-sep1`, []), + [ + new F32x4Pattern( + value("f32", 168755360), + value("f32", 168755360), + value("f32", 168755360), + value("f32", 168755360), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1243 +assert_return( + () => invoke($305, `f32-hex-sep2`, []), + [ + new F32x4Pattern( + value("f32", 109071), + value("f32", 109071), + value("f32", 109071), + value("f32", 109071), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1244 +assert_return( + () => invoke($305, `f32-hex-sep3`, []), + [ + new F32x4Pattern( + value("f32", 41215.94), + value("f32", 41215.94), + value("f32", 41215.94), + value("f32", 41215.94), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1245 +assert_return( + () => invoke($305, `f32-hex-sep4`, []), + [ + new F32x4Pattern( + value("f32", 1966080), + value("f32", 1966080), + value("f32", 1966080), + value("f32", 1966080), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1246 +assert_return( + () => invoke($305, `f32-hex-sep5`, []), + [ + new F32x4Pattern( + value("f32", 23605224000000), + value("f32", 23605224000000), + value("f32", 23605224000000), + value("f32", 23605224000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1247 +assert_return( + () => invoke($305, `f64-dec-sep1`, []), + [new F64x2Pattern(value("f64", 1000000), value("f64", 1000000))], +); + +// ./test/core/simd/simd_const.wast:1248 +assert_return( + () => invoke($305, `f64-dec-sep2`, []), + [new F64x2Pattern(value("f64", 1000), value("f64", 1000))], +); + +// ./test/core/simd/simd_const.wast:1249 +assert_return( + () => invoke($305, `f64-dec-sep3`, []), + [new F64x2Pattern(value("f64", 1003.141592), value("f64", 1003.141592))], +); + +// ./test/core/simd/simd_const.wast:1250 +assert_return( + () => invoke($305, `f64-dec-sep4`, []), + [ + new F64x2Pattern(value("f64", 990000000000000), value("f64", 990000000000000)), + ], +); + +// ./test/core/simd/simd_const.wast:1251 +assert_return( + () => invoke($305, `f64-dec-sep5`, []), + [ + new F64x2Pattern( + value("f64", 12200011354000000000000000000), + value("f64", 12200011354000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1252 +assert_return( + () => invoke($305, `f64-hex-sep1`, []), + [new F64x2Pattern(value("f64", 168755353), value("f64", 168755353))], +); + +// ./test/core/simd/simd_const.wast:1253 +assert_return( + () => invoke($305, `f64-hex-sep2`, []), + [new F64x2Pattern(value("f64", 109071), value("f64", 109071))], +); + +// ./test/core/simd/simd_const.wast:1254 +assert_return( + () => invoke($305, `f64-hex-sep3`, []), + [ + new F64x2Pattern( + value("f64", 41215.94240794191), + value("f64", 41215.94240794191), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1255 +assert_return( + () => invoke($305, `f64-hex-sep4`, []), + [new F64x2Pattern(value("f64", 1966080), value("f64", 1966080))], +); + +// ./test/core/simd/simd_const.wast:1256 +assert_return( + () => invoke($305, `f64-hex-sep5`, []), + [new F64x2Pattern(value("f64", 23605225168752), value("f64", 23605225168752))], +); + +// ./test/core/simd/simd_const.wast:1258 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 _100 _100 _100 _100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1262 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 +_100 +_100 +_100 +_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1266 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 -_100 -_100 -_100 -_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1270 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 99_ 99_ 99_ 99_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1274 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1__000 1__000 1__000 1__000)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1278 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 _1.0 _1.0 _1.0 _1.0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1282 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1.0_ 1.0_ 1.0_ 1.0_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1286 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1_.0 1_.0 1_.0 1_.0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1290 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1._0 1._0 1._0 1._0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1294 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 _1e1 _1e1 _1e1 _1e1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1298 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1e1_ 1e1_ 1e1_ 1e1_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1302 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1_e1 1_e1 1_e1 1_e1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1306 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1e_1 1e_1 1e_1 1e_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1310 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 _1.0e1 _1.0e1 _1.0e1 _1.0e1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1314 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1.0e1_ 1.0e1_ 1.0e1_ 1.0e1_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1318 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1.0_e1 1.0_e1 1.0_e1 1.0_e1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1322 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1.0e_1 1.0e_1 1.0e_1 1.0e_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1326 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1.0e+_1 1.0e+_1 1.0e+_1 1.0e+_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1330 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 1.0e_+1 1.0e_+1 1.0e_+1 1.0e_+1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1334 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 _0x100 _0x100 _0x100 _0x100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1338 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0_x100 0_x100 0_x100 0_x100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1342 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x_100 0x_100 0x_100 0x_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1346 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x00_ 0x00_ 0x00_ 0x00_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1350 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0xff__ffff 0xff__ffff 0xff__ffff 0xff__ffff)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1354 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x_1.0 0x_1.0 0x_1.0 0x_1.0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1358 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1.0_ 0x1.0_ 0x1.0_ 0x1.0_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1362 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1_.0 0x1_.0 0x1_.0 0x1_.0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1366 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1._0 0x1._0 0x1._0 0x1._0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1370 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x_1p1 0x_1p1 0x_1p1 0x_1p1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1374 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1p1_ 0x1p1_ 0x1p1_ 0x1p1_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1378 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1_p1 0x1_p1 0x1_p1 0x1_p1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1382 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1p_1 0x1p_1 0x1p_1 0x1p_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1386 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x_1.0p1 0x_1.0p1 0x_1.0p1 0x_1.0p1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1390 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1.0p1_ 0x1.0p1_ 0x1.0p1_ 0x1.0p1_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1394 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1.0_p1 0x1.0_p1 0x1.0_p1 0x1.0_p1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1398 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1.0p_1 0x1.0p_1 0x1.0p_1 0x1.0p_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1402 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1.0p+_1 0x1.0p+_1 0x1.0p+_1 0x1.0p+_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1406 +assert_malformed( + () => instantiate(`(global v128 (v128.const f32x4 0x1.0p_+1 0x1.0p_+1 0x1.0p_+1 0x1.0p_+1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1411 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 _100 _100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1415 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 +_100 +_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1419 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 -_100 -_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1423 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 99_ 99_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1427 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1__000 1__000)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1431 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 _1.0 _1.0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1435 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1.0_ 1.0_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1439 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1_.0 1_.0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1443 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1._0 1._0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1447 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 _1e1 _1e1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1451 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1e1_ 1e1_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1455 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1_e1 1_e1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1459 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1e_1 1e_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1463 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 _1.0e1 _1.0e1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1467 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1.0e1_ 1.0e1_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1471 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1.0_e1 1.0_e1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1475 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1.0e_1 1.0e_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1479 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1.0e+_1 1.0e+_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1483 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 1.0e_+1 1.0e_+1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1487 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 _0x100 _0x100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1491 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0_x100 0_x100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1495 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x_100 0x_100)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1499 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x00_ 0x00_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1503 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0xff__ffff 0xff__ffff)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1507 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x_1.0 0x_1.0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1511 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1.0_ 0x1.0_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1515 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1_.0 0x1_.0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1519 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1._0 0x1._0)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1523 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x_1p1 0x_1p1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1527 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1p1_ 0x1p1_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1531 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1_p1 0x1_p1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1535 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1p_1 0x1p_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1539 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x_1.0p1 0x_1.0p1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1543 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1.0p1_ 0x1.0p1_)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1547 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1.0_p1 0x1.0_p1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1551 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1.0p_1 0x1.0p_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1555 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1.0p+_1 0x1.0p+_1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1559 +assert_malformed( + () => instantiate(`(global v128 (v128.const f64x2 0x1.0p_+1 0x1.0p_+1)) `), + `unknown operator`, +); + +// ./test/core/simd/simd_const.wast:1566 +let $306 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01\\05\\01" ;; type section + "\\60\\00\\01\\7b" ;; type 0 (func) + "\\03\\02\\01\\00" ;; func section + "\\07\\0f\\01\\0b" ;; export section + "\\70\\61\\72\\73\\65\\5f\\69\\38\\78\\31\\36\\00\\00" ;; export name (parse_i8x16) + "\\0a\\16\\01" ;; code section + "\\14\\00\\fd\\0c" ;; func body + "\\00\\00\\00\\00" ;; data lane 0~3 (0, 0, 0, 0) + "\\80\\80\\80\\80" ;; data lane 4~7 (-128, -128, -128, -128) + "\\ff\\ff\\ff\\ff" ;; data lane 8~11 (0xff, 0xff, 0xff, 0xff) + "\\ff\\ff\\ff\\ff" ;; data lane 12~15 (255, 255, 255, 255) + "\\0b" ;; end +)`); + +// ./test/core/simd/simd_const.wast:1581 +assert_return( + () => invoke($306, `parse_i8x16`, []), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x80, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_const.wast:1583 +let $307 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01\\05\\01" ;; type section + "\\60\\00\\01\\7b" ;; type 0 (func) + "\\03\\02\\01\\00" ;; func section + "\\07\\0f\\01\\0b" ;; export section + "\\70\\61\\72\\73\\65\\5f\\69\\31\\36\\78\\38\\00\\00" ;; export name (parse_i16x8) + "\\0a\\16\\01" ;; code section + "\\14\\00\\fd\\0c" ;; func body + "\\00\\00\\00\\00" ;; data lane 0, 1 (0, 0) + "\\00\\80\\00\\80" ;; data lane 2, 3 (-32768, -32768) + "\\ff\\ff\\ff\\ff" ;; data lane 4, 5 (65535, 65535) + "\\ff\\ff\\ff\\ff" ;; data lane 6, 7 (0xffff, 0xffff) + "\\0b" ;; end +)`); + +// ./test/core/simd/simd_const.wast:1598 +assert_return( + () => invoke($307, `parse_i16x8`, []), + [i16x8([0x0, 0x0, 0x8000, 0x8000, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_const.wast:1600 +let $308 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01\\05\\01" ;; type section + "\\60\\00\\01\\7b" ;; type 0 (func) + "\\03\\02\\01\\00" ;; func section + "\\07\\0f\\01\\0b" ;; export section + "\\70\\61\\72\\73\\65\\5f\\69\\33\\32\\78\\34\\00\\00" ;; export name (parse_i32x4) + "\\0a\\16\\01" ;; code section + "\\14\\00\\fd\\0c" ;; func body + "\\d1\\ff\\ff\\ff" ;; data lane 0 (4294967249) + "\\d1\\ff\\ff\\ff" ;; data lane 1 (4294967249) + "\\d1\\ff\\ff\\ff" ;; data lane 2 (4294967249) + "\\d1\\ff\\ff\\ff" ;; data lane 3 (4294967249) + "\\0b" ;; end +)`); + +// ./test/core/simd/simd_const.wast:1615 +assert_return( + () => invoke($308, `parse_i32x4`, []), + [i32x4([0xffffffd1, 0xffffffd1, 0xffffffd1, 0xffffffd1])], +); + +// ./test/core/simd/simd_const.wast:1617 +let $309 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01\\05\\01" ;; type section + "\\60\\00\\01\\7b" ;; type 0 (func) + "\\03\\02\\01\\00" ;; func section + "\\07\\0f\\01\\0b" ;; export section + "\\70\\61\\72\\73\\65\\5f\\69\\36\\34\\78\\32\\00\\00" ;; export name (parse_i64x2) + "\\0a\\16\\01" ;; code section + "\\14\\00\\fd\\0c" ;; func body + "\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\7f" ;; data lane 0 (9223372036854775807) + "\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\7f" ;; data lane 1 (9223372036854775807) + "\\0b" ;; end +)`); + +// ./test/core/simd/simd_const.wast:1630 +assert_return(() => invoke($309, `parse_i64x2`, []), [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])]); + +// ./test/core/simd/simd_const.wast:1634 +let $310 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01\\05\\01" ;; type section + "\\60\\00\\01\\7b" ;; type 0 (func) + "\\03\\02\\01\\00" ;; func section + "\\07\\0f\\01\\0b" ;; export section + "\\70\\61\\72\\73\\65\\5f\\66\\33\\32\\78\\34\\00\\00" ;; export name (parse_f32x4) + "\\0a\\16\\01" ;; code section + "\\14\\00\\fd\\0c" ;; func body + "\\00\\00\\80\\4f" ;; data lane 0 (4294967249) + "\\00\\00\\80\\4f" ;; data lane 1 (4294967249) + "\\00\\00\\80\\4f" ;; data lane 2 (4294967249) + "\\00\\00\\80\\4f" ;; data lane 3 (4294967249) + "\\0b" ;; end +)`); + +// ./test/core/simd/simd_const.wast:1649 +assert_return( + () => invoke($310, `parse_f32x4`, []), + [ + new F32x4Pattern( + value("f32", 4294967300), + value("f32", 4294967300), + value("f32", 4294967300), + value("f32", 4294967300), + ), + ], +); + +// ./test/core/simd/simd_const.wast:1651 +let $311 = instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\01\\05\\01" ;; type section + "\\60\\00\\01\\7b" ;; type 0 (func) + "\\03\\02\\01\\00" ;; func section + "\\07\\0f\\01\\0b" ;; export section + "\\70\\61\\72\\73\\65\\5f\\66\\36\\34\\78\\32\\00\\00" ;; export name (parse_f64x2) + "\\0a\\16\\01" ;; code section + "\\14\\00\\fd\\0c" ;; func body + "\\ff\\ff\\ff\\ff\\ff\\ff\\ef\\7f" ;; data lane 0 (0x1.fffffffffffffp+1023) + "\\ff\\ff\\ff\\ff\\ff\\ff\\ef\\7f" ;; data lane 1 (0x1.fffffffffffffp+1023) + "\\0b" ;; end +)`); + +// ./test/core/simd/simd_const.wast:1664 +assert_return( + () => invoke($311, `parse_f64x2`, []), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_conversions.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_conversions.wast.js new file mode 100644 index 0000000000..abb9d75af3 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_conversions.wast.js @@ -0,0 +1,3341 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_conversions.wast + +// ./test/core/simd/simd_conversions.wast:3 +let $0 = instantiate(`(module + ;; Integer to floating point + (func (export "f32x4.convert_i32x4_s") (param v128) (result v128) + (f32x4.convert_i32x4_s (local.get 0))) + (func (export "f32x4.convert_i32x4_u") (param v128) (result v128) + (f32x4.convert_i32x4_u (local.get 0))) + + (func (export "f64x2.convert_low_i32x4_s") (param v128) (result v128) + (f64x2.convert_low_i32x4_s (local.get 0))) + (func (export "f64x2.convert_low_i32x4_u") (param v128) (result v128) + (f64x2.convert_low_i32x4_u (local.get 0))) + + ;; Integer to integer narrowing + (func (export "i8x16.narrow_i16x8_s") (param v128 v128) (result v128) + (i8x16.narrow_i16x8_s (local.get 0) (local.get 1))) + (func (export "i8x16.narrow_i16x8_u") (param v128 v128) (result v128) + (i8x16.narrow_i16x8_u (local.get 0) (local.get 1))) + (func (export "i16x8.narrow_i32x4_s") (param v128 v128) (result v128) + (i16x8.narrow_i32x4_s (local.get 0) (local.get 1))) + (func (export "i16x8.narrow_i32x4_u") (param v128 v128) (result v128) + (i16x8.narrow_i32x4_u (local.get 0)(local.get 1))) + + ;; Float to float promote/demote + (func (export "f64x2.promote_low_f32x4") (param v128) (result v128) + (f64x2.promote_low_f32x4 (local.get 0))) + (func (export "f32x4.demote_f64x2_zero") (param v128) (result v128) + (f32x4.demote_f64x2_zero (local.get 0))) +)`); + +// ./test/core/simd/simd_conversions.wast:35 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [f32x4([0, 0, 0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_conversions.wast:37 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [f32x4([-0, -0, -0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_conversions.wast:39 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000001401298464324817), + value("f64", 0.000000000000000000000000000000000000000000001401298464324817), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:41 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000001401298464324817), + value("f64", -0.000000000000000000000000000000000000000000001401298464324817), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:43 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [f32x4([1, 1, 1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_conversions.wast:45 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [f32x4([-1, -1, -1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_conversions.wast:47 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -340282346638528860000000000000000000000), + value("f64", -340282346638528860000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:49 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 340282346638528860000000000000000000000), + value("f64", 340282346638528860000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:52 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + f32x4([ + 0.0000000000000000000000000000000000015046328, + 0.0000000000000000000000000000000000015046328, + 0.0000000000000000000000000000000000015046328, + 0.0000000000000000000000000000000000015046328, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000001504632769052528), + value("f64", 0.000000000000000000000000000000000001504632769052528), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:55 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + f32x4([ + 66382537000000000000000000000000000000, + 66382537000000000000000000000000000000, + 66382537000000000000000000000000000000, + 66382537000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 66382536710104395000000000000000000000), + value("f64", 66382536710104395000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:57 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_conversions.wast:59 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_conversions.wast:61 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_conversions.wast:63 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_conversions.wast:65 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_conversions.wast:67 +assert_return( + () => invoke($0, `f64x2.promote_low_f32x4`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_conversions.wast:73 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [f64x2([0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:75 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [f64x2([-0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:77 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:79 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:81 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [f64x2([1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:83 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [f64x2([-1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:85 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000011754942807573643, + 0.000000000000000000000000000000000000011754942807573643, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:87 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000011754942807573643, + -0.000000000000000000000000000000000000011754942807573643, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:89 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000011754942807573642, + 0.000000000000000000000000000000000000011754942807573642, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:91 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000011754942807573642, + -0.000000000000000000000000000000000000011754942807573642, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:93 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000000000001401298464324817, + 0.000000000000000000000000000000000000000000001401298464324817, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:95 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000000000001401298464324817, + -0.000000000000000000000000000000000000000000001401298464324817, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:97 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 340282336497324060000000000000000000000, + 340282336497324060000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282330000000000000000000000000000000), + value("f32", 340282330000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:99 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -340282336497324060000000000000000000000, + -340282336497324060000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282330000000000000000000000000000000), + value("f32", -340282330000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:101 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 340282336497324100000000000000000000000, + 340282336497324100000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:103 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -340282336497324100000000000000000000000, + -340282336497324100000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:105 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 340282346638528860000000000000000000000, + 340282346638528860000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:107 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -340282346638528860000000000000000000000, + -340282346638528860000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:109 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 340282356779733620000000000000000000000, + 340282356779733620000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:111 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -340282356779733620000000000000000000000, + -340282356779733620000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:113 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 340282356779733660000000000000000000000, + 340282356779733660000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:115 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -340282356779733660000000000000000000000, + -340282356779733660000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:117 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.000000000000000000000000000000000001504632769052528, + 0.000000000000000000000000000000000001504632769052528, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.0000000000000000000000000000000000015046328), + value("f32", 0.0000000000000000000000000000000000015046328), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:119 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([66382536710104395000000000000000000000, 66382536710104395000000000000000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 66382537000000000000000000000000000000), + value("f32", 66382537000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:121 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [f64x2([Infinity, Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:123 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [f64x2([-Infinity, -Infinity])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:125 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([1.0000000000000002, 1.0000000000000002]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:127 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([0.9999999999999999, 0.9999999999999999]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:129 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([1.0000000596046448, 1.0000000596046448]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:131 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([1.000000059604645, 1.000000059604645]), + ]), + [ + new F32x4Pattern( + value("f32", 1.0000001), + value("f32", 1.0000001), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:133 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([1.000000178813934, 1.000000178813934]), + ]), + [ + new F32x4Pattern( + value("f32", 1.0000001), + value("f32", 1.0000001), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:135 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([1.0000001788139343, 1.0000001788139343]), + ]), + [ + new F32x4Pattern( + value("f32", 1.0000002), + value("f32", 1.0000002), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:137 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([1.0000002980232239, 1.0000002980232239]), + ]), + [ + new F32x4Pattern( + value("f32", 1.0000002), + value("f32", 1.0000002), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:139 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [f64x2([16777217, 16777217])]), + [ + new F32x4Pattern( + value("f32", 16777216), + value("f32", 16777216), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:141 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([16777217.000000004, 16777217.000000004]), + ]), + [ + new F32x4Pattern( + value("f32", 16777218), + value("f32", 16777218), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:143 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([16777218.999999996, 16777218.999999996]), + ]), + [ + new F32x4Pattern( + value("f32", 16777218), + value("f32", 16777218), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:145 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [f64x2([16777219, 16777219])]), + [ + new F32x4Pattern( + value("f32", 16777220), + value("f32", 16777220), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:147 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([424258443299142700000000000000000, 424258443299142700000000000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 424258450000000000000000000000000), + value("f32", 424258450000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:149 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.0000000000000000000000000000000001569262107843488, + 0.0000000000000000000000000000000001569262107843488, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000000000000000015692621), + value("f32", 0.00000000000000000000000000000000015692621), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:151 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000010551773688605172, + 0.000000000000000000000000000000000000010551773688605172, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000010551773), + value("f32", 0.000000000000000000000000000000000000010551773), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:153 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([-2.8238128484141933, -2.8238128484141933]), + ]), + [ + new F32x4Pattern( + value("f32", -2.823813), + value("f32", -2.823813), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:155 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([-9063376370095757000000000000000000, -9063376370095757000000000000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -9063376000000000000000000000000000), + value("f32", -9063376000000000000000000000000000), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:157 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:159 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:161 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:163 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:165 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:167 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:169 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.0000000000000000000000000000000000000000000007006492321624085, + 0.0000000000000000000000000000000000000000000007006492321624085, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:171 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -0.0000000000000000000000000000000000000000000007006492321624085, + -0.0000000000000000000000000000000000000000000007006492321624085, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:173 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + 0.0000000000000000000000000000000000000000000007006492321624087, + 0.0000000000000000000000000000000000000000000007006492321624087, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:175 +assert_return( + () => invoke($0, `f32x4.demote_f64x2_zero`, [ + f64x2([ + -0.0000000000000000000000000000000000000000000007006492321624087, + -0.0000000000000000000000000000000000000000000007006492321624087, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:182 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:184 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:186 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:188 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [ + new F32x4Pattern( + value("f32", 2147483600), + value("f32", 2147483600), + value("f32", 2147483600), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:190 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [ + new F32x4Pattern( + value("f32", -2147483600), + value("f32", -2147483600), + value("f32", -2147483600), + value("f32", -2147483600), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:192 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [ + new F32x4Pattern( + value("f32", 1234568000), + value("f32", 1234568000), + value("f32", 1234568000), + value("f32", 1234568000), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:194 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0x75bcd18, 0x75bcd18, 0x75bcd18, 0x75bcd18]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:196 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0x12345680, 0x12345680, 0x12345680, 0x12345680]), + ]), + [ + new F32x4Pattern( + value("f32", 305419900), + value("f32", 305419900), + value("f32", 305419900), + value("f32", 305419900), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:200 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0x1000001, 0x1000001, 0x1000001, 0x1000001]), + ]), + [ + new F32x4Pattern( + value("f32", 16777216), + value("f32", 16777216), + value("f32", 16777216), + value("f32", 16777216), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:202 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0xfeffffff, 0xfeffffff, 0xfeffffff, 0xfeffffff]), + ]), + [ + new F32x4Pattern( + value("f32", -16777216), + value("f32", -16777216), + value("f32", -16777216), + value("f32", -16777216), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:204 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0x1000003, 0x1000003, 0x1000003, 0x1000003]), + ]), + [ + new F32x4Pattern( + value("f32", 16777220), + value("f32", 16777220), + value("f32", 16777220), + value("f32", 16777220), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:206 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0xfefffffd, 0xfefffffd, 0xfefffffd, 0xfefffffd]), + ]), + [ + new F32x4Pattern( + value("f32", -16777220), + value("f32", -16777220), + value("f32", -16777220), + value("f32", -16777220), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:208 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_s`, [ + i32x4([0x0, 0xffffffff, 0x7fffffff, 0x80000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", -1), + value("f32", 2147483600), + value("f32", -2147483600), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:213 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:215 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:217 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + new F32x4Pattern( + value("f32", 4294967300), + value("f32", 4294967300), + value("f32", 4294967300), + value("f32", 4294967300), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:219 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [ + new F32x4Pattern( + value("f32", 2147483600), + value("f32", 2147483600), + value("f32", 2147483600), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:221 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [ + new F32x4Pattern( + value("f32", 2147483600), + value("f32", 2147483600), + value("f32", 2147483600), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:223 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [ + new F32x4Pattern( + value("f32", 305419900), + value("f32", 305419900), + value("f32", 305419900), + value("f32", 305419900), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:225 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x80000080, 0x80000080, 0x80000080, 0x80000080]), + ]), + [ + new F32x4Pattern( + value("f32", 2147483600), + value("f32", 2147483600), + value("f32", 2147483600), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:227 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x80000081, 0x80000081, 0x80000081, 0x80000081]), + ]), + [ + new F32x4Pattern( + value("f32", 2147484000), + value("f32", 2147484000), + value("f32", 2147484000), + value("f32", 2147484000), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:229 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x80000082, 0x80000082, 0x80000082, 0x80000082]), + ]), + [ + new F32x4Pattern( + value("f32", 2147484000), + value("f32", 2147484000), + value("f32", 2147484000), + value("f32", 2147484000), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:231 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0xfffffe80, 0xfffffe80, 0xfffffe80, 0xfffffe80]), + ]), + [ + new F32x4Pattern( + value("f32", 4294966800), + value("f32", 4294966800), + value("f32", 4294966800), + value("f32", 4294966800), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:233 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0xfffffe81, 0xfffffe81, 0xfffffe81, 0xfffffe81]), + ]), + [ + new F32x4Pattern( + value("f32", 4294967000), + value("f32", 4294967000), + value("f32", 4294967000), + value("f32", 4294967000), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:235 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0xfffffe82, 0xfffffe82, 0xfffffe82, 0xfffffe82]), + ]), + [ + new F32x4Pattern( + value("f32", 4294967000), + value("f32", 4294967000), + value("f32", 4294967000), + value("f32", 4294967000), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:237 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x75bcd18, 0x75bcd18, 0x75bcd18, 0x75bcd18]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:239 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [ + new F32x4Pattern( + value("f32", 2427178500), + value("f32", 2427178500), + value("f32", 2427178500), + value("f32", 2427178500), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:243 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x1000001, 0x1000001, 0x1000001, 0x1000001]), + ]), + [ + new F32x4Pattern( + value("f32", 16777216), + value("f32", 16777216), + value("f32", 16777216), + value("f32", 16777216), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:245 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x1000003, 0x1000003, 0x1000003, 0x1000003]), + ]), + [ + new F32x4Pattern( + value("f32", 16777220), + value("f32", 16777220), + value("f32", 16777220), + value("f32", 16777220), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:247 +assert_return( + () => invoke($0, `f32x4.convert_i32x4_u`, [ + i32x4([0x0, 0xffffffff, 0x7fffffff, 0x80000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 4294967300), + value("f32", 2147483600), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:253 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_s`, [i32x4([0x1, 0x1, 0x0, 0x0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_conversions.wast:255 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_conversions.wast:257 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_s`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_conversions.wast:259 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0]), + ]), + [new F64x2Pattern(value("f64", 2147483647), value("f64", 2147483647))], +); + +// ./test/core/simd/simd_conversions.wast:261 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x0, 0x0]), + ]), + [new F64x2Pattern(value("f64", -2147483648), value("f64", -2147483648))], +); + +// ./test/core/simd/simd_conversions.wast:263 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_s`, [ + i32x4([0x3ade68b1, 0x3ade68b1, 0x0, 0x0]), + ]), + [new F64x2Pattern(value("f64", 987654321), value("f64", 987654321))], +); + +// ./test/core/simd/simd_conversions.wast:269 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_u`, [i32x4([0x1, 0x1, 0x0, 0x0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_conversions.wast:271 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_u`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_conversions.wast:273 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0]), + ]), + [new F64x2Pattern(value("f64", 2147483647), value("f64", 2147483647))], +); + +// ./test/core/simd/simd_conversions.wast:275 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x0, 0x0]), + ]), + [new F64x2Pattern(value("f64", 2147483648), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_conversions.wast:277 +assert_return( + () => invoke($0, `f64x2.convert_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [new F64x2Pattern(value("f64", 4294967295), value("f64", 4294967295))], +); + +// ./test/core/simd/simd_conversions.wast:283 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:286 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_conversions.wast:289 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:292 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:295 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:298 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:301 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_conversions.wast:304 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:307 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_conversions.wast:310 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:313 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:316 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:319 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:322 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:325 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:328 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81]), + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_conversions.wast:331 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + i16x8([0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_conversions.wast:334 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_conversions.wast:337 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f]), + i16x8([0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_conversions.wast:340 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f]), + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_conversions.wast:343 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + i16x8([0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_conversions.wast:346 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:349 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:352 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:355 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:358 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f, 0xff7f]), + i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:361 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:364 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_conversions.wast:367 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_s`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:372 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:375 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_conversions.wast:378 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:381 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:384 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:387 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:390 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_conversions.wast:393 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:396 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_conversions.wast:399 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:402 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_conversions.wast:405 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_conversions.wast:408 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_conversions.wast:411 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:414 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_conversions.wast:417 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:420 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100]), + i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:423 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:426 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:429 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:432 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:435 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:438 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:441 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_conversions.wast:444 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:447 +assert_return( + () => invoke($0, `i8x16.narrow_i16x8_u`, [ + i16x8([0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_conversions.wast:452 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:455 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_conversions.wast:458 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:461 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:464 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:467 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:470 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_conversions.wast:473 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:476 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_conversions.wast:479 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:482 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:485 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:488 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:491 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:494 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:497 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff8001, 0xffff8001, 0xffff8001, 0xffff8001]), + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_conversions.wast:500 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + i32x4([0xffff8001, 0xffff8001, 0xffff8001, 0xffff8001]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_conversions.wast:503 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_conversions.wast:506 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff7fff, 0xffff7fff, 0xffff7fff, 0xffff7fff]), + i32x4([0xffff7fff, 0xffff7fff, 0xffff7fff, 0xffff7fff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_conversions.wast:509 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff7fff, 0xffff7fff, 0xffff7fff, 0xffff7fff]), + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_conversions.wast:512 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + i32x4([0xffff7fff, 0xffff7fff, 0xffff7fff, 0xffff7fff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_conversions.wast:515 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:518 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:521 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff7fff, 0xffff7fff, 0xffff7fff, 0xffff7fff]), + i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:524 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000]), + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:527 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xffff7fff, 0xffff7fff, 0xffff7fff, 0xffff7fff]), + i32x4([0x10000, 0x10000, 0x10000, 0x10000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:530 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0xf8000000, 0xf8000000, 0xf8000000, 0xf8000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:533 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:536 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_s`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:541 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:544 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_conversions.wast:547 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:550 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:553 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:556 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:559 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_conversions.wast:562 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0xfffe, 0xfffe, 0xfffe, 0xfffe]), + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:565 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xfffe, 0xfffe, 0xfffe, 0xfffe]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_conversions.wast:568 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:571 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x10000, 0x10000, 0x10000, 0x10000]), + i32x4([0x10000, 0x10000, 0x10000, 0x10000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:574 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0x10000, 0x10000, 0x10000, 0x10000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:577 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x10000, 0x10000, 0x10000, 0x10000]), + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:580 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:583 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x10000, 0x10000, 0x10000, 0x10000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:586 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:589 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x10000, 0x10000, 0x10000, 0x10000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:592 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:595 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:598 +assert_return( + () => invoke($0, `i16x8.narrow_i32x4_u`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_conversions.wast:605 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.trunc_sat_f32x4 (v128.const f32x4 0.0 0.0 0.0 0.0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:608 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.trunc_s_sat_f32x4 (v128.const f32x4 -2.0 -1.0 1.0 2.0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:611 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.trunc_u_sat_f32x4 (v128.const f32x4 -2.0 -1.0 1.0 2.0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:614 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.convert_f32x4 (v128.const f32x4 -1 0 1 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:617 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.convert_s_f32x4 (v128.const f32x4 -1 0 1 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:620 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.convert_u_f32x4 (v128.const f32x4 -1 0 1 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:624 +assert_malformed( + () => instantiate(`(func (result v128) (i64x2.trunc_sat_f64x2_s (v128.const f64x2 0.0 0.0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:627 +assert_malformed( + () => instantiate(`(func (result v128) (i64x2.trunc_sat_f64x2_u (v128.const f64x2 -2.0 -1.0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:630 +assert_malformed( + () => instantiate(`(func (result v128) (f64x2.convert_i64x2_s (v128.const i64x2 1 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:633 +assert_malformed( + () => instantiate(`(func (result v128) (f64x2.convert_i64x2_u (v128.const i64x2 1 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:637 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.narrow_i16x8 (v128.const i16x8 0 0 0 0 0 0 0 0) (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:640 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.narrow_i8x16 (v128.const i16x8 0 0 0 0 0 0 0 0) (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:643 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.narrow_i8x16_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:646 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.narrow_i8x16_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:649 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.narrow_i32x4 (v128.const i16x8 0 0 0 0 0 0 0 0) (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:652 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.narrow_i16x8 (v128.const i16x8 0 0 0 0 0 0 0 0) (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:655 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.narrow_i16x8_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:658 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.narrow_i16x8_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:662 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.extend_low_i8x16 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:665 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.extend_low_i16x8_s (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:668 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.extend_low_i16x8_u (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:671 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.extend_high_i8x16 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:674 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.extend_high_i16x8_s (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:677 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.extend_high_i16x8_u (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:680 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.extend_low_i16x8 (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:683 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.extend_low_i32x4_s (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:686 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.extend_low_i32x4_u (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:689 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.extend_high_i16x8 (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:692 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.extend_high_i32x4_s (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:695 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.extend_high_i32x4_u (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_conversions.wast:702 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.convert_i32x4_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:703 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.convert_i32x4_s (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:704 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.convert_i32x4_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:705 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.convert_i32x4_u (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:707 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.narrow_i16x8_s (i32.const 0) (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:708 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.narrow_i16x8_u (i32.const 0) (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:709 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.narrow_i32x4_s (f32.const 0.0) (f64.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:710 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.narrow_i32x4_s (f32.const 0.0) (f64.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:715 +let $1 = instantiate(`(module + (func (export "f32x4_convert_i32x4_s_add") (param v128 v128) (result v128) + (f32x4.convert_i32x4_s (i32x4.add (local.get 0) (local.get 1)))) + (func (export "f32x4_convert_i32x4_s_sub") (param v128 v128) (result v128) + (f32x4.convert_i32x4_s (i32x4.sub (local.get 0) (local.get 1)))) + (func (export "f32x4_convert_i32x4_u_mul") (param v128 v128) (result v128) + (f32x4.convert_i32x4_u (i32x4.mul (local.get 0) (local.get 1)))) + + (func (export "i16x8_low_extend_narrow_ss") (param v128 v128) (result v128) + (i16x8.extend_low_i8x16_s (i8x16.narrow_i16x8_s (local.get 0) (local.get 1)))) + (func (export "i16x8_low_extend_narrow_su") (param v128 v128) (result v128) + (i16x8.extend_low_i8x16_s (i8x16.narrow_i16x8_u (local.get 0) (local.get 1)))) + (func (export "i16x8_high_extend_narrow_ss") (param v128 v128) (result v128) + (i16x8.extend_low_i8x16_s (i8x16.narrow_i16x8_s (local.get 0) (local.get 1)))) + (func (export "i16x8_high_extend_narrow_su") (param v128 v128) (result v128) + (i16x8.extend_low_i8x16_s (i8x16.narrow_i16x8_u (local.get 0) (local.get 1)))) + (func (export "i16x8_low_extend_narrow_uu") (param v128 v128) (result v128) + (i16x8.extend_low_i8x16_u (i8x16.narrow_i16x8_u (local.get 0) (local.get 1)))) + (func (export "i16x8_low_extend_narrow_us") (param v128 v128) (result v128) + (i16x8.extend_low_i8x16_u (i8x16.narrow_i16x8_s (local.get 0) (local.get 1)))) + (func (export "i16x8_high_extend_narrow_uu") (param v128 v128) (result v128) + (i16x8.extend_low_i8x16_u (i8x16.narrow_i16x8_u (local.get 0) (local.get 1)))) + (func (export "i16x8_high_extend_narrow_us") (param v128 v128) (result v128) + (i16x8.extend_low_i8x16_u (i8x16.narrow_i16x8_s (local.get 0) (local.get 1)))) + + (func (export "i32x4_low_extend_narrow_ss") (param v128 v128) (result v128) + (i32x4.extend_low_i16x8_s (i16x8.narrow_i32x4_s (local.get 0) (local.get 1)))) + (func (export "i32x4_low_extend_narrow_su") (param v128 v128) (result v128) + (i32x4.extend_low_i16x8_s (i16x8.narrow_i32x4_u (local.get 0) (local.get 1)))) + (func (export "i32x4_high_extend_narrow_ss") (param v128 v128) (result v128) + (i32x4.extend_low_i16x8_s (i16x8.narrow_i32x4_s (local.get 0) (local.get 1)))) + (func (export "i32x4_high_extend_narrow_su") (param v128 v128) (result v128) + (i32x4.extend_low_i16x8_s (i16x8.narrow_i32x4_u (local.get 0) (local.get 1)))) + (func (export "i32x4_low_extend_narrow_uu") (param v128 v128) (result v128) + (i32x4.extend_low_i16x8_u (i16x8.narrow_i32x4_u (local.get 0) (local.get 1)))) + (func (export "i32x4_low_extend_narrow_us") (param v128 v128) (result v128) + (i32x4.extend_low_i16x8_u (i16x8.narrow_i32x4_s (local.get 0) (local.get 1)))) + (func (export "i32x4_high_extend_narrow_uu") (param v128 v128) (result v128) + (i32x4.extend_low_i16x8_u (i16x8.narrow_i32x4_u (local.get 0) (local.get 1)))) + (func (export "i32x4_high_extend_narrow_us") (param v128 v128) (result v128) + (i32x4.extend_low_i16x8_u (i16x8.narrow_i32x4_s (local.get 0) (local.get 1)))) +)`); + +// ./test/core/simd/simd_conversions.wast:758 +assert_return( + () => invoke($1, `f32x4_convert_i32x4_s_add`, [ + i32x4([0x1, 0x2, 0x3, 0x4]), + i32x4([0x2, 0x3, 0x4, 0x5]), + ]), + [ + new F32x4Pattern( + value("f32", 3), + value("f32", 5), + value("f32", 7), + value("f32", 9), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:761 +assert_return( + () => invoke($1, `f32x4_convert_i32x4_s_sub`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", 0), + value("f32", 1), + value("f32", 2), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:764 +assert_return( + () => invoke($1, `f32x4_convert_i32x4_u_mul`, [ + i32x4([0x1, 0x2, 0x3, 0x4]), + i32x4([0x1, 0x2, 0x3, 0x4]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 4), + value("f32", 9), + value("f32", 16), + ), + ], +); + +// ./test/core/simd/simd_conversions.wast:768 +assert_return( + () => invoke($1, `i16x8_low_extend_narrow_ss`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0x8000, 0x8000, 0x8001, 0x7fff, 0x8000]), + i16x8([0x8000, 0x8001, 0x7fff, 0x8000, 0x8000, 0x8001, 0x7fff, 0x8000]), + ]), + [i16x8([0xff80, 0xff80, 0x7f, 0xff80, 0xff80, 0xff80, 0x7f, 0xff80])], +); + +// ./test/core/simd/simd_conversions.wast:771 +assert_return( + () => invoke($1, `i16x8_low_extend_narrow_su`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0xffff, 0x8000, 0x8001, 0x7fff, 0xffff]), + i16x8([0x8000, 0x8001, 0x7fff, 0xffff, 0x8000, 0x8001, 0x7fff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0x0, 0x0, 0x0, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:774 +assert_return( + () => invoke($1, `i16x8_high_extend_narrow_ss`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0x8000, 0x8000, 0x8001, 0x7fff, 0x8000]), + i16x8([0x8000, 0x8001, 0x7fff, 0x8000, 0x8000, 0x8001, 0x7fff, 0x8000]), + ]), + [i16x8([0xff80, 0xff80, 0x7f, 0xff80, 0xff80, 0xff80, 0x7f, 0xff80])], +); + +// ./test/core/simd/simd_conversions.wast:777 +assert_return( + () => invoke($1, `i16x8_high_extend_narrow_su`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0xffff, 0x8000, 0x8001, 0x7fff, 0xffff]), + i16x8([0x8000, 0x8001, 0x7fff, 0xffff, 0x8000, 0x8001, 0x7fff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0x0, 0x0, 0x0, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:780 +assert_return( + () => invoke($1, `i16x8_low_extend_narrow_uu`, [ + i16x8([0x8000, 0x8001, 0x8000, 0xffff, 0x8000, 0x8001, 0x8000, 0xffff]), + i16x8([0x8000, 0x8001, 0x8000, 0xffff, 0x8000, 0x8001, 0x8000, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:783 +assert_return( + () => invoke($1, `i16x8_low_extend_narrow_us`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0x8000, 0x8000, 0x8001, 0x7fff, 0x8000]), + i16x8([0x8000, 0x8001, 0x7fff, 0x8000, 0x8000, 0x8001, 0x7fff, 0x8000]), + ]), + [i16x8([0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80])], +); + +// ./test/core/simd/simd_conversions.wast:786 +assert_return( + () => invoke($1, `i16x8_high_extend_narrow_uu`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0xffff, 0x8000, 0x8001, 0x7fff, 0xffff]), + i16x8([0x8000, 0x8001, 0x7fff, 0xffff, 0x8000, 0x8001, 0x7fff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:789 +assert_return( + () => invoke($1, `i16x8_high_extend_narrow_us`, [ + i16x8([0x8000, 0x8001, 0x7fff, 0x8000, 0x8000, 0x8001, 0x7fff, 0x8000]), + i16x8([0x8000, 0x8001, 0x7fff, 0x8000, 0x8000, 0x8001, 0x7fff, 0x8000]), + ]), + [i16x8([0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80])], +); + +// ./test/core/simd/simd_conversions.wast:793 +assert_return( + () => invoke($1, `i32x4_low_extend_narrow_ss`, [ + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0x8000000]), + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0x8000000]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:796 +assert_return( + () => invoke($1, `i32x4_low_extend_narrow_su`, [ + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:799 +assert_return( + () => invoke($1, `i32x4_high_extend_narrow_ss`, [ + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0x8000000]), + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0x8000000]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:802 +assert_return( + () => invoke($1, `i32x4_high_extend_narrow_su`, [ + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:805 +assert_return( + () => invoke($1, `i32x4_low_extend_narrow_uu`, [ + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:808 +assert_return( + () => invoke($1, `i32x4_low_extend_narrow_us`, [ + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0x8000000]), + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0x8000000]), + ]), + [i32x4([0x8000, 0x8000, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:811 +assert_return( + () => invoke($1, `i32x4_high_extend_narrow_uu`, [ + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_conversions.wast:814 +assert_return( + () => invoke($1, `i32x4_high_extend_narrow_us`, [ + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0x8000000]), + i32x4([0x80000000, 0x80000001, 0x7fffffff, 0x8000000]), + ]), + [i32x4([0x8000, 0x8000, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_conversions.wast:820 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.convert_i32x4_s-arg-empty (result v128) + (f32x4.convert_i32x4_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:828 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.convert_i32x4_u-arg-empty (result v128) + (f32x4.convert_i32x4_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:836 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.narrow_i16x8_s-1st-arg-empty (result v128) + (i8x16.narrow_i16x8_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:844 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.narrow_i16x8_s-arg-empty (result v128) + (i8x16.narrow_i16x8_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:852 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.narrow_i16x8_u-1st-arg-empty (result v128) + (i8x16.narrow_i16x8_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:860 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.narrow_i16x8_u-arg-empty (result v128) + (i8x16.narrow_i16x8_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:868 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.narrow_i32x4_s-1st-arg-empty (result v128) + (i16x8.narrow_i32x4_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:876 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.narrow_i32x4_s-arg-empty (result v128) + (i16x8.narrow_i32x4_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:884 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.narrow_i32x4_u-1st-arg-empty (result v128) + (i16x8.narrow_i32x4_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_conversions.wast:892 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.narrow_i32x4_u-arg-empty (result v128) + (i16x8.narrow_i32x4_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4.wast.js new file mode 100644 index 0000000000..c3d30b4669 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4.wast.js @@ -0,0 +1,18269 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f32x4.wast + +// ./test/core/simd/simd_f32x4.wast:4 +let $0 = instantiate(`(module + (func (export "f32x4.min") (param v128 v128) (result v128) (f32x4.min (local.get 0) (local.get 1))) + (func (export "f32x4.max") (param v128 v128) (result v128) (f32x4.max (local.get 0) (local.get 1))) + (func (export "f32x4.abs") (param v128) (result v128) (f32x4.abs (local.get 0))) + ;; f32x4.min const vs const + (func (export "f32x4.min_with_const_0") (result v128) (f32x4.min (v128.const f32x4 0 1 2 -3) (v128.const f32x4 0 2 1 3))) + (func (export "f32x4.min_with_const_1") (result v128) (f32x4.min (v128.const f32x4 0 1 2 3) (v128.const f32x4 0 1 2 3))) + (func (export "f32x4.min_with_const_2") (result v128) (f32x4.min (v128.const f32x4 0x00 0x01 0x02 0x80000000) (v128.const f32x4 0x00 0x02 0x01 2147483648))) + (func (export "f32x4.min_with_const_3") (result v128) (f32x4.min (v128.const f32x4 0x00 0x01 0x02 0x80000000) (v128.const f32x4 0x00 0x01 0x02 0x80000000))) + ;; f32x4.min param vs const + (func (export "f32x4.min_with_const_5")(param v128) (result v128) (f32x4.min (local.get 0) (v128.const f32x4 0 1 2 -3))) + (func (export "f32x4.min_with_const_6")(param v128) (result v128) (f32x4.min (v128.const f32x4 0 1 2 3) (local.get 0))) + (func (export "f32x4.min_with_const_7")(param v128) (result v128) (f32x4.min (v128.const f32x4 0x00 0x01 0x02 0x80000000) (local.get 0))) + (func (export "f32x4.min_with_const_8")(param v128) (result v128) (f32x4.min (local.get 0) (v128.const f32x4 0x00 0x01 0x02 0x80000000))) + ;; f32x4.max const vs const + (func (export "f32x4.max_with_const_10") (result v128) (f32x4.max (v128.const f32x4 0 1 2 -3) (v128.const f32x4 0 2 1 3))) + (func (export "f32x4.max_with_const_11") (result v128) (f32x4.max (v128.const f32x4 0 1 2 3) (v128.const f32x4 0 1 2 3))) + (func (export "f32x4.max_with_const_12") (result v128) (f32x4.max (v128.const f32x4 0x00 0x01 0x02 0x80000000) (v128.const f32x4 0x00 0x02 0x01 2147483648))) + (func (export "f32x4.max_with_const_13") (result v128) (f32x4.max (v128.const f32x4 0x00 0x01 0x02 0x80000000) (v128.const f32x4 0x00 0x01 0x02 0x80000000))) + ;; f32x4.max param vs const + (func (export "f32x4.max_with_const_15")(param v128) (result v128) (f32x4.max (local.get 0) (v128.const f32x4 0 1 2 -3))) + (func (export "f32x4.max_with_const_16")(param v128) (result v128) (f32x4.max (v128.const f32x4 0 1 2 3) (local.get 0))) + (func (export "f32x4.max_with_const_17")(param v128) (result v128) (f32x4.max (v128.const f32x4 0x00 0x01 0x02 0x80000000) (local.get 0))) + (func (export "f32x4.max_with_const_18")(param v128) (result v128) (f32x4.max (local.get 0) (v128.const f32x4 0x00 0x01 0x02 0x80000000))) + + (func (export "f32x4.abs_with_const") (result v128) (f32x4.abs (v128.const f32x4 -0 -1 -2 -3))) +)`); + +// ./test/core/simd/simd_f32x4.wast:33 +assert_return( + () => invoke($0, `f32x4.min_with_const_0`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 1), + value("f32", -3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:34 +assert_return( + () => invoke($0, `f32x4.min_with_const_1`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:35 +assert_return( + () => invoke($0, `f32x4.min_with_const_2`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 1), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:36 +assert_return( + () => invoke($0, `f32x4.min_with_const_3`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:38 +assert_return( + () => invoke($0, `f32x4.min_with_const_5`, [f32x4([0, 2, 1, 3])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 1), + value("f32", -3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:40 +assert_return( + () => invoke($0, `f32x4.min_with_const_6`, [f32x4([0, 1, 2, 3])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:42 +assert_return( + () => invoke($0, `f32x4.min_with_const_7`, [f32x4([0, 2, 1, 2147483600])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 1), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:44 +assert_return( + () => invoke($0, `f32x4.min_with_const_8`, [f32x4([0, 1, 2, 2147483600])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:47 +assert_return( + () => invoke($0, `f32x4.max_with_const_10`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 2), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:48 +assert_return( + () => invoke($0, `f32x4.max_with_const_11`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:49 +assert_return( + () => invoke($0, `f32x4.max_with_const_12`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 2), + value("f32", 2), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:50 +assert_return( + () => invoke($0, `f32x4.max_with_const_13`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:52 +assert_return( + () => invoke($0, `f32x4.max_with_const_15`, [f32x4([0, 2, 1, 3])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 2), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:54 +assert_return( + () => invoke($0, `f32x4.max_with_const_16`, [f32x4([0, 1, 2, 3])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:56 +assert_return( + () => invoke($0, `f32x4.max_with_const_17`, [f32x4([0, 2, 1, 2147483600])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 2), + value("f32", 2), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:58 +assert_return( + () => invoke($0, `f32x4.max_with_const_18`, [f32x4([0, 1, 2, 2147483600])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 2147483600), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:61 +assert_return( + () => invoke($0, `f32x4.abs_with_const`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:65 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x80, + 0x3f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0x80, + 0x3f, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:73 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0x80, + 0x3f, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:81 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x80, + 0x3f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0x80, + 0x3f, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:89 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0x80, + 0x3f, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 1), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:97 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:100 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:103 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:106 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:109 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:112 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:115 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:118 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:121 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:124 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:127 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:130 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:133 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:136 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:139 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:142 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:145 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:148 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:151 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:154 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:157 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:160 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:163 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:166 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:169 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:172 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:175 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:178 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:181 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:184 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:187 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:190 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:193 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:196 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:199 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:202 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:205 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:208 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:211 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:214 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:217 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:220 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:223 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:226 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:229 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:232 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:235 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:238 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:241 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:244 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:247 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:250 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:253 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:256 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:259 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:262 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:265 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:268 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:271 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:274 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:277 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:280 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:283 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:286 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:289 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:292 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:295 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:298 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:301 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:304 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:307 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:310 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:313 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:316 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:319 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:322 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:325 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:328 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:331 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:334 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:337 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:340 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:343 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:346 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:349 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:352 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:355 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:358 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:361 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:364 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:367 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:370 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:373 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:376 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:379 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:382 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:385 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:388 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:391 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:394 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:397 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:400 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:403 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:406 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:409 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:412 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:415 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:418 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:421 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:424 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:427 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:430 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:433 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:436 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:439 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:442 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:445 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:448 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:451 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:454 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:457 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:460 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:463 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:466 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:469 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:472 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:475 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:478 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:481 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:484 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:487 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:490 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:493 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:496 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:499 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:502 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:505 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:508 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:511 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:514 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:517 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:520 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:523 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:526 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:529 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:532 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:535 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:538 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:541 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:544 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:547 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:550 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:553 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:556 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:559 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:562 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:565 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:568 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:571 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:574 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:577 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:580 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:583 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:586 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:589 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:592 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:595 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:598 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:601 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:604 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:607 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:610 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:613 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:616 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:619 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:622 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:625 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:628 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:631 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:634 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:637 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:640 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:643 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:646 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:649 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:652 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:655 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:658 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:661 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:664 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:667 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:670 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:673 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:676 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:679 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:682 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:685 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:688 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:691 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:694 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:697 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:700 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:703 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:706 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:709 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:712 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:715 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:718 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:721 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:724 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:727 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:730 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:733 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:736 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:739 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:742 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:745 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:748 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:751 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:754 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:757 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:760 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:763 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:766 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:769 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:772 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:775 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:778 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:781 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:784 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:787 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:790 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:793 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:796 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:799 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:802 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:805 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:808 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:811 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:814 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:817 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:820 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:823 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:826 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:829 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:832 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:835 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:838 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:841 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:844 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:847 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:850 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:853 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:856 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:859 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:862 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:865 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:868 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:871 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:874 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:877 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:880 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:883 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:886 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:889 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:892 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:895 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:898 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:901 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:904 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:907 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:910 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:913 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:916 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:919 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:922 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:925 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:928 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:931 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:934 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:937 +assert_return( + () => invoke($0, `f32x4.min`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:940 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:943 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:946 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:949 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:952 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:955 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:958 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:961 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:964 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:967 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:970 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:973 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:976 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:979 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:982 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:985 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:988 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:991 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:994 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:997 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1000 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1003 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1006 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1009 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1012 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1015 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1018 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1021 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1024 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1027 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1030 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1033 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1036 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1039 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1042 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1045 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1048 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1051 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1054 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1057 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1060 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1063 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1066 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1069 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1072 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1075 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1078 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1081 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1084 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1087 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1090 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1093 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1096 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1099 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1102 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1105 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1108 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1111 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1114 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1117 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1120 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1123 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1126 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1129 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1132 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1135 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1138 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1141 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1144 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1147 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1150 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1153 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1156 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1159 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1162 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1165 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1168 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1171 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1174 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1177 +assert_return( + () => invoke($0, `f32x4.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1180 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1183 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1186 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1189 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1192 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1195 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1198 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1201 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1204 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1207 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1210 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1213 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1216 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1219 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1222 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1225 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1228 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1231 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1234 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1237 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1240 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1243 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1246 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1249 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1252 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1255 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1258 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1261 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1264 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1267 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1270 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1273 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1276 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1279 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1282 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1285 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1288 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1291 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1294 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1297 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1300 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1303 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1306 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1309 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1312 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1315 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1318 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1321 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1324 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1327 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1330 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1333 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1336 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1339 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1342 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1345 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1348 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1351 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1354 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1357 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1360 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1363 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1366 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1369 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1372 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1375 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1378 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1381 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1384 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1387 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1390 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1393 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1396 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1399 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1402 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1405 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1408 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1411 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1414 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1417 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1420 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1423 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1426 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1429 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1432 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1435 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1438 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1441 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1444 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1447 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1450 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1453 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1456 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1459 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1462 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1465 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1468 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1471 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1474 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1477 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1480 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1483 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1486 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1489 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1492 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1495 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1498 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1501 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1504 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1507 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1510 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1513 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1516 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1519 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1522 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1525 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1528 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1531 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1534 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1537 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1540 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1543 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1546 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1549 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1552 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1555 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1558 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1561 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1564 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1567 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1570 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1573 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1576 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1579 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1582 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1585 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1588 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1591 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1594 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1597 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1600 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1603 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1606 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1609 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1612 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1615 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1618 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1621 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1624 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1627 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1630 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1633 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1636 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1639 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1642 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1645 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1648 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1651 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1654 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1657 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1660 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1663 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1666 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1669 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1672 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1675 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1678 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1681 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1684 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1687 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1690 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1693 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1696 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1699 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1702 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1705 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1708 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1711 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1714 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1717 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1720 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1723 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1726 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1729 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1732 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1735 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1738 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1741 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1744 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1747 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1750 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1753 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1756 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1759 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1762 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1765 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1768 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1771 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1774 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1777 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1780 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1783 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1786 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1789 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1792 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1795 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1798 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1801 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1804 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1807 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1810 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1813 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1816 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1819 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1822 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1825 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1828 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1831 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1834 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1837 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1840 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1843 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1846 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1849 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1852 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1855 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1858 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1861 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1864 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1867 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1870 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1873 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1876 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1879 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1882 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1885 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1888 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1891 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1894 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1897 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1900 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1903 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1906 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1909 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1912 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1915 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1918 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1921 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1924 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1927 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1930 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1933 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1936 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1939 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1942 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1945 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1948 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1951 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1954 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1957 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1960 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1963 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1966 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1969 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1972 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1975 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1978 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1981 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1984 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1987 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1990 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1993 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1996 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:1999 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2002 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2005 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2008 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2011 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2014 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2017 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2020 +assert_return( + () => invoke($0, `f32x4.max`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2023 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2026 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2029 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2032 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2035 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2038 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2041 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2044 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2047 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2050 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2053 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2056 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2059 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2062 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2065 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2068 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2071 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2074 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2077 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2080 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2083 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2086 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2089 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2092 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2095 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2098 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2101 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2104 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2107 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2110 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2113 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2116 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2119 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2122 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2125 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2128 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2131 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2134 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2137 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2140 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2143 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2146 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2149 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2152 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2155 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2158 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2161 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2164 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2167 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2170 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2173 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2176 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2179 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2182 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2185 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2188 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2191 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2194 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2197 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2200 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2203 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2206 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2209 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2212 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2215 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2218 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2221 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2224 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2227 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2230 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2233 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2236 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2239 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2242 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2245 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2248 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2251 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2254 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2257 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2260 +assert_return( + () => invoke($0, `f32x4.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2265 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([0, 0, -0, 0]), f32x4([0, -0, 0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2268 +assert_return( + () => invoke($0, `f32x4.min`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2271 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([0, 0, -0, 0]), f32x4([0, -0, 0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2274 +assert_return( + () => invoke($0, `f32x4.max`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2279 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2281 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2283 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2285 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2287 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2289 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2291 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2293 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2295 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2297 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2299 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855])]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2301 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2303 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2305 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2307 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([Infinity, Infinity, Infinity, Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2309 +assert_return( + () => invoke($0, `f32x4.abs`, [f32x4([-Infinity, -Infinity, -Infinity, -Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2311 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2313 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2315 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2317 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2319 +assert_return( + () => invoke($0, `f32x4.abs`, [ + f32x4([-123456790, -123456790, -123456790, -123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2325 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.min (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4.wast:2326 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.max (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4.wast:2327 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.min (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4.wast:2328 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.max (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4.wast:2329 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.min (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4.wast:2330 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.max (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4.wast:2331 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.min (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4.wast:2332 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.max (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4.wast:2335 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.abs (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4.wast:2336 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.min (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4.wast:2337 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.max (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4.wast:2341 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.abs-arg-empty (result v128) + (f32x4.abs) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4.wast:2349 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.min-1st-arg-empty (result v128) + (f32x4.min (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4.wast:2357 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.min-arg-empty (result v128) + (f32x4.min) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4.wast:2365 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.max-1st-arg-empty (result v128) + (f32x4.max (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4.wast:2373 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.max-arg-empty (result v128) + (f32x4.max) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4.wast:2383 +let $1 = instantiate(`(module + (func (export "max-min") (param v128 v128 v128) (result v128) + (f32x4.max (f32x4.min (local.get 0) (local.get 1))(local.get 2))) + (func (export "min-max") (param v128 v128 v128) (result v128) + (f32x4.min (f32x4.max (local.get 0) (local.get 1))(local.get 2))) + (func (export "max-abs") (param v128 v128) (result v128) + (f32x4.max (f32x4.abs (local.get 0)) (local.get 1))) + (func (export "min-abs") (param v128 v128) (result v128) + (f32x4.min (f32x4.abs (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_f32x4.wast:2394 +assert_return( + () => invoke($1, `max-min`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.25, 0.25, 0.25, 0.25]), + f32x4([0.125, 0.125, 0.125, 0.125]), + ]), + [ + new F32x4Pattern( + value("f32", 0.25), + value("f32", 0.25), + value("f32", 0.25), + value("f32", 0.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2398 +assert_return( + () => invoke($1, `min-max`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.25, 0.25, 0.25, 0.25]), + f32x4([0.125, 0.125, 0.125, 0.125]), + ]), + [ + new F32x4Pattern( + value("f32", 0.125), + value("f32", 0.125), + value("f32", 0.125), + value("f32", 0.125), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2402 +assert_return( + () => invoke($1, `max-abs`, [ + f32x4([-1.125, -1.125, -1.125, -1.125]), + f32x4([0.125, 0.125, 0.125, 0.125]), + ]), + [ + new F32x4Pattern( + value("f32", 1.125), + value("f32", 1.125), + value("f32", 1.125), + value("f32", 1.125), + ), + ], +); + +// ./test/core/simd/simd_f32x4.wast:2405 +assert_return( + () => invoke($1, `min-abs`, [ + f32x4([-1.125, -1.125, -1.125, -1.125]), + f32x4([0.125, 0.125, 0.125, 0.125]), + ]), + [ + new F32x4Pattern( + value("f32", 0.125), + value("f32", 0.125), + value("f32", 0.125), + value("f32", 0.125), + ), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_arith.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_arith.wast.js new file mode 100644 index 0000000000..44410bfa92 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_arith.wast.js @@ -0,0 +1,45212 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f32x4_arith.wast + +// ./test/core/simd/simd_f32x4_arith.wast:4 +let $0 = instantiate(`(module + (func (export "f32x4.add") (param v128 v128) (result v128) (f32x4.add (local.get 0) (local.get 1))) + (func (export "f32x4.sub") (param v128 v128) (result v128) (f32x4.sub (local.get 0) (local.get 1))) + (func (export "f32x4.mul") (param v128 v128) (result v128) (f32x4.mul (local.get 0) (local.get 1))) + (func (export "f32x4.div") (param v128 v128) (result v128) (f32x4.div (local.get 0) (local.get 1))) + (func (export "f32x4.neg") (param v128) (result v128) (f32x4.neg (local.get 0))) + (func (export "f32x4.sqrt") (param v128) (result v128) (f32x4.sqrt (local.get 0))) +)`); + +// ./test/core/simd/simd_f32x4_arith.wast:13 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:16 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:19 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:22 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:25 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:28 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:31 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:34 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:37 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:40 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:43 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:46 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:49 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:52 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:55 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:58 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:61 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:64 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:67 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:70 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:73 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:76 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:79 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:82 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:85 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:88 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:91 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:94 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:97 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:100 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:103 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:106 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:109 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:112 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:115 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:118 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:121 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:124 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:127 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:130 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:133 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:136 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:139 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:142 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:145 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:148 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:151 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:154 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:157 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:160 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:163 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:166 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:169 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:172 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:175 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:178 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:181 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:184 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:187 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:190 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:193 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:196 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:199 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:202 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:205 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:208 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:211 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:214 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:217 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:220 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:223 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:226 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:229 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:232 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:235 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:238 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:241 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:244 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:247 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:250 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:253 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:256 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:259 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:262 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:265 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:268 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:271 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:274 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:277 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:280 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:283 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:286 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:289 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:292 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:295 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:298 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:301 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:304 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:307 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:310 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:313 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:316 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:319 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:322 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:325 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1.5), + value("f32", 1.5), + value("f32", 1.5), + value("f32", 1.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:328 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:331 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.7831855), + value("f32", 6.7831855), + value("f32", 6.7831855), + value("f32", 6.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:334 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -5.7831855), + value("f32", -5.7831855), + value("f32", -5.7831855), + value("f32", -5.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:337 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:340 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:343 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:346 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:349 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:352 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:355 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:358 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:361 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:364 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:367 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:370 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:373 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:376 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1.5), + value("f32", -1.5), + value("f32", -1.5), + value("f32", -1.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:379 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 5.7831855), + value("f32", 5.7831855), + value("f32", 5.7831855), + value("f32", 5.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:382 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.7831855), + value("f32", -6.7831855), + value("f32", -6.7831855), + value("f32", -6.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:385 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:388 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:391 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:394 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:397 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:400 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:403 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:406 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:409 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:412 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:415 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 1.5), + value("f32", 1.5), + value("f32", 1.5), + value("f32", 1.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:418 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:421 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 2), + value("f32", 2), + value("f32", 2), + value("f32", 2), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:424 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:427 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 7.2831855), + value("f32", 7.2831855), + value("f32", 7.2831855), + value("f32", 7.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:430 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -5.2831855), + value("f32", -5.2831855), + value("f32", -5.2831855), + value("f32", -5.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:433 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:436 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:439 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:442 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:445 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:448 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:451 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:454 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:457 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:460 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:463 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:466 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -1.5), + value("f32", -1.5), + value("f32", -1.5), + value("f32", -1.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:469 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:472 +assert_return( + () => invoke($0, `f32x4.add`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -2), + value("f32", -2), + value("f32", -2), + value("f32", -2), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:475 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 5.2831855), + value("f32", 5.2831855), + value("f32", 5.2831855), + value("f32", 5.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:478 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -7.2831855), + value("f32", -7.2831855), + value("f32", -7.2831855), + value("f32", -7.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:481 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:484 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:487 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:490 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:493 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:496 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:499 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:502 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:505 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:508 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:511 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 6.7831855), + value("f32", 6.7831855), + value("f32", 6.7831855), + value("f32", 6.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:514 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 5.7831855), + value("f32", 5.7831855), + value("f32", 5.7831855), + value("f32", 5.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:517 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 7.2831855), + value("f32", 7.2831855), + value("f32", 7.2831855), + value("f32", 7.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:520 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 5.2831855), + value("f32", 5.2831855), + value("f32", 5.2831855), + value("f32", 5.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:523 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 12.566371), + value("f32", 12.566371), + value("f32", 12.566371), + value("f32", 12.566371), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:526 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:529 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:532 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:535 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:538 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:541 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:544 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:547 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:550 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:553 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:556 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:559 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -5.7831855), + value("f32", -5.7831855), + value("f32", -5.7831855), + value("f32", -5.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:562 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -6.7831855), + value("f32", -6.7831855), + value("f32", -6.7831855), + value("f32", -6.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:565 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -5.2831855), + value("f32", -5.2831855), + value("f32", -5.2831855), + value("f32", -5.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:568 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -7.2831855), + value("f32", -7.2831855), + value("f32", -7.2831855), + value("f32", -7.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:571 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:574 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -12.566371), + value("f32", -12.566371), + value("f32", -12.566371), + value("f32", -12.566371), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:577 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:580 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:583 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:586 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:589 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:592 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:595 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:598 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:601 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:604 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:607 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:610 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:613 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:616 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:619 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:622 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:625 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:628 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:631 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:634 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:637 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:640 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:643 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:646 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:649 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:652 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:655 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:658 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:661 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:664 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:667 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:670 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:673 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:676 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:679 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:682 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:685 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:688 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:691 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:694 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:697 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:700 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:703 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:706 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:709 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:712 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:715 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:718 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:721 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:724 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:727 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:730 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:733 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:736 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:739 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:742 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:745 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:748 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:751 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:754 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:757 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:760 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:763 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:766 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:769 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:772 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:775 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:778 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:781 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:784 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:787 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:790 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:793 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:796 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:799 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:802 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:805 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:808 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:811 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:814 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:817 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:820 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:823 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:826 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:829 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:832 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:835 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:838 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:841 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:844 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:847 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:850 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:853 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:856 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:859 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:862 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:865 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:868 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:871 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:874 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:877 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:880 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:883 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:886 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:889 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:892 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:895 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:898 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:901 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:904 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:907 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:910 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:913 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:916 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:919 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:922 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:925 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:928 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:931 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:934 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:937 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:940 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:943 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:946 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:949 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:952 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:955 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:958 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:961 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:964 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:967 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:970 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:973 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:976 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:979 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:982 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:985 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:988 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:991 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:994 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:997 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1000 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1003 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1006 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1009 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1012 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1015 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1018 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1021 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1024 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1027 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1030 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1033 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1036 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1039 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1042 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1045 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1048 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1051 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1054 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1057 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1060 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1063 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1066 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1069 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1072 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1075 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1078 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1081 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1084 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1087 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1090 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1093 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1096 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1099 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1102 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1105 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1108 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1111 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1114 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1117 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1120 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1123 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1126 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1129 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1132 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1135 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1138 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1141 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1144 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1147 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1150 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1153 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1156 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1159 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1162 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1165 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1168 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1171 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1174 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1177 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1180 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1183 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1186 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1189 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1192 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1195 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1198 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1201 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1204 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1207 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1210 +assert_return( + () => invoke($0, `f32x4.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1213 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 246913580), + value("f32", 246913580), + value("f32", 246913580), + value("f32", 246913580), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1216 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1219 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1222 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1225 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 246913580), + value("f32", 246913580), + value("f32", 246913580), + value("f32", 246913580), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1228 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1231 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1234 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1237 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 246913580), + value("f32", 246913580), + value("f32", 246913580), + value("f32", 246913580), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1240 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1243 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + value("f32", 2469135800000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1246 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + value("f32", 0.000000000024691358), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1249 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 163971060000000000), + value("f32", 163971060000000000), + value("f32", 163971060000000000), + value("f32", 163971060000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1252 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1255 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1258 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 312749980000), + value("f32", 312749980000), + value("f32", 312749980000), + value("f32", 312749980000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1261 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 163971060000000000), + value("f32", 163971060000000000), + value("f32", 163971060000000000), + value("f32", 163971060000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1264 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1267 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1270 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 312749980000), + value("f32", 312749980000), + value("f32", 312749980000), + value("f32", 312749980000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1273 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 163971060000000000), + value("f32", 163971060000000000), + value("f32", 163971060000000000), + value("f32", 163971060000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1276 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1279 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + value("f32", 85968060000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1282 +assert_return( + () => invoke($0, `f32x4.add`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 312749980000), + value("f32", 312749980000), + value("f32", 312749980000), + value("f32", 312749980000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1285 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1288 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1291 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1294 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1297 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1300 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1303 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1306 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1309 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1312 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1315 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1318 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1321 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1324 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1327 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1330 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1333 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1336 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1339 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1342 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1345 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1348 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1351 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1354 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1357 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1360 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1363 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1366 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1369 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1372 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1375 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1378 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1381 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1384 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1387 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1390 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1393 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1396 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1399 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1402 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1405 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1408 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1411 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1414 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1417 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1420 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1423 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1426 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1429 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1432 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1435 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1438 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1441 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1444 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1447 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1450 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1453 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1456 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1459 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1462 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1465 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1468 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1471 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1474 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1477 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1480 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1483 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + value("f32", 0.000000000000000000000000000000000000011754942), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1486 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + value("f32", 0.000000000000000000000000000000000000011754945), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1489 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1492 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1495 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1498 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1501 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1504 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1507 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1510 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1513 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1516 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1519 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1522 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1525 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1528 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1531 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + value("f32", -0.000000000000000000000000000000000000011754945), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1534 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + value("f32", -0.000000000000000000000000000000000000011754942), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1537 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1540 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1543 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1546 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1549 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1552 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1555 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1558 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1561 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1564 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1567 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1570 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1573 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1576 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1579 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1582 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1585 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1588 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1591 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1594 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1597 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1600 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1.5), + value("f32", 1.5), + value("f32", 1.5), + value("f32", 1.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1603 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -5.7831855), + value("f32", -5.7831855), + value("f32", -5.7831855), + value("f32", -5.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1606 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.7831855), + value("f32", 6.7831855), + value("f32", 6.7831855), + value("f32", 6.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1609 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1612 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1615 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1618 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1621 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1624 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1627 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1630 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1633 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1636 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1639 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1642 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1645 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -1.5), + value("f32", -1.5), + value("f32", -1.5), + value("f32", -1.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1648 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1651 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.7831855), + value("f32", -6.7831855), + value("f32", -6.7831855), + value("f32", -6.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1654 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 5.7831855), + value("f32", 5.7831855), + value("f32", 5.7831855), + value("f32", 5.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1657 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1660 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1663 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1666 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1669 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1672 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1675 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1678 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1681 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1684 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1687 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1690 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 1.5), + value("f32", 1.5), + value("f32", 1.5), + value("f32", 1.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1693 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1696 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 2), + value("f32", 2), + value("f32", 2), + value("f32", 2), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1699 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -5.2831855), + value("f32", -5.2831855), + value("f32", -5.2831855), + value("f32", -5.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1702 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 7.2831855), + value("f32", 7.2831855), + value("f32", 7.2831855), + value("f32", 7.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1705 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1708 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1711 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1714 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1717 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1720 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1723 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1726 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1729 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1732 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1735 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -1.5), + value("f32", -1.5), + value("f32", -1.5), + value("f32", -1.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1738 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1741 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -2), + value("f32", -2), + value("f32", -2), + value("f32", -2), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1744 +assert_return( + () => invoke($0, `f32x4.sub`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1747 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -7.2831855), + value("f32", -7.2831855), + value("f32", -7.2831855), + value("f32", -7.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1750 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 5.2831855), + value("f32", 5.2831855), + value("f32", 5.2831855), + value("f32", 5.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1753 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1756 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1759 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1762 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1765 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1768 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1771 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1774 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1777 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1780 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1783 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 5.7831855), + value("f32", 5.7831855), + value("f32", 5.7831855), + value("f32", 5.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1786 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 6.7831855), + value("f32", 6.7831855), + value("f32", 6.7831855), + value("f32", 6.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1789 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 5.2831855), + value("f32", 5.2831855), + value("f32", 5.2831855), + value("f32", 5.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1792 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 7.2831855), + value("f32", 7.2831855), + value("f32", 7.2831855), + value("f32", 7.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1795 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1798 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 12.566371), + value("f32", 12.566371), + value("f32", 12.566371), + value("f32", 12.566371), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1801 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1804 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1807 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1810 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1813 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1816 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1819 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1822 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1825 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1828 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1831 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -6.7831855), + value("f32", -6.7831855), + value("f32", -6.7831855), + value("f32", -6.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1834 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -5.7831855), + value("f32", -5.7831855), + value("f32", -5.7831855), + value("f32", -5.7831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1837 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -7.2831855), + value("f32", -7.2831855), + value("f32", -7.2831855), + value("f32", -7.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1840 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -5.2831855), + value("f32", -5.2831855), + value("f32", -5.2831855), + value("f32", -5.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1843 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -12.566371), + value("f32", -12.566371), + value("f32", -12.566371), + value("f32", -12.566371), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1846 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1849 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1852 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1855 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1858 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1861 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1864 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1867 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1870 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1873 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1876 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1879 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1882 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1885 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1888 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1891 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1894 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1897 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1900 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1903 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1906 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1909 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1912 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1915 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1918 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1921 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1924 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1927 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1930 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1933 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1936 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1939 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1942 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1945 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1948 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1951 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1954 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1957 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1960 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1963 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1966 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1969 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1972 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1975 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1978 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1981 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1984 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1987 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1990 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1993 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1996 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:1999 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2002 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2005 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2008 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2011 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2014 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2017 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2020 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2023 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2026 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2029 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2032 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2035 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2038 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2041 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2044 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2047 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2050 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2053 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2056 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2059 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2062 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2065 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2068 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2071 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2074 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2077 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2080 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2083 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2086 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2089 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2092 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2095 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2098 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2101 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2104 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2107 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2110 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2113 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2116 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2119 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2122 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2125 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2128 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2131 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2134 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2137 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2140 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2143 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2146 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2149 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2152 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2155 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2158 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2161 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2164 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2167 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2170 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2173 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2176 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2179 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2182 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2185 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2188 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2191 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2194 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2197 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2200 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2203 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2206 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2209 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2212 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2215 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2218 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2221 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2224 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2227 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2230 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2233 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2236 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2239 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2242 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2245 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2248 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2251 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2254 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2257 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2260 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2263 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2266 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2269 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2272 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2275 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2278 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2281 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2284 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2287 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2290 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2293 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2296 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2299 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2302 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2305 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2308 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2311 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2314 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2317 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2320 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2323 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2326 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2329 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2332 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2335 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2338 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2341 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2344 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2347 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2350 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2353 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2356 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2359 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2362 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2365 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2368 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2371 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2374 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2377 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2380 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2383 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2386 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2389 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2392 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2395 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2398 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2401 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2404 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2407 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2410 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2413 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2416 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2419 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2422 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2425 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2428 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2431 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2434 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2437 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2440 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2443 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2446 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2449 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2452 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2455 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2458 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2461 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2464 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2467 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2470 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2473 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2476 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2479 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2482 +assert_return( + () => invoke($0, `f32x4.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2485 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2488 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2491 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2494 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2497 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2500 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2503 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2506 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2509 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2512 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2515 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2518 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2521 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2524 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2527 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2530 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2533 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2536 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2539 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2542 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2545 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2548 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2551 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2554 +assert_return( + () => invoke($0, `f32x4.sub`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2557 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2560 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2563 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2566 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2569 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2572 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2575 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2578 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2581 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2584 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2587 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2590 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2593 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2596 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2599 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2602 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2605 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2608 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2611 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2614 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2617 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2620 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2623 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2626 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2629 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2632 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2635 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2638 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2641 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2644 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2647 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2650 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2653 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2656 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2659 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2662 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2665 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2668 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2671 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2674 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2677 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2680 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2683 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2686 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2689 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2692 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2695 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2698 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2701 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2704 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2707 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2710 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2713 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2716 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2719 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2722 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2725 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2728 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2731 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2734 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2737 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2740 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2743 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2746 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2749 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2752 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2755 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2758 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2761 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2764 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2767 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2770 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2773 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2776 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2779 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2782 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2785 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 3.9999998), + value("f32", 3.9999998), + value("f32", 3.9999998), + value("f32", 3.9999998), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2788 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -3.9999998), + value("f32", -3.9999998), + value("f32", -3.9999998), + value("f32", -3.9999998), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2791 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2794 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2797 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2800 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2803 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2806 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2809 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2812 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2815 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2818 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2821 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2824 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2827 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2830 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2833 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -3.9999998), + value("f32", -3.9999998), + value("f32", -3.9999998), + value("f32", -3.9999998), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2836 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 3.9999998), + value("f32", 3.9999998), + value("f32", 3.9999998), + value("f32", 3.9999998), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2839 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2842 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2845 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2848 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2851 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2854 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2857 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2860 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2863 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.25), + value("f32", 0.25), + value("f32", 0.25), + value("f32", 0.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2866 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.25), + value("f32", -0.25), + value("f32", -0.25), + value("f32", -0.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2869 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2872 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2875 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 3.1415927), + value("f32", 3.1415927), + value("f32", 3.1415927), + value("f32", 3.1415927), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2878 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -3.1415927), + value("f32", -3.1415927), + value("f32", -3.1415927), + value("f32", -3.1415927), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2881 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2884 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2887 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2890 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2893 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2896 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2899 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2902 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2905 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + value("f32", -0.000000000000000000000000000000000000005877472), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2908 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + value("f32", 0.000000000000000000000000000000000000005877472), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2911 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.25), + value("f32", -0.25), + value("f32", -0.25), + value("f32", -0.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2914 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.25), + value("f32", 0.25), + value("f32", 0.25), + value("f32", 0.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2917 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2920 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2923 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -3.1415927), + value("f32", -3.1415927), + value("f32", -3.1415927), + value("f32", -3.1415927), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2926 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 3.1415927), + value("f32", 3.1415927), + value("f32", 3.1415927), + value("f32", 3.1415927), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2929 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2932 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2935 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2938 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2941 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2944 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2947 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2950 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2953 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2956 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2959 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2962 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2965 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2968 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2971 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2974 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2977 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2980 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2983 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2986 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2989 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2992 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2995 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:2998 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3001 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3004 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3007 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3010 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3013 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3016 +assert_return( + () => invoke($0, `f32x4.mul`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3019 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3022 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3025 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3028 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3031 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3034 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3037 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3040 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3043 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3046 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3049 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3052 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3055 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 3.1415927), + value("f32", 3.1415927), + value("f32", 3.1415927), + value("f32", 3.1415927), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3058 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -3.1415927), + value("f32", -3.1415927), + value("f32", -3.1415927), + value("f32", -3.1415927), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3061 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3064 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3067 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 39.47842), + value("f32", 39.47842), + value("f32", 39.47842), + value("f32", 39.47842), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3070 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -39.47842), + value("f32", -39.47842), + value("f32", -39.47842), + value("f32", -39.47842), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3073 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3076 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3079 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3082 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3085 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3088 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3091 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + value("f32", -0.000000000000000000000000000000000000000000008), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3094 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + value("f32", 0.000000000000000000000000000000000000000000008), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3097 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + value("f32", -0.00000000000000000000000000000000000007385849), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3100 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + value("f32", 0.00000000000000000000000000000000000007385849), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3103 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -3.1415927), + value("f32", -3.1415927), + value("f32", -3.1415927), + value("f32", -3.1415927), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3106 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 3.1415927), + value("f32", 3.1415927), + value("f32", 3.1415927), + value("f32", 3.1415927), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3109 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3112 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3115 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -39.47842), + value("f32", -39.47842), + value("f32", -39.47842), + value("f32", -39.47842), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3118 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 39.47842), + value("f32", 39.47842), + value("f32", 39.47842), + value("f32", 39.47842), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3121 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3124 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3127 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3130 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3133 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3136 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3139 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3142 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3145 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 3.9999998), + value("f32", 3.9999998), + value("f32", 3.9999998), + value("f32", 3.9999998), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3148 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -3.9999998), + value("f32", -3.9999998), + value("f32", -3.9999998), + value("f32", -3.9999998), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3151 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3154 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3157 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3160 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3163 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3166 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3169 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3172 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3175 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3178 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3181 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3184 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3187 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + value("f32", -0.00000047683713), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3190 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + value("f32", 0.00000047683713), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3193 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -3.9999998), + value("f32", -3.9999998), + value("f32", -3.9999998), + value("f32", -3.9999998), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3196 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 3.9999998), + value("f32", 3.9999998), + value("f32", 3.9999998), + value("f32", 3.9999998), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3199 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + value("f32", -170141170000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3202 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + value("f32", 170141170000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3205 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3208 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3211 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3214 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3217 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3220 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3223 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3226 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3229 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3232 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3235 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3238 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3241 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3244 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3247 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3250 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3253 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3256 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3259 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3262 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3265 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3268 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3271 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3274 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3277 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3280 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3283 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3286 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3289 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3292 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3295 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3298 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3301 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3304 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3307 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3310 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3313 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3316 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3319 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3322 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3325 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3328 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3331 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3334 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3337 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3340 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3343 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3346 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3349 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3352 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3355 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3358 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3361 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3364 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3367 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3370 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3373 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3376 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3379 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3382 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3385 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3388 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3391 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3394 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3397 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3400 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3403 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3406 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3409 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3412 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3415 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3418 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3421 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3424 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3427 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3430 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3433 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3436 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3439 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3442 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3445 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3448 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3451 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3454 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3457 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3460 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3463 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3466 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3469 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3472 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3475 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3478 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3481 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3484 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3487 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3490 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3493 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3496 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3499 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3502 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3505 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3508 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3511 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3514 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3517 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3520 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3523 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3526 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3529 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3532 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3535 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3538 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3541 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3544 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3547 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3550 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3553 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3556 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3559 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3562 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3565 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3568 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3571 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3574 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3577 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3580 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3583 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3586 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3589 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3592 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3595 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3598 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3601 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3604 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3607 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3610 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3613 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3616 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3619 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3622 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3625 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3628 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3631 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3634 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3637 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3640 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3643 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3646 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3649 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3652 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3655 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3658 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3661 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3664 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3667 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3670 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3673 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3676 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3679 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3682 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3685 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3688 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3691 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3694 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3697 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3700 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3703 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3706 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3709 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3712 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3715 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3718 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3721 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3724 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3727 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3730 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3733 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3736 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3739 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3742 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3745 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3748 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3751 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3754 +assert_return( + () => invoke($0, `f32x4.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3757 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 15241579000000000), + value("f32", 15241579000000000), + value("f32", 15241579000000000), + value("f32", 15241579000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3760 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3763 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3766 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3769 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 15241579000000000), + value("f32", 15241579000000000), + value("f32", 15241579000000000), + value("f32", 15241579000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3772 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3775 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3778 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3781 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 15241579000000000), + value("f32", 15241579000000000), + value("f32", 15241579000000000), + value("f32", 15241579000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3784 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3787 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3790 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + value("f32", 0.00000000000000000000015241579), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3793 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3796 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3799 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3802 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3805 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3808 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3811 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3814 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3817 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + value("f32", 6721627600000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3820 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3823 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3826 +assert_return( + () => invoke($0, `f32x4.mul`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + value("f32", 24453139000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3829 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3832 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3835 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3838 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3841 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3844 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3847 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3850 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3853 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3856 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3859 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3862 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3865 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3868 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3871 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3874 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3877 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3880 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3883 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3886 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3889 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3892 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3895 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3898 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3901 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3904 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3907 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3910 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3913 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3916 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3919 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3922 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3925 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3928 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3931 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3934 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3937 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000011920929), + value("f32", 0.00000011920929), + value("f32", 0.00000011920929), + value("f32", 0.00000011920929), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3940 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000011920929), + value("f32", -0.00000011920929), + value("f32", -0.00000011920929), + value("f32", -0.00000011920929), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3943 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3946 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3949 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3952 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3955 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3958 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3961 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3964 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3967 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3970 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3973 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3976 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3979 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3982 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3985 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.00000011920929), + value("f32", -0.00000011920929), + value("f32", -0.00000011920929), + value("f32", -0.00000011920929), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3988 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000011920929), + value("f32", 0.00000011920929), + value("f32", 0.00000011920929), + value("f32", 0.00000011920929), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3991 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + value("f32", -0.000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3994 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + value("f32", 0.000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:3997 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4000 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4003 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4006 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4009 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4012 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4015 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4018 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4021 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4024 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4027 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 8388608), + value("f32", 8388608), + value("f32", 8388608), + value("f32", 8388608), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4030 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -8388608), + value("f32", -8388608), + value("f32", -8388608), + value("f32", -8388608), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4033 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4036 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4039 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4042 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4045 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4048 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4051 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000001870857), + value("f32", 0.000000000000000000000000000000000000001870857), + value("f32", 0.000000000000000000000000000000000000001870857), + value("f32", 0.000000000000000000000000000000000000001870857), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4054 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000001870857), + value("f32", -0.000000000000000000000000000000000000001870857), + value("f32", -0.000000000000000000000000000000000000001870857), + value("f32", -0.000000000000000000000000000000000000001870857), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4057 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4060 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4063 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4066 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4069 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4072 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4075 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -8388608), + value("f32", -8388608), + value("f32", -8388608), + value("f32", -8388608), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4078 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 8388608), + value("f32", 8388608), + value("f32", 8388608), + value("f32", 8388608), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4081 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4084 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4087 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + value("f32", -0.000000000000000000000000000000000000023509887), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4090 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + value("f32", 0.000000000000000000000000000000000000023509887), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4093 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4096 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4099 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000001870857), + value("f32", -0.000000000000000000000000000000000000001870857), + value("f32", -0.000000000000000000000000000000000000001870857), + value("f32", -0.000000000000000000000000000000000000001870857), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4102 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000001870857), + value("f32", 0.000000000000000000000000000000000000001870857), + value("f32", 0.000000000000000000000000000000000000001870857), + value("f32", 0.000000000000000000000000000000000000001870857), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4105 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4108 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4111 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4114 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4117 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4120 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4123 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4126 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4129 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42535296000000000000000000000000000000), + value("f32", 42535296000000000000000000000000000000), + value("f32", 42535296000000000000000000000000000000), + value("f32", 42535296000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4132 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -42535296000000000000000000000000000000), + value("f32", -42535296000000000000000000000000000000), + value("f32", -42535296000000000000000000000000000000), + value("f32", -42535296000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4135 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4138 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4141 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4144 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4147 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.07957747), + value("f32", 0.07957747), + value("f32", 0.07957747), + value("f32", 0.07957747), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4150 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.07957747), + value("f32", -0.07957747), + value("f32", -0.07957747), + value("f32", -0.07957747), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4153 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000001469368), + value("f32", 0.000000000000000000000000000000000000001469368), + value("f32", 0.000000000000000000000000000000000000001469368), + value("f32", 0.000000000000000000000000000000000000001469368), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4156 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000001469368), + value("f32", -0.000000000000000000000000000000000000001469368), + value("f32", -0.000000000000000000000000000000000000001469368), + value("f32", -0.000000000000000000000000000000000000001469368), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4159 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4162 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4165 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4168 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4171 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4174 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4177 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -42535296000000000000000000000000000000), + value("f32", -42535296000000000000000000000000000000), + value("f32", -42535296000000000000000000000000000000), + value("f32", -42535296000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4180 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42535296000000000000000000000000000000), + value("f32", 42535296000000000000000000000000000000), + value("f32", 42535296000000000000000000000000000000), + value("f32", 42535296000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4183 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4186 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4189 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4192 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4195 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.07957747), + value("f32", -0.07957747), + value("f32", -0.07957747), + value("f32", -0.07957747), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4198 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.07957747), + value("f32", 0.07957747), + value("f32", 0.07957747), + value("f32", 0.07957747), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4201 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000001469368), + value("f32", -0.000000000000000000000000000000000000001469368), + value("f32", -0.000000000000000000000000000000000000001469368), + value("f32", -0.000000000000000000000000000000000000001469368), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4204 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000001469368), + value("f32", 0.000000000000000000000000000000000000001469368), + value("f32", 0.000000000000000000000000000000000000001469368), + value("f32", 0.000000000000000000000000000000000000001469368), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4207 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4210 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4213 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4216 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4219 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4222 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4225 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 85070590000000000000000000000000000000), + value("f32", 85070590000000000000000000000000000000), + value("f32", 85070590000000000000000000000000000000), + value("f32", 85070590000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4228 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -85070590000000000000000000000000000000), + value("f32", -85070590000000000000000000000000000000), + value("f32", -85070590000000000000000000000000000000), + value("f32", -85070590000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4231 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 2), + value("f32", 2), + value("f32", 2), + value("f32", 2), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4234 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -2), + value("f32", -2), + value("f32", -2), + value("f32", -2), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4237 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4240 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4243 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.15915494), + value("f32", 0.15915494), + value("f32", 0.15915494), + value("f32", 0.15915494), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4246 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.15915494), + value("f32", -0.15915494), + value("f32", -0.15915494), + value("f32", -0.15915494), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4249 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000002938736), + value("f32", 0.000000000000000000000000000000000000002938736), + value("f32", 0.000000000000000000000000000000000000002938736), + value("f32", 0.000000000000000000000000000000000000002938736), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4252 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000002938736), + value("f32", -0.000000000000000000000000000000000000002938736), + value("f32", -0.000000000000000000000000000000000000002938736), + value("f32", -0.000000000000000000000000000000000000002938736), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4255 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4258 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4261 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4264 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4267 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4270 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4273 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -85070590000000000000000000000000000000), + value("f32", -85070590000000000000000000000000000000), + value("f32", -85070590000000000000000000000000000000), + value("f32", -85070590000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4276 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 85070590000000000000000000000000000000), + value("f32", 85070590000000000000000000000000000000), + value("f32", 85070590000000000000000000000000000000), + value("f32", 85070590000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4279 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -2), + value("f32", -2), + value("f32", -2), + value("f32", -2), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4282 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 2), + value("f32", 2), + value("f32", 2), + value("f32", 2), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4285 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4288 +assert_return( + () => invoke($0, `f32x4.div`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4291 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.15915494), + value("f32", -0.15915494), + value("f32", -0.15915494), + value("f32", -0.15915494), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4294 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.15915494), + value("f32", 0.15915494), + value("f32", 0.15915494), + value("f32", 0.15915494), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4297 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000002938736), + value("f32", -0.000000000000000000000000000000000000002938736), + value("f32", -0.000000000000000000000000000000000000002938736), + value("f32", -0.000000000000000000000000000000000000002938736), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4300 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000002938736), + value("f32", 0.000000000000000000000000000000000000002938736), + value("f32", 0.000000000000000000000000000000000000002938736), + value("f32", 0.000000000000000000000000000000000000002938736), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4303 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4306 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4309 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4312 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4315 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4318 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4321 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4324 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4327 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 12.566371), + value("f32", 12.566371), + value("f32", 12.566371), + value("f32", 12.566371), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4330 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -12.566371), + value("f32", -12.566371), + value("f32", -12.566371), + value("f32", -12.566371), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4333 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4336 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4339 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4342 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4345 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000018464624), + value("f32", 0.000000000000000000000000000000000000018464624), + value("f32", 0.000000000000000000000000000000000000018464624), + value("f32", 0.000000000000000000000000000000000000018464624), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4348 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000018464624), + value("f32", -0.000000000000000000000000000000000000018464624), + value("f32", -0.000000000000000000000000000000000000018464624), + value("f32", -0.000000000000000000000000000000000000018464624), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4351 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4354 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4357 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4360 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4363 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4366 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4369 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4372 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4375 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -12.566371), + value("f32", -12.566371), + value("f32", -12.566371), + value("f32", -12.566371), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4378 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 12.566371), + value("f32", 12.566371), + value("f32", 12.566371), + value("f32", 12.566371), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4381 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4384 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4387 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4390 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4393 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000018464624), + value("f32", -0.000000000000000000000000000000000000018464624), + value("f32", -0.000000000000000000000000000000000000018464624), + value("f32", -0.000000000000000000000000000000000000018464624), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4396 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000018464624), + value("f32", 0.000000000000000000000000000000000000018464624), + value("f32", 0.000000000000000000000000000000000000018464624), + value("f32", 0.000000000000000000000000000000000000018464624), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4399 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4402 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4405 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4408 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4411 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4414 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4417 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4420 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4423 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4426 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4429 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4432 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4435 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 54157613000000000000000000000000000000), + value("f32", 54157613000000000000000000000000000000), + value("f32", 54157613000000000000000000000000000000), + value("f32", 54157613000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4438 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -54157613000000000000000000000000000000), + value("f32", -54157613000000000000000000000000000000), + value("f32", -54157613000000000000000000000000000000), + value("f32", -54157613000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4441 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4444 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4447 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4450 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4453 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4456 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4459 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4462 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4465 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4468 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4471 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4474 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4477 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4480 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4483 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -54157613000000000000000000000000000000), + value("f32", -54157613000000000000000000000000000000), + value("f32", -54157613000000000000000000000000000000), + value("f32", -54157613000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4486 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 54157613000000000000000000000000000000), + value("f32", 54157613000000000000000000000000000000), + value("f32", 54157613000000000000000000000000000000), + value("f32", 54157613000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4489 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4492 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4495 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4498 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4501 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4504 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4507 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4510 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4513 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4516 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4519 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4522 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4525 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4528 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4531 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4534 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4537 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4540 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4543 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4546 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4549 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4552 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4555 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4558 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4561 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4564 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4567 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4570 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4573 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4576 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4579 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4582 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4585 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4588 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4591 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4594 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4597 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4600 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4603 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4606 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4609 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4612 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4615 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4618 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4621 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4624 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4627 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4630 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4633 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4636 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4639 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4642 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4645 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4648 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4651 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4654 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4657 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4660 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4663 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4666 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4669 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4672 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4675 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4678 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4681 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4684 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4687 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4690 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4693 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4696 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4699 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4702 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4705 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4708 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4711 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4714 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4717 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4720 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4723 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4726 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4729 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4732 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4735 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4738 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4741 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4744 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4747 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4750 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4753 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4756 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4759 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4762 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4765 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4768 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4771 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4774 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4777 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4780 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4783 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4786 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4789 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4792 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4795 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4798 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4801 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4804 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4807 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4810 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4813 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4816 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4819 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4822 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4825 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4828 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4831 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4834 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4837 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4840 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4843 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4846 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4849 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4852 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4855 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4858 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4861 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4864 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4867 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4870 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4873 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4876 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4879 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4882 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4885 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4888 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4891 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4894 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4897 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4900 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4903 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4906 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4909 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4912 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4915 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4918 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4921 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4924 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4927 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4930 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4933 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4936 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4939 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4942 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4945 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4948 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4951 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4954 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4957 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4960 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4963 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4966 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4969 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4972 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4975 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4978 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4981 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4984 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4987 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4990 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4993 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4996 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:4999 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5002 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5005 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5008 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5011 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5014 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5017 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5020 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5023 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5026 +assert_return( + () => invoke($0, `f32x4.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5029 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5032 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5035 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5038 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5041 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5044 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5047 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5050 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5053 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5056 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5059 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5062 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5065 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5068 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5071 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5074 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5077 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5080 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5083 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5086 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5089 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5092 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5095 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5098 +assert_return( + () => invoke($0, `f32x4.div`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5101 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5103 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5105 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000003743392), + value("f32", 0.00000000000000000000003743392), + value("f32", 0.00000000000000000000003743392), + value("f32", 0.00000000000000000000003743392), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5107 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5109 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000010842022), + value("f32", 0.00000000000000000010842022), + value("f32", 0.00000000000000000010842022), + value("f32", 0.00000000000000000010842022), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5111 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5113 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.70710677), + value("f32", 0.70710677), + value("f32", 0.70710677), + value("f32", 0.70710677), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5115 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5117 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5119 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5121 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855])]), + [ + new F32x4Pattern( + value("f32", 2.5066283), + value("f32", 2.5066283), + value("f32", 2.5066283), + value("f32", 2.5066283), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5123 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5125 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 18446743000000000000), + value("f32", 18446743000000000000), + value("f32", 18446743000000000000), + value("f32", 18446743000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5127 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5129 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([Infinity, Infinity, Infinity, Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5131 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([-Infinity, -Infinity, -Infinity, -Infinity])]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5133 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5135 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5137 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5139 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5141 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 11111.111), + value("f32", 11111.111), + value("f32", 11111.111), + value("f32", 11111.111), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5143 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5145 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5147 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5149 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 11111.111), + value("f32", 11111.111), + value("f32", 11111.111), + value("f32", 11111.111), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5151 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5153 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5155 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5157 +assert_return( + () => invoke($0, `f32x4.sqrt`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 11111.111), + value("f32", 11111.111), + value("f32", 11111.111), + value("f32", 11111.111), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5159 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5161 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + value("f32", 35136419000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5163 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + value("f32", 0.0000035136418), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5165 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 286331170), + value("f32", 286331170), + value("f32", 286331170), + value("f32", 286331170), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5167 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5169 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5171 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 395442.78), + value("f32", 395442.78), + value("f32", 395442.78), + value("f32", 395442.78), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5173 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 286331170), + value("f32", 286331170), + value("f32", 286331170), + value("f32", 286331170), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5175 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5177 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5179 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 395442.78), + value("f32", 395442.78), + value("f32", 395442.78), + value("f32", 395442.78), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5181 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 286331170), + value("f32", 286331170), + value("f32", 286331170), + value("f32", 286331170), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5183 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5185 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + value("f32", 207325900000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5187 +assert_return( + () => invoke($0, `f32x4.sqrt`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 395442.78), + value("f32", 395442.78), + value("f32", 395442.78), + value("f32", 395442.78), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5189 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5191 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5193 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5195 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5197 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5199 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5201 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5203 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5205 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5207 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5209 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855])]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5211 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5213 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5215 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5217 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([Infinity, Infinity, Infinity, Infinity])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5219 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([-Infinity, -Infinity, -Infinity, -Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5221 +assert_return( + () => invoke($0, `f32x4.neg`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5223 +assert_return( + () => invoke($0, `f32x4.neg`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5225 +assert_return( + () => invoke($0, `f32x4.neg`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5227 +assert_return( + () => invoke($0, `f32x4.neg`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5229 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5231 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5233 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5235 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5237 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5239 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5241 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5243 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5245 +assert_return( + () => invoke($0, `f32x4.neg`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + value("f32", -123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5247 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5249 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + value("f32", -1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5251 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + value("f32", -0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5253 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -81985530000000000), + value("f32", -81985530000000000), + value("f32", -81985530000000000), + value("f32", -81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5255 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5257 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5259 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -156374990000), + value("f32", -156374990000), + value("f32", -156374990000), + value("f32", -156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5261 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -81985530000000000), + value("f32", -81985530000000000), + value("f32", -81985530000000000), + value("f32", -81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5263 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5265 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5267 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -156374990000), + value("f32", -156374990000), + value("f32", -156374990000), + value("f32", -156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5269 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -81985530000000000), + value("f32", -81985530000000000), + value("f32", -81985530000000000), + value("f32", -81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5271 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5273 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + value("f32", -42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5275 +assert_return( + () => invoke($0, `f32x4.neg`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -156374990000), + value("f32", -156374990000), + value("f32", -156374990000), + value("f32", -156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5280 +let $1 = instantiate(`(module + + (func (export "f32x4_sqrt_arith") (result v128) + (f32x4.sqrt (v128.const f32x4 nan:0x200000 -nan:0x200000 16.0 25.0))) + (func (export "f32x4_sqrt_canon") (result v128) + (f32x4.sqrt (v128.const f32x4 -1.0 nan 4.0 9.0))) + (func (export "f32x4_sqrt_mixed") (result v128) + (f32x4.sqrt (v128.const f32x4 -inf nan:0x200000 36.0 49.0))) +)`); + +// ./test/core/simd/simd_f32x4_arith.wast:5290 +assert_return( + () => invoke($1, `f32x4_sqrt_arith`, []), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + value("f32", 4), + value("f32", 5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5291 +assert_return( + () => invoke($1, `f32x4_sqrt_canon`, []), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5292 +assert_return( + () => invoke($1, `f32x4_sqrt_mixed`, []), + [ + new F32x4Pattern( + `canonical_nan`, + `arithmetic_nan`, + value("f32", 6), + value("f32", 7), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5295 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.neg (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5296 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.sqrt (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5297 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.add (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5298 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.sub (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5299 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.mul (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5300 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.div (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5304 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.neg-arg-empty (result v128) + (f32x4.neg) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5312 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.sqrt-arg-empty (result v128) + (f32x4.sqrt) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5320 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.add-1st-arg-empty (result v128) + (f32x4.add (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5328 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.add-arg-empty (result v128) + (f32x4.add) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5336 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.sub-1st-arg-empty (result v128) + (f32x4.sub (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5344 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.sub-arg-empty (result v128) + (f32x4.sub) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5352 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.mul-1st-arg-empty (result v128) + (f32x4.mul (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5360 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.mul-arg-empty (result v128) + (f32x4.mul) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5368 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.div-1st-arg-empty (result v128) + (f32x4.div (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5376 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.div-arg-empty (result v128) + (f32x4.div) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_arith.wast:5386 +let $2 = instantiate(`(module + (func (export "add-sub") (param v128 v128 v128) (result v128) + (f32x4.add (f32x4.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "div-add") (param v128 v128 v128) (result v128) + (f32x4.div (f32x4.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "div-mul") (param v128 v128 v128) (result v128) + (f32x4.div (f32x4.mul (local.get 0) (local.get 1))(local.get 2))) + (func (export "div-sub") (param v128 v128 v128) (result v128) + (f32x4.div (f32x4.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-add") (param v128 v128 v128) (result v128) + (f32x4.mul (f32x4.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-div") (param v128 v128 v128) (result v128) + (f32x4.mul (f32x4.div (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-sub") (param v128 v128 v128) (result v128) + (f32x4.mul (f32x4.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "sub-add") (param v128 v128 v128) (result v128) + (f32x4.sub (f32x4.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "add-neg") (param v128 v128) (result v128) + (f32x4.add (f32x4.neg (local.get 0)) (local.get 1))) + (func (export "add-sqrt") (param v128 v128) (result v128) + (f32x4.add (f32x4.sqrt (local.get 0)) (local.get 1))) + (func (export "div-neg") (param v128 v128) (result v128) + (f32x4.div (f32x4.neg (local.get 0)) (local.get 1))) + (func (export "div-sqrt") (param v128 v128) (result v128) + (f32x4.div (f32x4.sqrt (local.get 0)) (local.get 1))) + (func (export "mul-neg") (param v128 v128) (result v128) + (f32x4.mul (f32x4.neg (local.get 0)) (local.get 1))) + (func (export "mul-sqrt") (param v128 v128) (result v128) + (f32x4.mul (f32x4.sqrt (local.get 0)) (local.get 1))) + (func (export "sub-neg") (param v128 v128) (result v128) + (f32x4.sub (f32x4.neg (local.get 0)) (local.get 1))) + (func (export "sub-sqrt") (param v128 v128) (result v128) + (f32x4.sub (f32x4.sqrt (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_f32x4_arith.wast:5421 +assert_return( + () => invoke($2, `add-sub`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.25, 0.25, 0.25, 0.25]), + f32x4([0.125, 0.125, 0.125, 0.125]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5425 +assert_return( + () => invoke($2, `div-add`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.125, 0.125, 0.125, 0.125]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 5), + value("f32", 5), + value("f32", 5), + value("f32", 5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5429 +assert_return( + () => invoke($2, `div-mul`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([4, 4, 4, 4]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 18), + value("f32", 18), + value("f32", 18), + value("f32", 18), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5433 +assert_return( + () => invoke($2, `div-sub`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.125, 0.125, 0.125, 0.125]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 4), + value("f32", 4), + value("f32", 4), + value("f32", 4), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5437 +assert_return( + () => invoke($2, `mul-add`, [ + f32x4([1.25, 1.25, 1.25, 1.25]), + f32x4([0.25, 0.25, 0.25, 0.25]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 0.375), + value("f32", 0.375), + value("f32", 0.375), + value("f32", 0.375), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5441 +assert_return( + () => invoke($2, `mul-div`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.125, 0.125, 0.125, 0.125]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 2.25), + value("f32", 2.25), + value("f32", 2.25), + value("f32", 2.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5445 +assert_return( + () => invoke($2, `mul-sub`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.125, 0.125, 0.125, 0.125]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 0.25), + value("f32", 0.25), + value("f32", 0.25), + value("f32", 0.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5449 +assert_return( + () => invoke($2, `sub-add`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.25, 0.25, 0.25, 0.25]), + f32x4([0.125, 0.125, 0.125, 0.125]), + ]), + [ + new F32x4Pattern( + value("f32", 1.25), + value("f32", 1.25), + value("f32", 1.25), + value("f32", 1.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5453 +assert_return( + () => invoke($2, `add-neg`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.125, 0.125, 0.125, 0.125]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5456 +assert_return( + () => invoke($2, `add-sqrt`, [ + f32x4([2.25, 2.25, 2.25, 2.25]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 1.75), + value("f32", 1.75), + value("f32", 1.75), + value("f32", 1.75), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5459 +assert_return( + () => invoke($2, `div-neg`, [ + f32x4([1.5, 1.5, 1.5, 1.5]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", -6), + value("f32", -6), + value("f32", -6), + value("f32", -6), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5462 +assert_return( + () => invoke($2, `div-sqrt`, [ + f32x4([2.25, 2.25, 2.25, 2.25]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 6), + value("f32", 6), + value("f32", 6), + value("f32", 6), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5465 +assert_return( + () => invoke($2, `mul-neg`, [ + f32x4([1.5, 1.5, 1.5, 1.5]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", -0.375), + value("f32", -0.375), + value("f32", -0.375), + value("f32", -0.375), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5468 +assert_return( + () => invoke($2, `mul-sqrt`, [ + f32x4([2.25, 2.25, 2.25, 2.25]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 0.375), + value("f32", 0.375), + value("f32", 0.375), + value("f32", 0.375), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5471 +assert_return( + () => invoke($2, `sub-neg`, [ + f32x4([1.125, 1.125, 1.125, 1.125]), + f32x4([0.125, 0.125, 0.125, 0.125]), + ]), + [ + new F32x4Pattern( + value("f32", -1.25), + value("f32", -1.25), + value("f32", -1.25), + value("f32", -1.25), + ), + ], +); + +// ./test/core/simd/simd_f32x4_arith.wast:5474 +assert_return( + () => invoke($2, `sub-sqrt`, [ + f32x4([2.25, 2.25, 2.25, 2.25]), + f32x4([0.25, 0.25, 0.25, 0.25]), + ]), + [ + new F32x4Pattern( + value("f32", 1.25), + value("f32", 1.25), + value("f32", 1.25), + value("f32", 1.25), + ), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_cmp.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_cmp.wast.js new file mode 100644 index 0000000000..e11d19597a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_cmp.wast.js @@ -0,0 +1,47701 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f32x4_cmp.wast + +// ./test/core/simd/simd_f32x4_cmp.wast:3 +let $0 = instantiate(`(module + (func (export "eq") (param $$x v128) (param $$y v128) (result v128) (f32x4.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x v128) (param $$y v128) (result v128) (f32x4.ne (local.get $$x) (local.get $$y))) + (func (export "lt") (param $$x v128) (param $$y v128) (result v128) (f32x4.lt (local.get $$x) (local.get $$y))) + (func (export "le") (param $$x v128) (param $$y v128) (result v128) (f32x4.le (local.get $$x) (local.get $$y))) + (func (export "gt") (param $$x v128) (param $$y v128) (result v128) (f32x4.gt (local.get $$x) (local.get $$y))) + (func (export "ge") (param $$x v128) (param $$y v128) (result v128) (f32x4.ge (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/simd/simd_f32x4_cmp.wast:13 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:16 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:19 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:22 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:25 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:28 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:31 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:34 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:37 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:40 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:43 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:46 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:49 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:52 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:55 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:58 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:61 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:64 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:67 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:70 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:73 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:76 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:79 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:82 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:85 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:88 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:91 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:94 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:97 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:100 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:103 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:106 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:109 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:112 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:115 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:118 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:121 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:124 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:127 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:130 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:133 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:136 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:139 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:142 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:145 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:148 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:151 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:154 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:157 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:160 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:163 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:166 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:169 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:172 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:175 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:178 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:181 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:184 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:187 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:190 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:193 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:196 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:199 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:202 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:205 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:208 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:211 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:214 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:217 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:220 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:223 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:226 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:229 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:232 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:235 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:238 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:241 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:244 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:247 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:250 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:253 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:256 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:259 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:262 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:265 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:268 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:271 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:274 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:277 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:280 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:283 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:286 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:289 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:292 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:295 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:298 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:301 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:304 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:307 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:310 +assert_return( + () => invoke($0, `eq`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:313 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:316 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:319 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:322 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:325 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:328 +assert_return( + () => invoke($0, `eq`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:331 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:334 +assert_return( + () => invoke($0, `eq`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:337 +assert_return( + () => invoke($0, `eq`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:340 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:343 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:346 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:349 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:352 +assert_return( + () => invoke($0, `eq`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:355 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:358 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:361 +assert_return( + () => invoke($0, `eq`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:364 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:367 +assert_return( + () => invoke($0, `eq`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:370 +assert_return( + () => invoke($0, `eq`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:373 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:376 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:379 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:382 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:385 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:388 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:391 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:394 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:397 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:400 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:403 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:406 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:409 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:412 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:415 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:418 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:421 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:424 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:427 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:430 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:433 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:436 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:439 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:442 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:445 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:448 +assert_return( + () => invoke($0, `eq`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:451 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:454 +assert_return( + () => invoke($0, `eq`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:457 +assert_return( + () => invoke($0, `eq`, [f32x4([-0, -0, -0, -0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:460 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:463 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:466 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:469 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:472 +assert_return( + () => invoke($0, `eq`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:475 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:478 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:481 +assert_return( + () => invoke($0, `eq`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:484 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:487 +assert_return( + () => invoke($0, `eq`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:490 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:493 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:496 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:499 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:502 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:505 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:508 +assert_return( + () => invoke($0, `eq`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:511 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:514 +assert_return( + () => invoke($0, `eq`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:517 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:520 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:523 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:526 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:529 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:532 +assert_return( + () => invoke($0, `eq`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:535 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:538 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:541 +assert_return( + () => invoke($0, `eq`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:544 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:547 +assert_return( + () => invoke($0, `eq`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:550 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:553 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:556 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:559 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:562 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:565 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:568 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:571 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:574 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:577 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:580 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:583 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:586 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:589 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:592 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:595 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:598 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:601 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:604 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:607 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:610 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:613 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:616 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:619 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:622 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:625 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:628 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:631 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:634 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:637 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:640 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:643 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:646 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:649 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:652 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:655 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:658 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:661 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:664 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:667 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:670 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:673 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:676 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:679 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:682 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:685 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:688 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:691 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:694 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:697 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:700 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:703 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:706 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:709 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:712 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:715 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:718 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:721 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:724 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:727 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:730 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:733 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:736 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:739 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:742 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:745 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:748 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:751 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:754 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:757 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:760 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:763 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:766 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:769 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:772 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:775 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:778 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:781 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:784 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:787 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:790 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:793 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:796 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:799 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:802 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:805 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:808 +assert_return( + () => invoke($0, `eq`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:811 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:814 +assert_return( + () => invoke($0, `eq`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:817 +assert_return( + () => invoke($0, `eq`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:820 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:823 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:826 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:829 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:832 +assert_return( + () => invoke($0, `eq`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:835 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:838 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:841 +assert_return( + () => invoke($0, `eq`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:844 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:847 +assert_return( + () => invoke($0, `eq`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:850 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:853 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:856 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:859 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:862 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:865 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:868 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:871 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:874 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:877 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:880 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:883 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:886 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:889 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:892 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:895 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:898 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:901 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:904 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:907 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:910 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:913 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:916 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:919 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:922 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:925 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:928 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:931 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:934 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:937 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:940 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:943 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:946 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:949 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:952 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:955 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:958 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:961 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:964 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:967 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:970 +assert_return( + () => invoke($0, `eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:973 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:976 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:979 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:982 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:985 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:988 +assert_return( + () => invoke($0, `eq`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:991 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:994 +assert_return( + () => invoke($0, `eq`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:997 +assert_return( + () => invoke($0, `eq`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1000 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1003 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1006 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1009 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1012 +assert_return( + () => invoke($0, `eq`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1015 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1018 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1021 +assert_return( + () => invoke($0, `eq`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1024 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1027 +assert_return( + () => invoke($0, `eq`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1030 +assert_return( + () => invoke($0, `eq`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1033 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1036 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1039 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1042 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1045 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1048 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1051 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1054 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1057 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1060 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1063 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1066 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1069 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1072 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1075 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1078 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1081 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1084 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1087 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1090 +assert_return( + () => invoke($0, `eq`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1093 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1096 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1099 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1102 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1105 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1108 +assert_return( + () => invoke($0, `eq`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1111 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1114 +assert_return( + () => invoke($0, `eq`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1117 +assert_return( + () => invoke($0, `eq`, [f32x4([-1, -1, -1, -1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1120 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1123 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1126 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1129 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1132 +assert_return( + () => invoke($0, `eq`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1135 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1138 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1141 +assert_return( + () => invoke($0, `eq`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1144 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1147 +assert_return( + () => invoke($0, `eq`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1150 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1153 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1156 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1159 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1162 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1165 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1168 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1171 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1174 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1177 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1180 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1183 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1186 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1189 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1192 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1195 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1198 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1201 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1204 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1207 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1210 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1213 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1216 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1219 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1222 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1225 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1228 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1231 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1234 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1237 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1240 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1243 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1246 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1249 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1252 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1255 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1258 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1261 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1264 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1267 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1270 +assert_return( + () => invoke($0, `eq`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1273 +assert_return( + () => invoke($0, `eq`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1276 +assert_return( + () => invoke($0, `eq`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1279 +assert_return( + () => invoke($0, `eq`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1282 +assert_return( + () => invoke($0, `eq`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1285 +assert_return( + () => invoke($0, `eq`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1290 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1293 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1296 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1299 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1302 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1305 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1308 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1311 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1314 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1317 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1320 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1323 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1326 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1329 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1332 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1335 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1338 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1341 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1344 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1347 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1350 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1353 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1356 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1359 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1362 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1365 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1368 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1371 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1374 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1377 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1380 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1383 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1386 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1389 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1392 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1395 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1398 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1401 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1404 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1407 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1410 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1413 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1416 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1419 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1422 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1425 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1428 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1431 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1434 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1437 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1440 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1443 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1446 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1449 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1452 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1455 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1458 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1461 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1464 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1467 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1470 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1473 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1476 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1479 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1482 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1485 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1488 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1491 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1494 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1497 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1500 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1503 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1506 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1509 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1512 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1515 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1518 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1521 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1524 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1527 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1530 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1533 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1536 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1539 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1542 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1545 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1548 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1551 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1554 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1557 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1560 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1563 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1566 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1569 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1572 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1575 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1578 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1581 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1584 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1587 +assert_return( + () => invoke($0, `ne`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1590 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1593 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1596 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1599 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1602 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1605 +assert_return( + () => invoke($0, `ne`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1608 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1611 +assert_return( + () => invoke($0, `ne`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1614 +assert_return( + () => invoke($0, `ne`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1617 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1620 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1623 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1626 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1629 +assert_return( + () => invoke($0, `ne`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1632 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1635 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1638 +assert_return( + () => invoke($0, `ne`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1641 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1644 +assert_return( + () => invoke($0, `ne`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1647 +assert_return( + () => invoke($0, `ne`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1650 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1653 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1656 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1659 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1662 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1665 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1668 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1671 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1674 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1677 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1680 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1683 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1686 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1689 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1692 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1695 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1698 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1701 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1704 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1707 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1710 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1713 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1716 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1719 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1722 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1725 +assert_return( + () => invoke($0, `ne`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1728 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1731 +assert_return( + () => invoke($0, `ne`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1734 +assert_return( + () => invoke($0, `ne`, [f32x4([-0, -0, -0, -0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1737 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1740 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1743 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1746 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1749 +assert_return( + () => invoke($0, `ne`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1752 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1755 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1758 +assert_return( + () => invoke($0, `ne`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1761 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1764 +assert_return( + () => invoke($0, `ne`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1767 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1770 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1773 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1776 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1779 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1782 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1785 +assert_return( + () => invoke($0, `ne`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1788 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1791 +assert_return( + () => invoke($0, `ne`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1794 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1797 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1800 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1803 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1806 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1809 +assert_return( + () => invoke($0, `ne`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1812 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1815 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1818 +assert_return( + () => invoke($0, `ne`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1821 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1824 +assert_return( + () => invoke($0, `ne`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1827 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1830 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1833 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1836 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1839 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1842 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1845 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1848 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1851 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1854 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1857 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1860 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1863 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1866 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1869 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1872 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1875 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1878 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1881 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1884 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1887 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1890 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1893 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1896 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1899 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1902 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1905 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1908 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1911 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1914 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1917 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1920 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1923 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1926 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1929 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1932 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1935 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1938 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1941 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1944 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1947 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1950 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1953 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1956 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1959 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1962 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1965 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1968 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1971 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1974 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1977 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1980 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1983 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1986 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1989 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1992 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1995 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:1998 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2001 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2004 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2007 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2010 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2013 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2016 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2019 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2022 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2025 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2028 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2031 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2034 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2037 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2040 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2043 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2046 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2049 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2052 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2055 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2058 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2061 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2064 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2067 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2070 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2073 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2076 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2079 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2082 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2085 +assert_return( + () => invoke($0, `ne`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2088 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2091 +assert_return( + () => invoke($0, `ne`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2094 +assert_return( + () => invoke($0, `ne`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2097 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2100 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2103 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2106 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2109 +assert_return( + () => invoke($0, `ne`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2112 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2115 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2118 +assert_return( + () => invoke($0, `ne`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2121 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2124 +assert_return( + () => invoke($0, `ne`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2127 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2130 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2133 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2136 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2139 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2142 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2145 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2148 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2151 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2154 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2157 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2160 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2163 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2166 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2169 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2172 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2175 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2178 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2181 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2184 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2187 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2190 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2193 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2196 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2199 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2202 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2205 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2208 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2211 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2214 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2217 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2220 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2223 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2226 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2229 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2232 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2235 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2238 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2241 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2244 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2247 +assert_return( + () => invoke($0, `ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2250 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2253 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2256 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2259 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2262 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2265 +assert_return( + () => invoke($0, `ne`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2268 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2271 +assert_return( + () => invoke($0, `ne`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2274 +assert_return( + () => invoke($0, `ne`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2277 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2280 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2283 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2286 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2289 +assert_return( + () => invoke($0, `ne`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2292 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2295 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2298 +assert_return( + () => invoke($0, `ne`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2301 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2304 +assert_return( + () => invoke($0, `ne`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2307 +assert_return( + () => invoke($0, `ne`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2310 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2313 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2316 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2319 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2322 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2325 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2328 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2331 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2334 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2337 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2340 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2343 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2346 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2349 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2352 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2355 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2358 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2361 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2364 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2367 +assert_return( + () => invoke($0, `ne`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2370 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2373 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2376 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2379 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2382 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2385 +assert_return( + () => invoke($0, `ne`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2388 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2391 +assert_return( + () => invoke($0, `ne`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2394 +assert_return( + () => invoke($0, `ne`, [f32x4([-1, -1, -1, -1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2397 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2400 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2403 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2406 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2409 +assert_return( + () => invoke($0, `ne`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2412 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2415 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2418 +assert_return( + () => invoke($0, `ne`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2421 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2424 +assert_return( + () => invoke($0, `ne`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2427 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2430 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2433 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2436 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2439 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2442 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2445 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2448 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2451 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2454 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2457 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2460 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2463 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2466 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2469 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2472 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2475 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2478 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2481 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2484 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2487 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2490 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2493 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2496 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2499 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2502 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2505 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2508 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2511 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2514 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2517 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2520 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2523 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2526 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2529 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2532 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2535 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2538 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2541 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2544 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2547 +assert_return( + () => invoke($0, `ne`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2550 +assert_return( + () => invoke($0, `ne`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2553 +assert_return( + () => invoke($0, `ne`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2556 +assert_return( + () => invoke($0, `ne`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2559 +assert_return( + () => invoke($0, `ne`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2562 +assert_return( + () => invoke($0, `ne`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2567 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2570 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2573 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2576 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2579 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2582 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2585 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2588 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2591 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2594 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2597 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2600 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2603 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2606 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2609 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2612 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2615 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2618 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2621 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2624 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2627 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2630 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2633 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2636 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2639 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2642 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2645 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2648 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2651 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2654 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2657 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2660 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2663 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2666 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2669 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2672 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2675 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2678 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2681 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2684 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2687 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2690 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2693 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2696 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2699 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2702 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2705 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2708 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2711 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2714 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2717 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2720 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2723 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2726 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2729 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2732 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2735 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2738 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2741 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2744 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2747 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2750 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2753 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2756 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2759 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2762 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2765 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2768 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2771 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2774 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2777 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2780 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2783 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2786 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2789 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2792 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2795 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2798 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2801 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2804 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2807 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2810 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2813 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2816 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2819 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2822 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2825 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2828 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2831 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2834 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2837 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2840 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2843 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2846 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2849 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2852 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2855 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2858 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2861 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2864 +assert_return( + () => invoke($0, `lt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2867 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2870 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2873 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2876 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2879 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2882 +assert_return( + () => invoke($0, `lt`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2885 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2888 +assert_return( + () => invoke($0, `lt`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2891 +assert_return( + () => invoke($0, `lt`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2894 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2897 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2900 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2903 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2906 +assert_return( + () => invoke($0, `lt`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2909 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2912 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2915 +assert_return( + () => invoke($0, `lt`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2918 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2921 +assert_return( + () => invoke($0, `lt`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2924 +assert_return( + () => invoke($0, `lt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2927 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2930 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2933 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2936 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2939 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2942 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2945 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2948 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2951 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2954 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2957 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2960 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2963 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2966 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2969 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2972 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2975 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2978 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2981 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2984 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2987 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2990 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2993 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2996 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:2999 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3002 +assert_return( + () => invoke($0, `lt`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3005 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3008 +assert_return( + () => invoke($0, `lt`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3011 +assert_return( + () => invoke($0, `lt`, [f32x4([-0, -0, -0, -0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3014 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3017 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3020 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3023 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3026 +assert_return( + () => invoke($0, `lt`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3029 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3032 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3035 +assert_return( + () => invoke($0, `lt`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3038 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3041 +assert_return( + () => invoke($0, `lt`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3044 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3047 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3050 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3053 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3056 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3059 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3062 +assert_return( + () => invoke($0, `lt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3065 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3068 +assert_return( + () => invoke($0, `lt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3071 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3074 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3077 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3080 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3083 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3086 +assert_return( + () => invoke($0, `lt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3089 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3092 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3095 +assert_return( + () => invoke($0, `lt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3098 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3101 +assert_return( + () => invoke($0, `lt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3104 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3107 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3110 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3113 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3116 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3119 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3122 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3125 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3128 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3131 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3134 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3137 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3140 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3143 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3146 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3149 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3152 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3155 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3158 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3161 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3164 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3167 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3170 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3173 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3176 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3179 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3182 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3185 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3188 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3191 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3194 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3197 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3200 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3203 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3206 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3209 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3212 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3215 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3218 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3221 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3224 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3227 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3230 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3233 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3236 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3239 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3242 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3245 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3248 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3251 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3254 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3257 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3260 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3263 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3266 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3269 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3272 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3275 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3278 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3281 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3284 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3287 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3290 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3293 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3296 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3299 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3302 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3305 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3308 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3311 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3314 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3317 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3320 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3323 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3326 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3329 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3332 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3335 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3338 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3341 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3344 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3347 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3350 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3353 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3356 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3359 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3362 +assert_return( + () => invoke($0, `lt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3365 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3368 +assert_return( + () => invoke($0, `lt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3371 +assert_return( + () => invoke($0, `lt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3374 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3377 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3380 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3383 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3386 +assert_return( + () => invoke($0, `lt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3389 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3392 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3395 +assert_return( + () => invoke($0, `lt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3398 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3401 +assert_return( + () => invoke($0, `lt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3404 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3407 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3410 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3413 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3416 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3419 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3422 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3425 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3428 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3431 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3434 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3437 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3440 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3443 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3446 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3449 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3452 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3455 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3458 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3461 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3464 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3467 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3470 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3473 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3476 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3479 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3482 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3485 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3488 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3491 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3494 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3497 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3500 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3503 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3506 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3509 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3512 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3515 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3518 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3521 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3524 +assert_return( + () => invoke($0, `lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3527 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3530 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3533 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3536 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3539 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3542 +assert_return( + () => invoke($0, `lt`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3545 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3548 +assert_return( + () => invoke($0, `lt`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3551 +assert_return( + () => invoke($0, `lt`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3554 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3557 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3560 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3563 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3566 +assert_return( + () => invoke($0, `lt`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3569 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3572 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3575 +assert_return( + () => invoke($0, `lt`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3578 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3581 +assert_return( + () => invoke($0, `lt`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3584 +assert_return( + () => invoke($0, `lt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3587 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3590 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3593 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3596 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3599 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3602 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3605 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3608 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3611 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3614 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3617 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3620 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3623 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3626 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3629 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3632 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3635 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3638 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3641 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3644 +assert_return( + () => invoke($0, `lt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3647 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3650 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3653 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3656 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3659 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3662 +assert_return( + () => invoke($0, `lt`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3665 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3668 +assert_return( + () => invoke($0, `lt`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3671 +assert_return( + () => invoke($0, `lt`, [f32x4([-1, -1, -1, -1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3674 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3677 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3680 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3683 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3686 +assert_return( + () => invoke($0, `lt`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3689 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3692 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3695 +assert_return( + () => invoke($0, `lt`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3698 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3701 +assert_return( + () => invoke($0, `lt`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3704 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3707 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3710 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3713 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3716 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3719 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3722 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3725 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3728 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3731 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3734 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3737 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3740 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3743 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3746 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3749 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3752 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3755 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3758 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3761 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3764 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3767 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3770 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3773 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3776 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3779 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3782 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3785 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3788 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3791 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3794 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3797 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3800 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3803 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3806 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3809 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3812 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3815 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3818 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3821 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3824 +assert_return( + () => invoke($0, `lt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3827 +assert_return( + () => invoke($0, `lt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3830 +assert_return( + () => invoke($0, `lt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3833 +assert_return( + () => invoke($0, `lt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3836 +assert_return( + () => invoke($0, `lt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3839 +assert_return( + () => invoke($0, `lt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3844 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3847 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3850 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3853 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3856 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3859 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3862 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3865 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3868 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3871 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3874 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3877 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3880 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3883 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3886 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3889 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3892 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3895 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3898 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3901 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3904 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3907 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3910 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3913 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3916 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3919 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3922 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3925 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3928 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3931 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3934 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3937 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3940 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3943 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3946 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3949 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3952 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3955 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3958 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3961 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3964 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3967 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3970 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3973 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3976 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3979 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3982 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3985 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3988 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3991 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3994 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:3997 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4000 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4003 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4006 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4009 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4012 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4015 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4018 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4021 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4024 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4027 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4030 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4033 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4036 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4039 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4042 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4045 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4048 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4051 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4054 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4057 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4060 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4063 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4066 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4069 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4072 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4075 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4078 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4081 +assert_return( + () => invoke($0, `le`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4084 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4087 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4090 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4093 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4096 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4099 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4102 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4105 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4108 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4111 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4114 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4117 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4120 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4123 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4126 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4129 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4132 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4135 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4138 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4141 +assert_return( + () => invoke($0, `le`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4144 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4147 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4150 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4153 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4156 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4159 +assert_return( + () => invoke($0, `le`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4162 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4165 +assert_return( + () => invoke($0, `le`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4168 +assert_return( + () => invoke($0, `le`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4171 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4174 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4177 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4180 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4183 +assert_return( + () => invoke($0, `le`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4186 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4189 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4192 +assert_return( + () => invoke($0, `le`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4195 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4198 +assert_return( + () => invoke($0, `le`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4201 +assert_return( + () => invoke($0, `le`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4204 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4207 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4210 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4213 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4216 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4219 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4222 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4225 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4228 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4231 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4234 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4237 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4240 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4243 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4246 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4249 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4252 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4255 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4258 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4261 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4264 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4267 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4270 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4273 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4276 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4279 +assert_return( + () => invoke($0, `le`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4282 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4285 +assert_return( + () => invoke($0, `le`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4288 +assert_return( + () => invoke($0, `le`, [f32x4([-0, -0, -0, -0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4291 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4294 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4297 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4300 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4303 +assert_return( + () => invoke($0, `le`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4306 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4309 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4312 +assert_return( + () => invoke($0, `le`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4315 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4318 +assert_return( + () => invoke($0, `le`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4321 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4324 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4327 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4330 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4333 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4336 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4339 +assert_return( + () => invoke($0, `le`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4342 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4345 +assert_return( + () => invoke($0, `le`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4348 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4351 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4354 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4357 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4360 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4363 +assert_return( + () => invoke($0, `le`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4366 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4369 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4372 +assert_return( + () => invoke($0, `le`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4375 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4378 +assert_return( + () => invoke($0, `le`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4381 +assert_return( + () => invoke($0, `le`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4384 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4387 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4390 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4393 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4396 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4399 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4402 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4405 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4408 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4411 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4414 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4417 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4420 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4423 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4426 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4429 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4432 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4435 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4438 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4441 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4444 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4447 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4450 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4453 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4456 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4459 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4462 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4465 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4468 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4471 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4474 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4477 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4480 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4483 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4486 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4489 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4492 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4495 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4498 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4501 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4504 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4507 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4510 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4513 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4516 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4519 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4522 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4525 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4528 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4531 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4534 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4537 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4540 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4543 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4546 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4549 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4552 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4555 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4558 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4561 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4564 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4567 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4570 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4573 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4576 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4579 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4582 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4585 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4588 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4591 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4594 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4597 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4600 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4603 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4606 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4609 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4612 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4615 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4618 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4621 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4624 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4627 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4630 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4633 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4636 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4639 +assert_return( + () => invoke($0, `le`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4642 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4645 +assert_return( + () => invoke($0, `le`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4648 +assert_return( + () => invoke($0, `le`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4651 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4654 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4657 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4660 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4663 +assert_return( + () => invoke($0, `le`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4666 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4669 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4672 +assert_return( + () => invoke($0, `le`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4675 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4678 +assert_return( + () => invoke($0, `le`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4681 +assert_return( + () => invoke($0, `le`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4684 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4687 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4690 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4693 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4696 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4699 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4702 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4705 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4708 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4711 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4714 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4717 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4720 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4723 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4726 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4729 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4732 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4735 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4738 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4741 +assert_return( + () => invoke($0, `le`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4744 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4747 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4750 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4753 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4756 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4759 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4762 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4765 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4768 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4771 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4774 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4777 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4780 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4783 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4786 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4789 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4792 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4795 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4798 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4801 +assert_return( + () => invoke($0, `le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4804 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4807 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4810 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4813 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4816 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4819 +assert_return( + () => invoke($0, `le`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4822 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4825 +assert_return( + () => invoke($0, `le`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4828 +assert_return( + () => invoke($0, `le`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4831 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4834 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4837 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4840 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4843 +assert_return( + () => invoke($0, `le`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4846 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4849 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4852 +assert_return( + () => invoke($0, `le`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4855 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4858 +assert_return( + () => invoke($0, `le`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4861 +assert_return( + () => invoke($0, `le`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4864 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4867 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4870 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4873 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4876 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4879 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4882 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4885 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4888 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4891 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4894 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4897 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4900 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4903 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4906 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4909 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4912 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4915 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4918 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4921 +assert_return( + () => invoke($0, `le`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4924 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4927 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4930 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4933 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4936 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4939 +assert_return( + () => invoke($0, `le`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4942 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4945 +assert_return( + () => invoke($0, `le`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4948 +assert_return( + () => invoke($0, `le`, [f32x4([-1, -1, -1, -1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4951 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4954 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4957 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4960 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4963 +assert_return( + () => invoke($0, `le`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4966 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4969 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4972 +assert_return( + () => invoke($0, `le`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4975 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4978 +assert_return( + () => invoke($0, `le`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4981 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4984 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4987 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4990 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4993 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4996 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:4999 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5002 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5005 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5008 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5011 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5014 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5017 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5020 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5023 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5026 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5029 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5032 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5035 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5038 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5041 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5044 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5047 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5050 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5053 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5056 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5059 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5062 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5065 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5068 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5071 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5074 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5077 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5080 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5083 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5086 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5089 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5092 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5095 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5098 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5101 +assert_return( + () => invoke($0, `le`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5104 +assert_return( + () => invoke($0, `le`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5107 +assert_return( + () => invoke($0, `le`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5110 +assert_return( + () => invoke($0, `le`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5113 +assert_return( + () => invoke($0, `le`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5116 +assert_return( + () => invoke($0, `le`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5121 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5124 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5127 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5130 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5133 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5136 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5139 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5142 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5145 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5148 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5151 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5154 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5157 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5160 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5163 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5166 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5169 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5172 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5175 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5178 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5181 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5184 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5187 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5190 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5193 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5196 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5199 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5202 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5205 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5208 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5211 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5214 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5217 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5220 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5223 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5226 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5229 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5232 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5235 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5238 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5241 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5244 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5247 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5250 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5253 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5256 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5259 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5262 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5265 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5268 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5271 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5274 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5277 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5280 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5283 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5286 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5289 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5292 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5295 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5298 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5301 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5304 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5307 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5310 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5313 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5316 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5319 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5322 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5325 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5328 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5331 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5334 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5337 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5340 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5343 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5346 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5349 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5352 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5355 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5358 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5361 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5364 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5367 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5370 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5373 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5376 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5379 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5382 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5385 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5388 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5391 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5394 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5397 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5400 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5403 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5406 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5409 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5412 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5415 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5418 +assert_return( + () => invoke($0, `gt`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5421 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5424 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5427 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5430 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5433 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5436 +assert_return( + () => invoke($0, `gt`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5439 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5442 +assert_return( + () => invoke($0, `gt`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5445 +assert_return( + () => invoke($0, `gt`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5448 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5451 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5454 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5457 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5460 +assert_return( + () => invoke($0, `gt`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5463 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5466 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5469 +assert_return( + () => invoke($0, `gt`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5472 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5475 +assert_return( + () => invoke($0, `gt`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5478 +assert_return( + () => invoke($0, `gt`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5481 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5484 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5487 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5490 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5493 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5496 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5499 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5502 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5505 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5508 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5511 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5514 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5517 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5520 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5523 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5526 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5529 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5532 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5535 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5538 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5541 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5544 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5547 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5550 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5553 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5556 +assert_return( + () => invoke($0, `gt`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5559 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5562 +assert_return( + () => invoke($0, `gt`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5565 +assert_return( + () => invoke($0, `gt`, [f32x4([-0, -0, -0, -0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5568 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5571 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5574 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5577 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5580 +assert_return( + () => invoke($0, `gt`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5583 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5586 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5589 +assert_return( + () => invoke($0, `gt`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5592 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5595 +assert_return( + () => invoke($0, `gt`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5598 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5601 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5604 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5607 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5610 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5613 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5616 +assert_return( + () => invoke($0, `gt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5619 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5622 +assert_return( + () => invoke($0, `gt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5625 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5628 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5631 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5634 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5637 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5640 +assert_return( + () => invoke($0, `gt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5643 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5646 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5649 +assert_return( + () => invoke($0, `gt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5652 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5655 +assert_return( + () => invoke($0, `gt`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5658 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5661 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5664 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5667 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5670 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5673 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5676 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5679 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5682 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5685 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5688 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5691 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5694 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5697 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5700 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5703 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5706 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5709 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5712 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5715 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5718 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5721 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5724 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5727 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5730 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5733 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5736 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5739 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5742 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5745 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5748 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5751 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5754 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5757 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5760 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5763 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5766 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5769 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5772 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5775 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5778 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5781 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5784 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5787 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5790 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5793 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5796 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5799 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5802 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5805 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5808 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5811 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5814 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5817 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5820 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5823 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5826 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5829 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5832 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5835 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5838 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5841 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5844 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5847 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5850 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5853 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5856 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5859 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5862 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5865 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5868 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5871 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5874 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5877 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5880 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5883 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5886 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5889 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5892 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5895 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5898 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5901 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5904 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5907 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5910 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5913 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5916 +assert_return( + () => invoke($0, `gt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5919 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5922 +assert_return( + () => invoke($0, `gt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5925 +assert_return( + () => invoke($0, `gt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5928 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5931 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5934 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5937 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5940 +assert_return( + () => invoke($0, `gt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5943 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5946 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5949 +assert_return( + () => invoke($0, `gt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5952 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5955 +assert_return( + () => invoke($0, `gt`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5958 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5961 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5964 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5967 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5970 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5973 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5976 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5979 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5982 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5985 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5988 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5991 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5994 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:5997 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6000 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6003 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6006 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6009 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6012 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6015 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6018 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6021 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6024 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6027 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6030 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6033 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6036 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6039 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6042 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6045 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6048 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6051 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6054 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6057 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6060 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6063 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6066 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6069 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6072 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6075 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6078 +assert_return( + () => invoke($0, `gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6081 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6084 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6087 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6090 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6093 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6096 +assert_return( + () => invoke($0, `gt`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6099 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6102 +assert_return( + () => invoke($0, `gt`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6105 +assert_return( + () => invoke($0, `gt`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6108 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6111 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6114 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6117 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6120 +assert_return( + () => invoke($0, `gt`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6123 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6126 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6129 +assert_return( + () => invoke($0, `gt`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6132 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6135 +assert_return( + () => invoke($0, `gt`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6138 +assert_return( + () => invoke($0, `gt`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6141 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6144 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6147 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6150 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6153 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6156 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6159 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6162 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6165 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6168 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6171 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6174 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6177 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6180 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6183 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6186 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6189 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6192 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6195 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6198 +assert_return( + () => invoke($0, `gt`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6201 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6204 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6207 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6210 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6213 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6216 +assert_return( + () => invoke($0, `gt`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6219 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6222 +assert_return( + () => invoke($0, `gt`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6225 +assert_return( + () => invoke($0, `gt`, [f32x4([-1, -1, -1, -1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6228 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6231 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6234 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6237 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6240 +assert_return( + () => invoke($0, `gt`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6243 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6246 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6249 +assert_return( + () => invoke($0, `gt`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6252 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6255 +assert_return( + () => invoke($0, `gt`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6258 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6261 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6264 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6267 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6270 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6273 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6276 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6279 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6282 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6285 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6288 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6291 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6294 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6297 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6300 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6303 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6306 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6309 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6312 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6315 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6318 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6321 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6324 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6327 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6330 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6333 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6336 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6339 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6342 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6345 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6348 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6351 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6354 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6357 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6360 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6363 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6366 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6369 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6372 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6375 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6378 +assert_return( + () => invoke($0, `gt`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6381 +assert_return( + () => invoke($0, `gt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6384 +assert_return( + () => invoke($0, `gt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6387 +assert_return( + () => invoke($0, `gt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6390 +assert_return( + () => invoke($0, `gt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6393 +assert_return( + () => invoke($0, `gt`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6398 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6401 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6404 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6407 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6410 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6413 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6416 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6419 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6422 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6425 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6428 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6431 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6434 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6437 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6440 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6443 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6446 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6449 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6452 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6455 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6458 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6461 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6464 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6467 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6470 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6473 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6476 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6479 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6482 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6485 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6488 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6491 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6494 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6497 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6500 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6503 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6506 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6509 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6512 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6515 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6518 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6521 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6524 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6527 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6530 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6533 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6536 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6539 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6542 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6545 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6548 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6551 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6554 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6557 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6560 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6563 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6566 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6569 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6572 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6575 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6578 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6581 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6584 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6587 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6590 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6593 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6596 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6599 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6602 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6605 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6608 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6611 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6614 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6617 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6620 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6623 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6626 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6629 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6632 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6635 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6638 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6641 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6644 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6647 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6650 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6653 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6656 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6659 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6662 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6665 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6668 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6671 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6674 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6677 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6680 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6683 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6686 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6689 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6692 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6695 +assert_return( + () => invoke($0, `ge`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6698 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6701 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6704 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6707 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6710 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6713 +assert_return( + () => invoke($0, `ge`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6716 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6719 +assert_return( + () => invoke($0, `ge`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6722 +assert_return( + () => invoke($0, `ge`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6725 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6728 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6731 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6734 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6737 +assert_return( + () => invoke($0, `ge`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6740 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6743 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6746 +assert_return( + () => invoke($0, `ge`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6749 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6752 +assert_return( + () => invoke($0, `ge`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6755 +assert_return( + () => invoke($0, `ge`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6758 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6761 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6764 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6767 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6770 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6773 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6776 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6779 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6782 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6785 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6788 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6791 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6794 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6797 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6800 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6803 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6806 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6809 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6812 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6815 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6818 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6821 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6824 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6827 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6830 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6833 +assert_return( + () => invoke($0, `ge`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6836 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6839 +assert_return( + () => invoke($0, `ge`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6842 +assert_return( + () => invoke($0, `ge`, [f32x4([-0, -0, -0, -0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6845 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6848 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6851 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6854 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6857 +assert_return( + () => invoke($0, `ge`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6860 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6863 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6866 +assert_return( + () => invoke($0, `ge`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6869 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6872 +assert_return( + () => invoke($0, `ge`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6875 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6878 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6881 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6884 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6887 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6890 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6893 +assert_return( + () => invoke($0, `ge`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6896 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6899 +assert_return( + () => invoke($0, `ge`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6902 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6905 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6908 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6911 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6914 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6917 +assert_return( + () => invoke($0, `ge`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6920 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6923 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6926 +assert_return( + () => invoke($0, `ge`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6929 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6932 +assert_return( + () => invoke($0, `ge`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6935 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6938 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6941 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6944 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6947 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6950 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6953 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6956 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6959 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6962 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6965 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6968 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6971 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6974 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6977 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6980 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6983 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6986 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6989 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6992 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6995 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:6998 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7001 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7004 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7007 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7010 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7013 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7016 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7019 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7022 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7025 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7028 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7031 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7034 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7037 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7040 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7043 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7046 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7049 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7052 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7055 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7058 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7061 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7064 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7067 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7070 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7073 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7076 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7079 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7082 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7085 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7088 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7091 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7094 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7097 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7100 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7103 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7106 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7109 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7112 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7115 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7118 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7121 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7124 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7127 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7130 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7133 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7136 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7139 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7142 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7145 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7148 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7151 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7154 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7157 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7160 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7163 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7166 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7169 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7172 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7175 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7178 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7181 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7184 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7187 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7190 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7193 +assert_return( + () => invoke($0, `ge`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7196 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7199 +assert_return( + () => invoke($0, `ge`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7202 +assert_return( + () => invoke($0, `ge`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7205 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7208 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7211 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7214 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7217 +assert_return( + () => invoke($0, `ge`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7220 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7223 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7226 +assert_return( + () => invoke($0, `ge`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7229 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7232 +assert_return( + () => invoke($0, `ge`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7235 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7238 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7241 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7244 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7247 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7250 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7253 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7256 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7259 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7262 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7265 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7268 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7271 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7274 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7277 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7280 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7283 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7286 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7289 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7292 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7295 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7298 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7301 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7304 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7307 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7310 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7313 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7316 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7319 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7322 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7325 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7328 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7331 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7334 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7337 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7340 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7343 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7346 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7349 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7352 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7355 +assert_return( + () => invoke($0, `ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7358 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7361 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7364 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7367 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7370 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7373 +assert_return( + () => invoke($0, `ge`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7376 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7379 +assert_return( + () => invoke($0, `ge`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7382 +assert_return( + () => invoke($0, `ge`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7385 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7388 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7391 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7394 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7397 +assert_return( + () => invoke($0, `ge`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7400 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7403 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7406 +assert_return( + () => invoke($0, `ge`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7409 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7412 +assert_return( + () => invoke($0, `ge`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7415 +assert_return( + () => invoke($0, `ge`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7418 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7421 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7424 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7427 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7430 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7433 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7436 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7439 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7442 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7445 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7448 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7451 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7454 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7457 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7460 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7463 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7466 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7469 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7472 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7475 +assert_return( + () => invoke($0, `ge`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7478 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7481 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7484 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7487 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7490 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7493 +assert_return( + () => invoke($0, `ge`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7496 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7499 +assert_return( + () => invoke($0, `ge`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7502 +assert_return( + () => invoke($0, `ge`, [f32x4([-1, -1, -1, -1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7505 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7508 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7511 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7514 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7517 +assert_return( + () => invoke($0, `ge`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7520 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7523 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7526 +assert_return( + () => invoke($0, `ge`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7529 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7532 +assert_return( + () => invoke($0, `ge`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7535 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7538 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7541 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7544 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7547 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7550 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7553 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7556 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7559 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7562 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7565 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7568 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7571 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7574 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7577 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7580 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7583 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7586 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7589 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7592 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7595 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7598 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7601 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7604 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7607 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7610 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7613 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7616 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7619 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7622 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7625 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7628 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7631 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7634 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7637 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7640 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7643 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7646 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7649 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7652 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7655 +assert_return( + () => invoke($0, `ge`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7658 +assert_return( + () => invoke($0, `ge`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7661 +assert_return( + () => invoke($0, `ge`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7664 +assert_return( + () => invoke($0, `ge`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7667 +assert_return( + () => invoke($0, `ge`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7670 +assert_return( + () => invoke($0, `ge`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7677 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, 0, 1, 2]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7682 +assert_return( + () => invoke($0, `eq`, [ + f32x4([-1, 0, 1, 2]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2]), + ]), + [i32x4([0x0, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7687 +assert_return( + () => invoke($0, `eq`, [f32x4([-1, 0, 1, 2]), i32x4([0xbf800000, 0x0, 0x1, 0x2])]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7694 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, 0, 1, 2]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0xffffffff, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7699 +assert_return( + () => invoke($0, `ne`, [ + f32x4([-1, 0, 1, 2]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2]), + ]), + [i32x4([0xffffffff, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7704 +assert_return( + () => invoke($0, `ne`, [f32x4([-1, 0, 1, 2]), i32x4([0xbf800000, 0x0, 0x1, 0x2])]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7711 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, 0, 1, 2]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7716 +assert_return( + () => invoke($0, `lt`, [ + f32x4([-1, 0, 1, 2]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7721 +assert_return( + () => invoke($0, `lt`, [f32x4([-1, 0, 1, 2]), i32x4([0xbf800000, 0x0, 0x1, 0x2])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7728 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, 0, 1, 2]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7733 +assert_return( + () => invoke($0, `le`, [ + f32x4([-1, 0, 1, 2]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2]), + ]), + [i32x4([0x0, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7738 +assert_return( + () => invoke($0, `le`, [f32x4([-1, 0, 1, 2]), i32x4([0xbf800000, 0x0, 0x1, 0x2])]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7745 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, 0, 1, 2]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7750 +assert_return( + () => invoke($0, `gt`, [ + f32x4([-1, 0, 1, 2]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7755 +assert_return( + () => invoke($0, `gt`, [f32x4([-1, 0, 1, 2]), i32x4([0xbf800000, 0x0, 0x1, 0x2])]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7762 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, 0, 1, 2]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7767 +assert_return( + () => invoke($0, `ge`, [ + f32x4([-1, 0, 1, 2]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7772 +assert_return( + () => invoke($0, `ge`, [f32x4([-1, 0, 1, 2]), i32x4([0xbf800000, 0x0, 0x1, 0x2])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7779 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.eq (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7780 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.ge (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7781 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.gt (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7782 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.le (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7783 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.lt (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7784 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.ne (i64.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7789 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f4x32.eq (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7790 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f4x32.ge (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7791 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f4x32.gt (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7792 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f4x32.le (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7793 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f4x32.lt (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7794 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f4x32.ne (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:7799 +let $1 = instantiate(`(module (memory 1) + (func (export "eq-in-block") + (block + (drop + (block (result v128) + (f32x4.eq + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "ne-in-block") + (block + (drop + (block (result v128) + (f32x4.ne + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "lt-in-block") + (block + (drop + (block (result v128) + (f32x4.lt + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "le-in-block") + (block + (drop + (block (result v128) + (f32x4.le + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "gt-in-block") + (block + (drop + (block (result v128) + (f32x4.gt + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "ge-in-block") + (block + (drop + (block (result v128) + (f32x4.ge + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "nested-eq") + (drop + (f32x4.eq + (f32x4.eq + (f32x4.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f32x4.eq + (f32x4.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-ne") + (drop + (f32x4.ne + (f32x4.ne + (f32x4.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f32x4.ne + (f32x4.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-lt") + (drop + (f32x4.lt + (f32x4.lt + (f32x4.lt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.lt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f32x4.lt + (f32x4.lt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.lt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-le") + (drop + (f32x4.le + (f32x4.le + (f32x4.le + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.le + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f32x4.le + (f32x4.le + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.le + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-gt") + (drop + (f32x4.gt + (f32x4.gt + (f32x4.gt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.gt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f32x4.gt + (f32x4.gt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.gt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-ge") + (drop + (f32x4.ge + (f32x4.ge + (f32x4.ge + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.ge + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f32x4.ge + (f32x4.ge + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.ge + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "as-param") + (drop + (f32x4.ge + (f32x4.eq + (f32x4.lt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.le + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f32x4.ne + (f32x4.gt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f32x4.lt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) +)`); + +// ./test/core/simd/simd_f32x4_cmp.wast:8056 +assert_return(() => invoke($1, `eq-in-block`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8057 +assert_return(() => invoke($1, `ne-in-block`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8058 +assert_return(() => invoke($1, `lt-in-block`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8059 +assert_return(() => invoke($1, `le-in-block`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8060 +assert_return(() => invoke($1, `gt-in-block`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8061 +assert_return(() => invoke($1, `ge-in-block`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8062 +assert_return(() => invoke($1, `nested-eq`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8063 +assert_return(() => invoke($1, `nested-ne`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8064 +assert_return(() => invoke($1, `nested-lt`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8065 +assert_return(() => invoke($1, `nested-le`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8066 +assert_return(() => invoke($1, `nested-gt`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8067 +assert_return(() => invoke($1, `nested-ge`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8068 +assert_return(() => invoke($1, `as-param`, []), []); + +// ./test/core/simd/simd_f32x4_cmp.wast:8072 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.eq-1st-arg-empty (result v128) + (f32x4.eq (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8080 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.eq-arg-empty (result v128) + (f32x4.eq) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8088 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.ne-1st-arg-empty (result v128) + (f32x4.ne (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8096 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.ne-arg-empty (result v128) + (f32x4.ne) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8104 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.lt-1st-arg-empty (result v128) + (f32x4.lt (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8112 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.lt-arg-empty (result v128) + (f32x4.lt) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8120 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.le-1st-arg-empty (result v128) + (f32x4.le (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8128 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.le-arg-empty (result v128) + (f32x4.le) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8136 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.gt-1st-arg-empty (result v128) + (f32x4.gt (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8144 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.gt-arg-empty (result v128) + (f32x4.gt) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8152 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.ge-1st-arg-empty (result v128) + (f32x4.ge (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_cmp.wast:8160 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.ge-arg-empty (result v128) + (f32x4.ge) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_pmin_pmax.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_pmin_pmax.wast.js new file mode 100644 index 0000000000..c0f65854cb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_pmin_pmax.wast.js @@ -0,0 +1,92356 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4 +let $0 = instantiate(`(module + (func (export "f32x4.pmin") (param v128 v128) (result v128) (f32x4.pmin (local.get 0) (local.get 1))) + (func (export "f32x4.pmax") (param v128 v128) (result v128) (f32x4.pmax (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:12 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:15 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:18 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:21 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:24 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:27 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:30 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:33 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:36 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:39 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:42 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:45 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:48 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:51 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:54 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:57 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:60 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:63 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:66 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:69 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:72 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:75 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:78 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:81 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:84 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:87 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:90 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:93 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:96 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:99 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:102 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:105 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:108 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:111 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:114 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:117 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:120 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:123 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:126 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:129 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:132 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:135 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:138 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:141 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:144 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:147 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:150 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:153 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:156 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:159 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:162 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:165 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:168 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:171 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:174 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:177 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:180 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:183 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:186 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:189 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:192 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:195 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:198 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:201 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:204 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:207 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:210 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:213 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:216 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:219 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:222 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:225 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:228 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:231 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:234 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:237 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:240 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:243 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:246 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:249 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:252 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:255 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:258 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:261 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:264 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:267 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:270 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:273 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:276 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:279 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:282 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:285 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:288 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:291 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:294 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:297 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:300 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:303 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:306 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:309 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:312 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:315 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:318 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:321 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:324 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:327 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:330 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:333 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:336 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:339 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:342 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:345 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:348 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:351 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:354 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:357 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:360 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:363 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:366 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:369 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:372 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:375 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:378 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:381 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:384 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:387 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:390 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:393 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:396 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:399 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:402 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:405 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:408 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:411 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:414 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:417 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:420 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:423 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:426 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:429 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:432 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:435 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:438 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:441 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:444 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:447 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:450 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:453 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:456 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:459 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:462 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:465 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:468 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:471 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:474 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:477 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:480 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:483 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:486 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:489 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:492 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:495 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:498 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:501 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:504 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:507 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:510 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:513 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:516 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:519 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:522 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:525 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:528 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:531 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:534 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:537 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:540 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:543 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:546 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:549 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:552 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:555 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:558 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:561 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:564 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:567 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:570 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:573 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:576 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:579 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:582 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:585 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:588 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:591 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:594 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:597 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:600 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:603 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:606 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:609 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:612 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:615 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:618 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:621 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:624 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:627 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:630 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:633 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:636 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:639 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:642 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:645 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:648 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:651 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:654 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:657 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:660 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:663 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:666 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:669 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:672 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:675 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:678 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:681 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:684 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:687 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:690 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:693 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:696 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:699 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:702 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:705 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:708 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:711 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:714 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:717 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:720 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:723 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:726 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:729 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:732 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:735 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:738 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:741 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:744 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:747 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:750 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:753 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:756 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:759 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:762 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:765 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:768 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:771 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:774 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:777 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:780 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:783 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:786 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:789 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:792 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:795 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:798 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:801 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:804 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:807 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:810 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:813 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:816 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:819 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:822 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:825 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:828 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:831 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:834 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:837 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:840 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:843 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:846 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:849 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:852 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:855 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:858 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:861 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:864 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:867 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:870 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:873 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:876 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:879 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:882 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:885 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:888 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:891 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:894 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:897 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:900 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:903 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:906 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:909 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:912 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:915 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:918 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:921 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:924 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:927 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:930 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:933 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:936 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:939 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:942 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:945 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:948 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:951 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:954 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:957 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:960 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:963 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:966 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:969 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:972 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:975 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:978 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:981 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:984 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:987 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:990 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:993 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:996 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:999 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1002 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1005 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1008 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1011 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1014 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1017 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1020 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1023 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1026 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1029 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1032 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1035 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1038 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1041 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1044 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1047 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1050 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1053 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1056 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1059 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1062 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1065 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1068 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1071 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1074 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1077 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1080 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1083 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1086 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1089 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1092 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1095 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1098 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1101 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1104 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1107 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1110 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1113 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1116 +assert_return( + () => invoke($0, `f32x4.pmin`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1119 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1122 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1125 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1128 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1131 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1134 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1137 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1140 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1143 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1146 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1149 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1152 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1155 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1158 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1161 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1164 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1167 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1170 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1173 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1176 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1179 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1182 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1185 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1188 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1191 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1194 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1197 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1200 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1203 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1206 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1209 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1212 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1215 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1218 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1221 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1224 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1227 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1230 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1233 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1236 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1239 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1242 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1245 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1248 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1251 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1254 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1257 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1260 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1263 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1266 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1269 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1272 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1275 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1278 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1281 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1284 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1287 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1290 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1293 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1296 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1299 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1302 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1305 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1308 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1311 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1314 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1317 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1320 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1323 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1326 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1329 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1332 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1335 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1338 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1341 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1344 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1347 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1350 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1353 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1356 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1359 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1362 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1365 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1368 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1371 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1374 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1377 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1380 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1383 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1386 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1389 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1392 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1395 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1398 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1401 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1404 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1407 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1410 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1413 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1416 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1419 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1422 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1425 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1428 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1431 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1434 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1437 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1440 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1443 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1446 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1449 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1452 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1455 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1458 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1461 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1464 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1467 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1470 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1473 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1476 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1479 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1482 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1485 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1488 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1491 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1494 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1497 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1500 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1503 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1506 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1509 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1512 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1515 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1518 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1521 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1524 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1527 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1530 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1533 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1536 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1539 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1542 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1545 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1548 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1551 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1554 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1557 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1560 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1563 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1566 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1569 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1572 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1575 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1578 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1581 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1584 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1587 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1590 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1593 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1596 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1599 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1602 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1605 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1608 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1611 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1614 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1617 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1620 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1623 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1626 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1629 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1632 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1635 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1638 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1641 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1644 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1647 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1650 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1653 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1656 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1659 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1662 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1665 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1668 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1671 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1674 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1677 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1680 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1683 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1686 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1689 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1692 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1695 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1698 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1701 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1704 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1707 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1710 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1713 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1716 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1719 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1722 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1725 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1728 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1731 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1734 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1737 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1740 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1743 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1746 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1749 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1752 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1755 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1758 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1761 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1764 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1767 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1770 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1773 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1776 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1779 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1782 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1785 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1788 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1791 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1794 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1797 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1800 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1803 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1806 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1809 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1812 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1815 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1818 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1821 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1824 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1827 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1830 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1833 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1836 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1839 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1842 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1845 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1848 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1851 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1854 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1857 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1860 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1863 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1866 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1869 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1872 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1875 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1878 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1881 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1884 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1887 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1890 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1893 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1896 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1899 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1902 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1905 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1908 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1911 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1914 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1917 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1920 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1923 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1926 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1929 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1932 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1935 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1938 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1941 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1944 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1947 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1950 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1953 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1956 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1959 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1962 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1965 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1968 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1971 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1974 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1977 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1980 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1983 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1986 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1989 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1992 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1995 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:1998 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2001 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2004 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2007 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2010 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2013 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2016 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2019 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2022 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2025 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2028 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2031 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2034 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2037 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2040 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2043 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2046 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2049 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2052 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2055 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2058 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2061 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2064 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2067 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2070 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2073 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2076 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2079 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2082 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2085 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2088 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2091 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2094 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2097 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2100 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2103 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2106 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2109 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2112 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2115 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2118 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2121 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2124 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2127 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2130 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2133 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2136 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2139 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2142 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2145 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2148 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2151 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2154 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2157 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2160 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2163 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2166 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2169 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2172 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2175 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2178 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2181 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2184 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2187 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2190 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2193 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2196 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2199 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2202 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2205 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2208 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2211 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2214 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2217 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2220 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2223 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2226 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2229 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2232 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2235 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2238 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2241 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2244 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2247 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2250 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2253 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2256 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2259 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2262 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2265 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2268 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2271 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2274 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2277 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2280 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2283 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2286 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2289 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2292 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2295 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2298 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2301 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2304 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2307 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2310 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2313 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2316 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2319 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2322 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2325 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2328 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2331 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2334 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2337 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2340 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2343 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2346 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2349 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2352 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2355 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2358 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2361 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2364 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2367 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2370 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2373 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2376 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2379 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2382 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2385 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2388 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2391 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2394 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2397 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2400 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2403 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2406 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2409 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2412 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2415 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2418 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2421 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2424 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2427 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2430 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2433 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2436 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2439 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2442 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2445 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2448 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2451 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2454 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2457 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2460 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2463 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2466 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2469 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2472 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2475 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2478 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2481 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2484 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2487 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2490 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2493 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2496 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2499 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2502 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2505 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2508 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2511 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2514 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2517 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2520 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2523 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2526 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2529 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2532 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2535 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2538 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2541 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2544 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2547 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2550 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2553 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2556 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2559 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2562 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2565 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2568 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2571 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2574 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2577 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2580 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2583 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2586 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2589 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2592 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2595 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2598 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2601 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2604 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2607 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2610 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2613 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2616 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2619 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2622 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2625 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2628 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2631 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2634 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2637 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2640 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2643 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2646 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2649 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2652 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2655 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2658 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2661 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2664 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2667 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2670 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2673 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2676 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2679 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2682 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2685 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2688 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2691 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2694 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2697 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2700 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2703 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2706 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2709 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2712 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2715 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2718 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2721 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2724 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2727 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2730 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2733 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2736 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2739 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2742 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2745 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2748 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2751 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2754 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2757 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2760 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2763 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2766 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2769 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2772 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2775 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2778 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2781 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2784 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2787 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2790 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2793 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2796 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2799 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2802 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2805 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2808 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2811 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2814 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2817 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2820 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2823 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2826 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2829 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2832 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2835 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2838 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2841 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2844 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2847 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2850 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2853 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2856 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2859 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2862 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2865 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2868 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2871 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2874 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2877 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2880 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2883 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2886 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2889 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2892 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2895 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2898 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2901 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2904 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2907 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2910 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2913 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2916 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2919 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2922 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2925 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2928 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2931 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2934 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2937 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2940 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2943 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2946 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2949 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2952 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2955 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2958 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2961 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2964 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2967 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2970 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2973 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2976 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2979 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2982 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2985 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2988 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2991 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2994 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:2997 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3000 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3003 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3006 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3009 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3012 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3015 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3018 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3021 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3024 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3027 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3030 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3033 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3036 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3039 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3042 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3045 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3048 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3051 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3054 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3057 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3060 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3063 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3066 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3069 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3072 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3075 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3078 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3081 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3084 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3087 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3090 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3093 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3096 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3099 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3102 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3105 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3108 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3111 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3114 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3117 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3120 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3123 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3126 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3129 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3132 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3135 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3138 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3141 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3144 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3147 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3150 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3153 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3156 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3159 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3162 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3165 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3168 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3171 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3174 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3177 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3180 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3183 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3186 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3189 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3192 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3195 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3198 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3201 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3204 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3207 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3210 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3213 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3216 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3219 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3222 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3225 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3228 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3231 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3234 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3237 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3240 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3243 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3246 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3249 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3252 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3255 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3258 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3261 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3264 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3267 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3270 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3273 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3276 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3279 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3282 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3285 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3288 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3291 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3294 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3297 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3300 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3303 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3306 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3309 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3312 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3315 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3318 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3321 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3324 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3327 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3330 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3333 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3336 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3339 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3342 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3345 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3348 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3351 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3354 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3357 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3360 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3363 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3366 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3369 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3372 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3375 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3378 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3381 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3384 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3387 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3390 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3393 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3396 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3399 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3402 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3405 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3408 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3411 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3414 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3417 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3420 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3423 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3426 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3429 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3432 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3435 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3438 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3441 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3444 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3447 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3450 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3453 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3456 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3459 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3462 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3465 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3468 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3471 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3474 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3477 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3480 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3483 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3486 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3489 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3492 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3495 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3498 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3501 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3504 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3507 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3510 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3513 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3516 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3519 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3522 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3525 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3528 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3531 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3534 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3537 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3540 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3543 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3546 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3549 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3552 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3555 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3558 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3561 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3564 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3567 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3570 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3573 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3576 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3579 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3582 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3585 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3588 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3591 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3594 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3597 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3600 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3603 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3606 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3609 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3612 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3615 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3618 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3621 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3624 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3627 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3630 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3633 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3636 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3639 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3642 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3645 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3648 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3651 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3654 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3657 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3660 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3663 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3666 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3669 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3672 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3675 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3678 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3681 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3684 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3687 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3690 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3693 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3696 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3699 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3702 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3705 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3708 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3711 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3714 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3717 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3720 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3723 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3726 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3729 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3732 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3735 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3738 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3741 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3744 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3747 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3750 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3753 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3756 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3759 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3762 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3765 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3768 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3771 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3774 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3777 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3780 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3783 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3786 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3789 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3792 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3795 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3798 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3801 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3804 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3807 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3810 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3813 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3816 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3819 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3822 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3825 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3828 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3831 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3834 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3837 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3840 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3843 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3846 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3849 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3852 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3855 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3858 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3861 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3864 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3867 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3870 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3873 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3876 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3879 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3882 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3885 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3888 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3891 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3894 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3897 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3900 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3903 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3906 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3909 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3912 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3915 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3918 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3921 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3924 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3927 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3930 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3933 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3936 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3939 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3942 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3945 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3948 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3951 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3954 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3957 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3960 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3963 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3966 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3969 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3972 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3975 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3978 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3981 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3984 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3987 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3990 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3993 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3996 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:3999 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4002 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4005 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4008 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4011 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4014 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4017 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4020 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4023 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4026 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4029 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4032 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4035 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4038 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4041 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4044 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4047 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4050 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4053 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4056 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4059 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4062 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4065 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4068 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4071 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4074 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4077 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4080 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4083 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4086 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4089 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4092 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4095 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4098 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4101 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4104 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4107 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4110 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4113 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4116 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4119 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4122 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4125 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4128 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4131 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4134 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4137 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4140 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4143 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4146 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4149 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4152 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4155 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4158 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4161 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4164 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4167 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4170 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4173 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4176 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4179 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4182 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4185 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4188 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4191 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4194 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4197 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4200 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4203 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4206 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4209 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4212 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4215 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4218 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4221 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4224 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4227 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4230 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4233 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4236 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4239 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4242 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4245 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4248 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4251 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4254 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4257 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4260 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4263 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4266 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4269 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4272 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4275 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4278 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4281 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4284 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4287 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4290 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4293 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4296 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4299 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4302 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4305 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4308 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4311 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4314 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4317 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4320 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4323 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4326 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4329 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4332 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4335 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4338 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4341 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4344 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4347 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4350 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4353 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4356 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4359 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4362 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4365 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4368 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4371 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4374 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4377 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4380 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4383 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4386 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4389 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4392 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4395 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4398 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4401 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4404 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4407 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4410 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4413 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4416 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4419 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4422 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4425 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4428 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4431 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4434 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4437 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4440 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4443 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4446 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4449 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4452 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4455 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4458 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4461 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4464 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4467 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4470 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4473 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4476 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4479 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4482 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4485 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4488 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4491 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4494 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4497 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4500 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4503 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4506 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4509 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4512 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4515 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4518 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4521 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4524 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4527 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4530 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4533 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4536 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4539 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4542 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4545 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4548 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4551 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4554 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4557 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4560 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4563 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4566 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4569 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4572 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4575 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4578 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4581 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4584 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4587 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4590 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4593 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4596 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4599 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4602 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4605 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4608 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4611 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4614 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4617 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4620 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4623 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4626 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4629 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4632 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4635 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4638 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4641 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4644 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4647 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4650 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4653 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4656 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4659 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4662 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4665 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4668 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4671 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4674 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4677 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4680 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4683 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4686 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4689 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4692 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4695 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4698 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4701 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4704 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4707 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4710 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4713 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4716 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4719 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4722 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4725 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4728 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4731 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4734 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4737 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4740 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4743 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4746 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4749 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4752 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4755 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4758 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4761 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4764 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4767 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4770 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4773 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4776 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4779 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4782 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4785 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4788 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4791 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4794 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4797 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4800 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4803 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4806 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4809 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4812 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4815 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4818 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4821 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4824 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4827 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4830 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4833 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4836 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4839 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4842 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4845 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4848 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4851 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4854 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4857 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4860 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4863 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4866 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4869 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4872 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4875 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4878 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4881 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4884 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4887 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4890 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4893 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4896 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4899 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4902 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4905 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4908 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4911 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4914 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4917 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4920 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4923 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4926 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4929 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4932 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4935 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4938 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4941 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4944 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4947 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4950 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4953 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4956 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4959 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4962 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4965 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4968 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4971 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4974 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4977 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4980 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4983 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4986 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4989 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4992 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4995 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:4998 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5001 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5004 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5007 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5010 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5013 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5016 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5019 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5022 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5025 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5028 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5031 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5034 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5037 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5040 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5043 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5046 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5049 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5052 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5055 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5058 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5061 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5064 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5067 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5070 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5073 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5076 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5079 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5082 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5085 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5088 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5091 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5094 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5097 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5100 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5103 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5106 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5109 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5112 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5115 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5118 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5121 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5124 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5127 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5130 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5133 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5136 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5139 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5142 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5145 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5148 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5151 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5154 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5157 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5160 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5163 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5166 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5169 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5172 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5175 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5178 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5181 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5184 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5187 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5190 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5193 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5196 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5199 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5202 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5205 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5208 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5211 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5214 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5217 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5220 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5223 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5226 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5229 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5232 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5235 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5238 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5241 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5244 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5247 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5250 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5253 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5256 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5259 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5262 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5265 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5268 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5271 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5274 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5277 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5280 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5283 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5286 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5289 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5292 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5295 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5298 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5301 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5304 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5307 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5310 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5313 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5316 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5319 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5322 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5325 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5328 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5331 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5334 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5337 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5340 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5343 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5346 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5349 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5352 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5355 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5358 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5361 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5364 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5367 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5370 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5373 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5376 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5379 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5382 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5385 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5388 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5391 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5394 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5397 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5400 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5403 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5406 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5409 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5412 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5415 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5418 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5421 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5424 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5427 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5430 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5433 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5436 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5439 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5442 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5445 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5448 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5451 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5454 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5457 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5460 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5463 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5466 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5469 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5472 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5475 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5478 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5481 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5484 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5487 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5490 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5493 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5496 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5499 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5502 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5505 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5508 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5511 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5514 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5517 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5520 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5523 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5526 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5529 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5532 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5535 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5538 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5541 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5544 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5547 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5550 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5553 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5556 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5559 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5562 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5565 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5568 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5571 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5574 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5577 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5580 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5583 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5586 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5589 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5592 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5595 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5598 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5601 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5604 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5607 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5610 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5613 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5616 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5619 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5622 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5625 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5628 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5631 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5634 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5637 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5640 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5643 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5646 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5649 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5652 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5655 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5658 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5661 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5664 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5667 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5670 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5673 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5676 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5679 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5682 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5685 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5688 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5691 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5694 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5697 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5700 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5703 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5706 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5709 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5712 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5715 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5718 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5721 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5724 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5727 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5730 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5733 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5736 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5739 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5742 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5745 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5748 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5751 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5754 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5757 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5760 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5763 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5766 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5769 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5772 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5775 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5778 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5781 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5784 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5787 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5790 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5793 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5796 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5799 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5802 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5805 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5808 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5811 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5814 +assert_return( + () => invoke($0, `f32x4.pmin`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5817 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0, 0, 0, 0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5820 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0, 0, 0, 0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5823 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5826 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5829 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5832 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5835 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0, 0, 0, 0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5838 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0, 0, 0, 0]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5841 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0, 0, 0, 0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5844 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0, 0, 0, 0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5847 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5850 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5853 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5856 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5859 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5862 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5865 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5868 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5871 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5874 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5877 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5880 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5883 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5886 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5889 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5892 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5895 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5898 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5901 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5904 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5907 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5910 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5913 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5916 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5919 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5922 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5925 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5928 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5931 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5934 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5937 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-0, -0, -0, -0]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5940 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-0, -0, -0, -0]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5943 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5946 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5949 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5952 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5955 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-0, -0, -0, -0]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5958 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5961 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-0, -0, -0, -0]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5964 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-0, -0, -0, -0]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5967 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5970 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5973 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5976 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5979 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5982 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5985 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5988 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5991 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5994 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:5997 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6000 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6003 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6006 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6009 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6012 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6015 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6018 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6021 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6024 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6027 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6030 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6033 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6036 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6039 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6042 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6045 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6048 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6051 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6054 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6057 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6060 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6063 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6066 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6069 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6072 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6075 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6078 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6081 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6084 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6087 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6090 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6093 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6096 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6099 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6102 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6105 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6108 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6111 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6114 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6117 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6120 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6123 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6126 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6129 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6132 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6135 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6138 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6141 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6144 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6147 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6150 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6153 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6156 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6159 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6162 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6165 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6168 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6171 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6174 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6177 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6180 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6183 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6186 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6189 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6192 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6195 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6198 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6201 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6204 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6207 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6210 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6213 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6216 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6219 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6222 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6225 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6228 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6231 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6234 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6237 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6240 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6243 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6246 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6249 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6252 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6255 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6258 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6261 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6264 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6267 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6270 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6273 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6276 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6279 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6282 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6285 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6288 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6291 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6294 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6297 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6300 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6303 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6306 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6309 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6312 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6315 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6318 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6321 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6324 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6327 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6330 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6333 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6336 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6339 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6342 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6345 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6348 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6351 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6354 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6357 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6360 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6363 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6366 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6369 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6372 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6375 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6378 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6381 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6384 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6387 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6390 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6393 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6396 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6399 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6402 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6405 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6408 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6411 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6414 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6417 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6420 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6423 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6426 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6429 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6432 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6435 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6438 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6441 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6444 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6447 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6450 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6453 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6456 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6459 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6462 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6465 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6468 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6471 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6474 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6477 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6480 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6483 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6486 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6489 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6492 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6495 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6498 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6501 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6504 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6507 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6510 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6513 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6516 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6519 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6522 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6525 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6528 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6531 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6534 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6537 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6540 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6543 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6546 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6549 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6552 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6555 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6558 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6561 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6564 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([0.5, 0.5, 0.5, 0.5]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6567 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6570 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6573 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6576 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6579 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6582 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6585 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6588 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6591 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6594 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6597 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6600 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6603 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6606 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6609 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6612 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6615 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6618 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6621 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6624 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6627 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6630 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6633 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6636 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6639 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6642 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6645 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6648 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6651 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6654 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6657 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6660 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6663 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6666 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6669 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6672 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6675 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6678 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6681 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-0.5, -0.5, -0.5, -0.5]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6684 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6687 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6690 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6693 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6696 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6699 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6702 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6705 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6708 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6711 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6714 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6717 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6720 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6723 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6726 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6729 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6732 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6735 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6738 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6741 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6744 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6747 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6750 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6753 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6756 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6759 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6762 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6765 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6768 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6771 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6774 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6777 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([1, 1, 1, 1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6780 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([1, 1, 1, 1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6783 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6786 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6789 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6792 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6795 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([1, 1, 1, 1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6798 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([1, 1, 1, 1]), f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6801 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([1, 1, 1, 1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6804 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([1, 1, 1, 1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6807 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6810 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6813 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6816 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6819 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6822 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6825 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6828 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6831 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6834 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6837 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6840 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6843 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6846 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6849 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6852 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6855 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6858 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6861 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6864 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6867 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6870 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6873 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6876 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6879 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6882 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6885 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6888 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6891 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6894 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6897 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-1, -1, -1, -1]), f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6900 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-1, -1, -1, -1]), f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6903 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6906 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6909 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6912 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6915 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-1, -1, -1, -1]), f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6918 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6921 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-1, -1, -1, -1]), f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6924 +assert_return( + () => invoke($0, `f32x4.pmax`, [f32x4([-1, -1, -1, -1]), f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6927 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6930 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6933 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6936 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6939 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6942 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6945 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6948 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6951 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6954 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6957 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6960 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6963 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6966 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6969 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6972 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6975 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6978 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6981 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6984 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6987 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6990 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6993 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6996 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:6999 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7002 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7005 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7008 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7011 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7014 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7017 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7020 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7023 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7026 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7029 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7032 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7035 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7038 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7041 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7044 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7047 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7050 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7053 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7056 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7059 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7062 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7065 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7068 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7071 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7074 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7077 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7080 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7083 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7086 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7089 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7092 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7095 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7098 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7101 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7104 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7107 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7110 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7113 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7116 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7119 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7122 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7125 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7128 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7131 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7134 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7137 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7140 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7143 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7146 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7149 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7152 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7155 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7158 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7161 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7164 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7167 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7170 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7173 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7176 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7179 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7182 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7185 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7188 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7191 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7194 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7197 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7200 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7203 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7206 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7209 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7212 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7215 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7218 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7221 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7224 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7227 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7230 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7233 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7236 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7239 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7242 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7245 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7248 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7251 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7254 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7257 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7260 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7263 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7266 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7269 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7272 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7275 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7278 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7281 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7284 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7287 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7290 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7293 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7296 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7299 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7302 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7305 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7308 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7311 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7314 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7317 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7320 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7323 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7326 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7329 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7332 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7335 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7338 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7341 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7344 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7347 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7350 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7353 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7356 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7359 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7362 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7365 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7368 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7371 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7374 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7377 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7380 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7383 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7386 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7389 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7392 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7395 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7398 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7401 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7404 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7407 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7410 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7413 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7416 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7419 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7422 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7425 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7428 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7431 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7434 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7437 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7440 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7443 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7446 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7449 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7452 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7455 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7458 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7461 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7464 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7467 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7470 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7473 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7476 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7479 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7482 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7485 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7488 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7491 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7494 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7497 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7500 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7503 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7506 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7509 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7512 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7515 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7518 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7521 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7524 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7527 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7530 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7533 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7536 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7539 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7542 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7545 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7548 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7551 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7554 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7557 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7560 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7563 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7566 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7569 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7572 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7575 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7578 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7581 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7584 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7587 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7590 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7593 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7596 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7599 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7602 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7605 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7608 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7611 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7614 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7617 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7620 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7623 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7626 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7629 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7632 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7635 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7638 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7641 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7644 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7647 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7650 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7653 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7656 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7659 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7662 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7665 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7668 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7671 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7674 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7677 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7680 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7683 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7686 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7689 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7692 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7695 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7698 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7701 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7704 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7707 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7710 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7713 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7716 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7719 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7722 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7725 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7728 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7731 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7734 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7737 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7740 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7743 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7746 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7749 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7752 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7755 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7758 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7761 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7764 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7767 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7770 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7773 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7776 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7779 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7782 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7785 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7788 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7791 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7794 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7797 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7800 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7803 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7806 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7809 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7812 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7815 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7818 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7821 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7824 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7827 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7830 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7833 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7836 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7839 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7842 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7845 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7848 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7851 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7854 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7857 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7860 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7863 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7866 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7869 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7872 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7875 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7878 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7881 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7884 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7887 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7890 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7893 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7896 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7899 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7902 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7905 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7908 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7911 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7914 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7917 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7920 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7923 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7926 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7929 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7932 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7935 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7938 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7941 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7944 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7947 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7950 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7953 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7956 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7959 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7962 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7965 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7968 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7971 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7974 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7977 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7980 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7983 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7986 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7989 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7992 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7995 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:7998 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8001 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8004 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8007 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8010 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8013 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8016 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8019 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8022 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8025 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8028 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8031 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8034 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8037 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8040 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8043 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8046 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8049 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8052 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8055 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8058 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8061 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8064 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8067 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8070 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8073 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8076 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8079 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8082 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8085 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8088 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8091 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8094 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8097 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8100 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8103 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8106 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8109 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8112 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8115 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8118 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8121 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8124 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8127 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8130 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8133 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8136 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8139 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8142 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8145 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8148 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8151 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8154 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8157 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8160 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8163 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8166 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8169 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8172 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8175 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8178 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8181 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8184 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8187 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8190 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8193 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8196 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8199 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8202 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8205 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8208 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8211 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8214 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8217 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8220 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8223 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8226 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8229 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8232 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8235 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8238 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8241 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8244 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8247 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8250 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8253 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8256 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8259 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8262 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8265 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8268 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8271 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8274 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8277 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8280 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8283 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8286 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8289 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8292 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8295 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8298 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8301 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8304 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8307 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8310 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8313 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8316 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8319 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8322 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8325 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8328 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8331 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8334 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8337 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8340 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8343 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8346 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8349 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8352 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8355 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8358 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8361 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8364 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8367 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8370 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8373 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8376 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8379 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8382 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8385 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8388 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8391 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8394 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8397 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8400 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8403 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8406 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8409 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8412 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8415 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8418 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8421 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8424 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8427 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8430 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8433 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8436 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8439 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8442 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8445 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8448 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8451 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8454 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8457 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8460 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8463 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8466 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8469 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8472 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8475 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8478 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8481 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8484 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8487 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8490 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8493 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8496 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8499 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8502 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8505 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8508 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8511 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8514 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8517 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8520 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8523 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8526 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8529 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8532 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8535 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8538 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8541 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8544 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8547 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8550 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8553 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8556 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8559 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8562 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8565 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8568 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8571 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8574 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8577 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8580 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8583 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8586 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8589 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8592 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8595 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8598 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8601 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8604 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8607 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8610 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8613 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8616 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8619 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8622 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8625 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8628 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8631 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8634 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8637 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8640 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8643 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8646 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8649 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8652 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8655 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8658 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8661 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8664 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8667 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8670 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8673 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8676 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8679 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8682 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8685 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8688 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8691 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8694 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8697 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8700 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8703 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8706 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8709 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8712 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8715 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8718 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8721 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8724 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8727 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8730 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8733 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8736 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8739 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8742 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8745 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8748 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8751 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8754 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8757 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8760 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8763 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8766 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8769 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8772 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8775 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8778 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8781 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8784 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8787 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8790 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8793 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8796 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8799 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8802 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8805 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8808 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8811 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8814 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8817 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8820 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8823 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8826 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8829 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8832 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8835 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8838 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8841 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8844 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8847 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8850 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8853 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8856 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8859 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8862 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8865 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8868 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8871 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8874 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8877 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8880 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8883 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8886 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8889 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8892 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8895 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8898 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8901 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8904 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8907 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8910 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8913 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8916 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8919 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8922 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8925 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8928 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8931 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8934 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8937 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8940 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8943 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8946 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8949 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8952 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8955 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8958 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8961 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8964 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8967 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8970 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8973 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8976 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8979 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8982 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8985 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8988 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8991 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8994 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:8997 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9000 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9003 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9006 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9009 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9012 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9015 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9018 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9021 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9024 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9027 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9030 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9033 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9036 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9039 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9042 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9045 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9048 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9051 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9054 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9057 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9060 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9063 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9066 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9069 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9072 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9075 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9078 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9081 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9084 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9087 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9090 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9093 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9096 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9099 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9102 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9105 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9108 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9111 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9114 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9117 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9120 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9123 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9126 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9129 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9132 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9135 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9138 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9141 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9144 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9147 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9150 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9153 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9156 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9159 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9162 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9165 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9168 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9171 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9174 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9177 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9180 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9183 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9186 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9189 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9192 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9195 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9198 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9201 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9204 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9207 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9210 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9213 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9216 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9219 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9222 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9225 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9228 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9231 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9234 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9237 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9240 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9243 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9246 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9249 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9252 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9255 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9258 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9261 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9264 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9267 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9270 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9273 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9276 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9279 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9282 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9285 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9288 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9291 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9294 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9297 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9300 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9303 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9306 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9309 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9312 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9315 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9318 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9321 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9324 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9327 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9330 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9333 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9336 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9339 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9342 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9345 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9348 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9351 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9354 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9357 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9360 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9363 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9366 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9369 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9372 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9375 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9378 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9381 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9384 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9387 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9390 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9393 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9396 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9399 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9402 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9405 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9408 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9411 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9414 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9417 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9420 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9423 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9426 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9429 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9432 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9435 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9438 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9441 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9444 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9447 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9450 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9453 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9456 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9459 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9462 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9465 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9468 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9471 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9474 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9477 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9480 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9483 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9486 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9489 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9492 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9495 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9498 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9501 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9504 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9507 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9510 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9513 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9516 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9519 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9522 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9525 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9528 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9531 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9534 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9537 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9540 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9543 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9546 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9549 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9552 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9555 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9558 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9561 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9564 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9567 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9570 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9573 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9576 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9579 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9582 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9585 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9588 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9591 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9594 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9597 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9600 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9603 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9606 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9609 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9612 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9615 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9618 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9621 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9624 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9627 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9630 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9633 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9636 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9639 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9642 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9645 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9648 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9651 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9654 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9657 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9660 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9663 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9666 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9669 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9672 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9675 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9678 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9681 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9684 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9687 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9690 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9693 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9696 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9699 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9702 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9705 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9708 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9711 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9714 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9717 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9720 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9723 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9726 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9729 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9732 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9735 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9738 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9741 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9744 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9747 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9750 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9753 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9756 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9759 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9762 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9765 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9768 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9771 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9774 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9777 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9780 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9783 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9786 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9789 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9792 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9795 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9798 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9801 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9804 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9807 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9810 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9813 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9816 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9819 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9822 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9825 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9828 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9831 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9834 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9837 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9840 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9843 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9846 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9849 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9852 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9855 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9858 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9861 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9864 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9867 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9870 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9873 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9876 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9879 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9882 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9885 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9888 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9891 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9894 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9897 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9900 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9903 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9906 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9909 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9912 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9915 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9918 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9921 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9924 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9927 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9930 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9933 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9936 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9939 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9942 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9945 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9948 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9951 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9954 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9957 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9960 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9963 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9966 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9969 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9972 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9975 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9978 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9981 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9984 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9987 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9990 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9993 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9996 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:9999 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10002 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10005 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10008 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10011 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10014 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10017 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10020 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10023 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10026 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10029 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10032 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10035 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10038 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10041 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10044 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10047 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10050 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10053 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10056 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10059 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10062 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10065 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10068 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10071 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10074 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10077 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10080 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10083 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10086 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10089 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10092 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10095 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10098 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10101 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10104 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10107 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10110 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10113 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10116 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10119 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10122 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10125 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10128 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10131 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10134 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10137 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10140 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10143 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10146 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10149 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10152 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10155 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10158 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10161 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10164 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10167 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10170 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10173 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10176 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10179 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10182 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10185 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10188 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10191 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10194 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10197 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10200 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10203 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10206 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10209 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10212 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10215 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10218 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10221 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10224 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10227 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10230 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10233 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10236 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10239 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10242 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10245 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10248 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10251 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10254 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10257 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10260 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10263 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10266 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10269 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10272 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10275 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10278 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10281 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10284 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10287 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10290 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10293 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10296 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10299 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10302 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10305 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10308 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10311 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10314 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10317 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10320 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10323 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10326 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10329 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10332 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10335 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10338 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10341 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10344 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10347 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10350 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10353 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10356 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10359 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10362 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10365 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10368 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10371 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10374 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10377 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10380 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10383 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10386 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10389 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10392 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10395 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10398 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10401 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10404 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10407 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10410 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10413 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10416 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10419 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10422 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10425 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10428 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10431 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10434 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10437 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10440 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10443 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10446 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10449 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10452 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10455 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10458 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10461 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10464 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10467 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10470 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10473 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10476 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10479 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10482 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10485 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10488 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10491 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10494 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10497 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10500 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10503 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10506 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10509 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10512 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10515 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10518 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10521 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10524 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10527 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10530 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10533 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10536 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10539 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10542 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10545 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10548 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10551 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10554 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10557 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10560 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10563 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10566 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10569 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10572 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10575 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10578 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10581 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10584 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10587 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10590 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10593 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10596 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10599 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10602 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10605 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10608 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10611 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10614 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10617 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10620 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10623 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10626 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10629 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10632 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10635 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10638 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10641 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10644 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10647 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10650 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10653 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10656 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10659 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10662 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10665 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10668 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10671 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10674 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10677 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10680 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10683 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10686 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10689 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10692 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10695 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10698 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10701 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10704 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10707 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10710 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10713 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10716 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10719 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10722 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10725 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10728 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10731 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10734 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10737 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10740 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10743 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10746 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10749 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10752 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10755 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10758 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10761 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10764 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10767 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10770 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10773 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10776 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10779 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10782 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10785 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10788 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10791 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10794 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10797 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10800 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10803 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10806 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10809 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10812 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10815 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10818 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10821 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10824 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10827 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10830 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10833 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10836 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10839 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10842 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10845 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10848 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10851 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10854 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10857 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10860 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10863 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10866 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10869 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10872 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10875 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10878 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + bytes("f32", [0x0, 0x0, 0xc0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10881 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10884 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10887 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10890 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10893 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10896 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10899 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10902 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10905 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10908 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10911 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10914 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10917 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10920 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10923 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10926 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10929 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10932 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10935 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10938 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10941 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10944 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10947 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10950 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10953 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10956 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10959 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10962 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10965 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10968 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10971 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10974 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10977 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10980 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10983 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10986 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10989 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10992 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10995 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:10998 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11001 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11004 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11007 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11010 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xa0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11013 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0, 0, 0, 0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11016 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0, -0, -0, -0]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11019 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11022 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11025 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11028 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11031 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([0.5, 0.5, 0.5, 0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11034 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-0.5, -0.5, -0.5, -0.5]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11037 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([1, 1, 1, 1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11040 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-1, -1, -1, -1]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11043 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11046 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11049 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11052 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11055 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11058 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11061 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11064 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11067 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11070 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11073 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11076 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11079 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11082 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11085 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11088 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11091 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11094 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11097 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11100 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11103 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11106 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11109 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11112 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11115 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11118 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11121 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11124 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11127 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11130 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11133 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11136 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11139 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11142 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + bytes("f32", [0x0, 0x0, 0xa0, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11145 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11148 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11151 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11154 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11157 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11160 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11163 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11166 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11169 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11172 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11175 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11178 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11181 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11184 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11187 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11190 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11193 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11196 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11199 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11202 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11205 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11208 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11211 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11214 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11217 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11220 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11223 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11226 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11229 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11232 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11235 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11238 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11241 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11244 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11247 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11250 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11253 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11256 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11259 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11262 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11265 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11268 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11271 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11274 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11277 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11280 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11283 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11286 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11289 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11292 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11295 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11298 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11301 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11304 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11307 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11310 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11313 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11316 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11319 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11322 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11325 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11328 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11331 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11334 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11337 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11340 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11343 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11346 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11349 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11352 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11355 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11358 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11361 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11364 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11367 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11370 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11373 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11376 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11379 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11382 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11385 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11388 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11391 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11394 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11397 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11400 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11403 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11406 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11409 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11412 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11415 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11418 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11421 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11424 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11427 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11430 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11433 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11436 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11439 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11442 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11445 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11448 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11451 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11454 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11457 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11460 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11463 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11466 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11469 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11472 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11475 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11478 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11481 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11484 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11487 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11490 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11493 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11496 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11499 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11502 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11505 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11508 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0, -0, -0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11511 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + value("f32", 0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11514 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + value("f32", -0.000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11517 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + value("f32", 0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11520 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + value("f32", -0.000000000000000000000000000000000000011754944), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11523 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([0.5, 0.5, 0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + value("f32", 0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11526 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-0.5, -0.5, -0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + value("f32", -0.5), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11529 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([1, 1, 1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11532 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-1, -1, -1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11535 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + value("f32", 6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11538 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + value("f32", -6.2831855), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11541 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11544 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11547 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11550 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11553 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11556 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11559 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11562 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11565 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11568 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11571 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11574 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11577 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11580 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11583 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11586 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + value("f32", 0.000000000012345679), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11589 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11592 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11595 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11598 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11601 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11604 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11607 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11610 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11613 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11616 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11619 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11622 +assert_return( + () => invoke($0, `f32x4.pmax`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11629 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.pmin (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11630 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.pmax (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11631 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.pmin (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11632 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.pmax (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11633 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.pmin (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11634 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.pmax (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11635 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.pmin (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11636 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.pmax (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11639 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.pmin (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11640 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.pmax (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11644 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.pmin-1st-arg-empty (result v128) + (f32x4.pmin (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11652 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.pmin-arg-empty (result v128) + (f32x4.pmin) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11660 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.pmax-1st-arg-empty (result v128) + (f32x4.pmax (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_pmin_pmax.wast:11668 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.pmax-arg-empty (result v128) + (f32x4.pmax) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_rounding.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_rounding.wast.js new file mode 100644 index 0000000000..cd67d7ca22 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f32x4_rounding.wast.js @@ -0,0 +1,3432 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f32x4_rounding.wast + +// ./test/core/simd/simd_f32x4_rounding.wast:4 +let $0 = instantiate(`(module + (func (export "f32x4.ceil") (param v128) (result v128) (f32x4.ceil (local.get 0))) + (func (export "f32x4.floor") (param v128) (result v128) (f32x4.floor (local.get 0))) + (func (export "f32x4.trunc") (param v128) (result v128) (f32x4.trunc (local.get 0))) + (func (export "f32x4.nearest") (param v128) (result v128) (f32x4.nearest (local.get 0))) +)`); + +// ./test/core/simd/simd_f32x4_rounding.wast:11 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:13 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:15 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:17 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:19 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:21 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:23 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:25 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:27 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:29 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:31 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855])]), + [ + new F32x4Pattern( + value("f32", 7), + value("f32", 7), + value("f32", 7), + value("f32", 7), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:33 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6), + value("f32", -6), + value("f32", -6), + value("f32", -6), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:35 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:37 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:39 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([Infinity, Infinity, Infinity, Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:41 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([-Infinity, -Infinity, -Infinity, -Infinity])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:43 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:45 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:47 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:49 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:51 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:53 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:55 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:57 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:59 +assert_return( + () => invoke($0, `f32x4.ceil`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:61 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:63 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:65 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:67 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:69 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:71 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:73 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:75 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:77 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:79 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:81 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:83 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:85 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:87 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:89 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:91 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:93 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:95 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:97 +assert_return( + () => invoke($0, `f32x4.ceil`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:99 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:101 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:103 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:105 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:107 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:109 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:111 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:113 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:115 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:117 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:119 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855])]), + [ + new F32x4Pattern( + value("f32", 6), + value("f32", 6), + value("f32", 6), + value("f32", 6), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:121 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -7), + value("f32", -7), + value("f32", -7), + value("f32", -7), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:123 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:125 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:127 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([Infinity, Infinity, Infinity, Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:129 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([-Infinity, -Infinity, -Infinity, -Infinity])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:131 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:133 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:135 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:137 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:139 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:141 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:143 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:145 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:147 +assert_return( + () => invoke($0, `f32x4.floor`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:149 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:151 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:153 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:155 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:157 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:159 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:161 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:163 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:165 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:167 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:169 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:171 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:173 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:175 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:177 +assert_return( + () => invoke($0, `f32x4.floor`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:179 +assert_return( + () => invoke($0, `f32x4.floor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:181 +assert_return( + () => invoke($0, `f32x4.floor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:183 +assert_return( + () => invoke($0, `f32x4.floor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:185 +assert_return( + () => invoke($0, `f32x4.floor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:187 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:189 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:191 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:193 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:195 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:197 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:199 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:201 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:203 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:205 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:207 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855])]), + [ + new F32x4Pattern( + value("f32", 6), + value("f32", 6), + value("f32", 6), + value("f32", 6), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:209 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6), + value("f32", -6), + value("f32", -6), + value("f32", -6), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:211 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:213 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:215 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([Infinity, Infinity, Infinity, Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:217 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([-Infinity, -Infinity, -Infinity, -Infinity])]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:219 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:221 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:223 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:225 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:227 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:229 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:231 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:233 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:235 +assert_return( + () => invoke($0, `f32x4.trunc`, [f32x4([123456790, 123456790, 123456790, 123456790])]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:237 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:239 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:241 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:243 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:245 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:247 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:249 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:251 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:253 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:255 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:257 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:259 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:261 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:263 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:265 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:267 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:269 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:271 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:273 +assert_return( + () => invoke($0, `f32x4.trunc`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:275 +assert_return( + () => invoke($0, `f32x4.nearest`, [f32x4([0, 0, 0, 0])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:277 +assert_return( + () => invoke($0, `f32x4.nearest`, [f32x4([-0, -0, -0, -0])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:279 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:281 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:283 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:285 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:287 +assert_return( + () => invoke($0, `f32x4.nearest`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:289 +assert_return( + () => invoke($0, `f32x4.nearest`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [ + new F32x4Pattern( + value("f32", -0), + value("f32", -0), + value("f32", -0), + value("f32", -0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:291 +assert_return( + () => invoke($0, `f32x4.nearest`, [f32x4([1, 1, 1, 1])]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:293 +assert_return( + () => invoke($0, `f32x4.nearest`, [f32x4([-1, -1, -1, -1])]), + [ + new F32x4Pattern( + value("f32", -1), + value("f32", -1), + value("f32", -1), + value("f32", -1), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:295 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", 6), + value("f32", 6), + value("f32", 6), + value("f32", 6), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:297 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [ + new F32x4Pattern( + value("f32", -6), + value("f32", -6), + value("f32", -6), + value("f32", -6), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:299 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:301 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:303 +assert_return( + () => invoke($0, `f32x4.nearest`, [f32x4([Infinity, Infinity, Infinity, Infinity])]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:305 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:307 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:309 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:311 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:313 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:315 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:317 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:319 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:321 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:323 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:325 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:327 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + 1234567900000000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:329 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + 0.000000000012345679, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:331 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:333 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:335 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:337 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:339 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:341 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:343 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:345 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:347 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([81985530000000000, 81985530000000000, 81985530000000000, 81985530000000000]), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:349 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:351 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([ + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + 42984030000000000000000, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:353 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + f32x4([156374990000, 156374990000, 156374990000, 156374990000]), + ]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:355 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:357 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + `canonical_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:359 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + 0x0, + 0x0, + 0xa0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:361 +assert_return( + () => invoke($0, `f32x4.nearest`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + 0x0, + 0x0, + 0xa0, + 0xff, + ]), + ]), + [ + new F32x4Pattern( + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + `arithmetic_nan`, + ), + ], +); + +// ./test/core/simd/simd_f32x4_rounding.wast:367 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.ceil (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:368 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.floor (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:369 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.trunc (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:370 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.nearest (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:371 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.ceil (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:372 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.floor (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:373 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.trunc (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:374 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.nearest (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:375 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.ceil (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:376 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.floor (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:377 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.trunc (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:378 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.nearest (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:379 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.ceil (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:380 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.floor (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:381 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.trunc (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:382 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.nearest (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:385 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.ceil (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:386 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.floor (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:387 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.trunc (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:388 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.nearest (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:392 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.ceil-arg-empty (result v128) + (f32x4.ceil) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:400 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.floor-arg-empty (result v128) + (f32x4.floor) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:408 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.trunc-arg-empty (result v128) + (f32x4.trunc) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f32x4_rounding.wast:416 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.nearest-arg-empty (result v128) + (f32x4.nearest) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2.wast.js new file mode 100644 index 0000000000..72409ad8e9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2.wast.js @@ -0,0 +1,13218 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f64x2.wast + +// ./test/core/simd/simd_f64x2.wast:4 +let $0 = instantiate(`(module + (func (export "f64x2.min") (param v128 v128) (result v128) (f64x2.min (local.get 0) (local.get 1))) + (func (export "f64x2.max") (param v128 v128) (result v128) (f64x2.max (local.get 0) (local.get 1))) + (func (export "f64x2.abs") (param v128) (result v128) (f64x2.abs (local.get 0))) + ;; f64x2.min const vs const + (func (export "f64x2.min_with_const_0") (result v128) (f64x2.min (v128.const f64x2 0 1) (v128.const f64x2 0 2))) + (func (export "f64x2.min_with_const_1") (result v128) (f64x2.min (v128.const f64x2 2 -3) (v128.const f64x2 1 3))) + (func (export "f64x2.min_with_const_2") (result v128) (f64x2.min (v128.const f64x2 0 1) (v128.const f64x2 0 1))) + (func (export "f64x2.min_with_const_3") (result v128) (f64x2.min (v128.const f64x2 2 3) (v128.const f64x2 2 3))) + (func (export "f64x2.min_with_const_4") (result v128) (f64x2.min (v128.const f64x2 0x00 0x01) (v128.const f64x2 0x00 0x02))) + (func (export "f64x2.min_with_const_5") (result v128) (f64x2.min (v128.const f64x2 0x02 0x80000000) (v128.const f64x2 0x01 2147483648))) + (func (export "f64x2.min_with_const_6") (result v128) (f64x2.min (v128.const f64x2 0x00 0x01) (v128.const f64x2 0x00 0x01))) + (func (export "f64x2.min_with_const_7") (result v128) (f64x2.min (v128.const f64x2 0x02 0x80000000) (v128.const f64x2 0x02 0x80000000))) + ;; f64x2.min param vs const + (func (export "f64x2.min_with_const_9") (param v128) (result v128) (f64x2.min (local.get 0) (v128.const f64x2 0 1))) + (func (export "f64x2.min_with_const_10") (param v128) (result v128) (f64x2.min (v128.const f64x2 2 -3) (local.get 0))) + (func (export "f64x2.min_with_const_11") (param v128) (result v128) (f64x2.min (v128.const f64x2 0 1) (local.get 0))) + (func (export "f64x2.min_with_const_12") (param v128) (result v128) (f64x2.min (local.get 0) (v128.const f64x2 2 3))) + (func (export "f64x2.min_with_const_13") (param v128) (result v128) (f64x2.min (v128.const f64x2 0x00 0x01) (local.get 0))) + (func (export "f64x2.min_with_const_14") (param v128) (result v128) (f64x2.min (v128.const f64x2 0x02 0x80000000) (local.get 0))) + (func (export "f64x2.min_with_const_15") (param v128) (result v128) (f64x2.min (v128.const f64x2 0x00 0x01) (local.get 0))) + (func (export "f64x2.min_with_const_16") (param v128) (result v128) (f64x2.min (v128.const f64x2 0x02 0x80000000) (local.get 0))) + ;; f64x2.max const vs const + (func (export "f64x2.max_with_const_18") (result v128) (f64x2.max (v128.const f64x2 0 1) (v128.const f64x2 0 2))) + (func (export "f64x2.max_with_const_19") (result v128) (f64x2.max (v128.const f64x2 2 -3) (v128.const f64x2 1 3))) + (func (export "f64x2.max_with_const_20") (result v128) (f64x2.max (v128.const f64x2 0 1) (v128.const f64x2 0 1))) + (func (export "f64x2.max_with_const_21") (result v128) (f64x2.max (v128.const f64x2 2 3) (v128.const f64x2 2 3))) + (func (export "f64x2.max_with_const_22") (result v128) (f64x2.max (v128.const f64x2 0x00 0x01) (v128.const f64x2 0x00 0x02))) + (func (export "f64x2.max_with_const_23") (result v128) (f64x2.max (v128.const f64x2 0x02 0x80000000) (v128.const f64x2 0x01 2147483648))) + (func (export "f64x2.max_with_const_24") (result v128) (f64x2.max (v128.const f64x2 0x00 0x01) (v128.const f64x2 0x00 0x01))) + (func (export "f64x2.max_with_const_25") (result v128) (f64x2.max (v128.const f64x2 0x02 0x80000000) (v128.const f64x2 0x02 0x80000000))) + ;; f64x2.max param vs const + (func (export "f64x2.max_with_const_27") (param v128) (result v128) (f64x2.max (local.get 0) (v128.const f64x2 0 1))) + (func (export "f64x2.max_with_const_28") (param v128) (result v128) (f64x2.max (v128.const f64x2 2 -3) (local.get 0))) + (func (export "f64x2.max_with_const_29") (param v128) (result v128) (f64x2.max (v128.const f64x2 0 1) (local.get 0))) + (func (export "f64x2.max_with_const_30") (param v128) (result v128) (f64x2.max (local.get 0) (v128.const f64x2 2 3))) + (func (export "f64x2.max_with_const_31") (param v128) (result v128) (f64x2.max (v128.const f64x2 0x00 0x01) (local.get 0))) + (func (export "f64x2.max_with_const_32") (param v128) (result v128) (f64x2.max (v128.const f64x2 0x02 0x80000000) (local.get 0))) + (func (export "f64x2.max_with_const_33") (param v128) (result v128) (f64x2.max (v128.const f64x2 0x00 0x01) (local.get 0))) + (func (export "f64x2.max_with_const_34") (param v128) (result v128) (f64x2.max (v128.const f64x2 0x02 0x80000000) (local.get 0))) + + (func (export "f64x2.abs_with_const_35") (result v128) (f64x2.abs (v128.const f64x2 -0 -1))) + (func (export "f64x2.abs_with_const_36") (result v128) (f64x2.abs (v128.const f64x2 -2 -3))) +)`); + +// ./test/core/simd/simd_f64x2.wast:50 +assert_return( + () => invoke($0, `f64x2.min_with_const_0`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:51 +assert_return( + () => invoke($0, `f64x2.min_with_const_1`, []), + [new F64x2Pattern(value("f64", 1), value("f64", -3))], +); + +// ./test/core/simd/simd_f64x2.wast:52 +assert_return( + () => invoke($0, `f64x2.min_with_const_2`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:53 +assert_return( + () => invoke($0, `f64x2.min_with_const_3`, []), + [new F64x2Pattern(value("f64", 2), value("f64", 3))], +); + +// ./test/core/simd/simd_f64x2.wast:55 +assert_return( + () => invoke($0, `f64x2.min_with_const_4`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:56 +assert_return( + () => invoke($0, `f64x2.min_with_const_5`, []), + [new F64x2Pattern(value("f64", 1), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_f64x2.wast:57 +assert_return( + () => invoke($0, `f64x2.min_with_const_6`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:58 +assert_return( + () => invoke($0, `f64x2.min_with_const_7`, []), + [new F64x2Pattern(value("f64", 2), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_f64x2.wast:59 +assert_return( + () => invoke($0, `f64x2.min_with_const_9`, [f64x2([0, 2])]), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:61 +assert_return( + () => invoke($0, `f64x2.min_with_const_10`, [f64x2([1, 3])]), + [new F64x2Pattern(value("f64", 1), value("f64", -3))], +); + +// ./test/core/simd/simd_f64x2.wast:63 +assert_return( + () => invoke($0, `f64x2.min_with_const_11`, [f64x2([0, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:65 +assert_return( + () => invoke($0, `f64x2.min_with_const_12`, [f64x2([2, 3])]), + [new F64x2Pattern(value("f64", 2), value("f64", 3))], +); + +// ./test/core/simd/simd_f64x2.wast:67 +assert_return( + () => invoke($0, `f64x2.min_with_const_13`, [f64x2([0, 2])]), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:69 +assert_return( + () => invoke($0, `f64x2.min_with_const_14`, [f64x2([1, 2147483648])]), + [new F64x2Pattern(value("f64", 1), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_f64x2.wast:71 +assert_return( + () => invoke($0, `f64x2.min_with_const_15`, [f64x2([0, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:73 +assert_return( + () => invoke($0, `f64x2.min_with_const_16`, [f64x2([2, 2147483648])]), + [new F64x2Pattern(value("f64", 2), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_f64x2.wast:76 +assert_return( + () => invoke($0, `f64x2.max_with_const_18`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2.wast:77 +assert_return( + () => invoke($0, `f64x2.max_with_const_19`, []), + [new F64x2Pattern(value("f64", 2), value("f64", 3))], +); + +// ./test/core/simd/simd_f64x2.wast:78 +assert_return( + () => invoke($0, `f64x2.max_with_const_20`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:79 +assert_return( + () => invoke($0, `f64x2.max_with_const_21`, []), + [new F64x2Pattern(value("f64", 2), value("f64", 3))], +); + +// ./test/core/simd/simd_f64x2.wast:81 +assert_return( + () => invoke($0, `f64x2.max_with_const_22`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2.wast:82 +assert_return( + () => invoke($0, `f64x2.max_with_const_23`, []), + [new F64x2Pattern(value("f64", 2), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_f64x2.wast:83 +assert_return( + () => invoke($0, `f64x2.max_with_const_24`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:84 +assert_return( + () => invoke($0, `f64x2.max_with_const_25`, []), + [new F64x2Pattern(value("f64", 2), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_f64x2.wast:85 +assert_return( + () => invoke($0, `f64x2.max_with_const_27`, [f64x2([0, 2])]), + [new F64x2Pattern(value("f64", 0), value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2.wast:87 +assert_return( + () => invoke($0, `f64x2.max_with_const_28`, [f64x2([1, 3])]), + [new F64x2Pattern(value("f64", 2), value("f64", 3))], +); + +// ./test/core/simd/simd_f64x2.wast:89 +assert_return( + () => invoke($0, `f64x2.max_with_const_29`, [f64x2([0, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:91 +assert_return( + () => invoke($0, `f64x2.max_with_const_30`, [f64x2([2, 3])]), + [new F64x2Pattern(value("f64", 2), value("f64", 3))], +); + +// ./test/core/simd/simd_f64x2.wast:93 +assert_return( + () => invoke($0, `f64x2.max_with_const_31`, [f64x2([0, 2])]), + [new F64x2Pattern(value("f64", 0), value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2.wast:95 +assert_return( + () => invoke($0, `f64x2.max_with_const_32`, [f64x2([1, 2147483648])]), + [new F64x2Pattern(value("f64", 2), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_f64x2.wast:97 +assert_return( + () => invoke($0, `f64x2.max_with_const_33`, [f64x2([0, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:99 +assert_return( + () => invoke($0, `f64x2.max_with_const_34`, [f64x2([2, 2147483648])]), + [new F64x2Pattern(value("f64", 2), value("f64", 2147483648))], +); + +// ./test/core/simd/simd_f64x2.wast:102 +assert_return( + () => invoke($0, `f64x2.abs_with_const_35`, []), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:103 +assert_return( + () => invoke($0, `f64x2.abs_with_const_36`, []), + [new F64x2Pattern(value("f64", 2), value("f64", 3))], +); + +// ./test/core/simd/simd_f64x2.wast:107 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + f64x2([0, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:115 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:123 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf0, + 0x3f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:131 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + f64x2([0, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:139 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:147 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf0, + 0x3f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:155 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:158 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:161 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:164 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:167 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:170 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:173 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:176 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:179 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:182 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:185 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:188 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:191 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:194 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:197 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:200 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:203 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:206 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:209 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:212 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:215 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:218 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:221 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:224 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:227 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:230 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:233 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:236 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:239 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:242 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:245 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:248 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:251 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:254 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:257 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:260 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:263 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:266 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:269 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:272 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:275 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:278 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:281 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:284 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:287 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:290 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:293 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:296 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:299 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:302 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:305 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:308 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:311 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:314 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:317 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:320 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:323 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:326 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:329 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:332 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:335 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:338 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:341 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:344 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:347 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:350 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:353 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:356 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:359 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:362 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:365 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:368 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:371 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:374 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:377 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:380 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:383 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:386 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:389 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:392 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:395 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:398 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:401 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:404 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:407 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:410 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:413 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:416 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:419 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:422 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:425 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:428 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:431 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:434 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:437 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:440 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:443 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:446 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:449 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:452 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:455 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:458 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:461 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:464 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:467 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:470 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:473 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:476 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:479 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:482 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:485 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:488 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:491 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:494 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:497 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:500 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:503 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:506 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:509 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:512 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:515 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:518 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:521 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:524 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:527 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:530 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:533 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:536 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:539 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([1, 1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:542 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([1, 1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:545 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:548 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:551 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:554 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:557 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:560 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:563 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([1, 1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:566 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([1, 1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:569 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:572 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:575 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:578 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:581 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:584 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:587 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-1, -1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:590 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:593 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:596 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:599 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:602 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:605 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:608 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:611 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-1, -1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:614 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:617 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:620 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:623 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:626 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:629 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:632 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:635 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:638 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:641 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:644 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:647 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:650 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:653 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:656 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:659 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:662 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:665 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:668 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:671 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:674 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:677 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:680 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:683 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:686 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:689 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:692 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:695 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:698 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:701 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:704 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:707 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:710 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:713 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:716 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:719 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:722 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:725 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:728 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:731 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:734 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:737 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:740 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:743 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:746 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:749 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:752 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:755 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:758 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:761 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:764 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:767 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:770 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:773 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:776 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:779 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:782 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:785 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:788 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:791 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:794 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:797 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:800 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:803 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:806 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:809 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:812 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:815 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:818 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:821 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:824 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:827 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:830 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:833 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:836 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:839 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:842 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:845 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:848 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:851 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:854 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:857 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:860 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:863 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:866 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:869 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:872 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:875 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:878 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:881 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:884 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:887 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:890 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:893 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:896 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:899 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:902 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:905 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:908 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:911 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:914 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:917 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:920 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:923 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:926 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:929 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:932 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:935 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:938 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:941 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:944 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:947 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:950 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:953 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:956 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:959 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:962 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:965 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:968 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:971 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:974 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:977 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:980 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:983 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:986 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:989 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:992 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:995 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:998 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1001 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1004 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1007 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1010 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1013 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1016 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1019 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1022 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1025 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1028 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1031 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1034 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1037 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1040 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1043 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1046 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1049 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1052 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1055 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1058 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1061 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1064 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1067 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1070 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1073 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1076 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1079 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1082 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1085 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1088 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1091 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1094 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1097 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1100 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1103 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1106 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1109 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1112 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1115 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1118 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1121 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1124 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1127 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1130 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1133 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1136 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1139 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1142 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1145 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1148 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1151 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1154 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1157 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1160 +assert_return( + () => invoke($0, `f64x2.min`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:1163 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1166 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1169 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1172 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1175 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1178 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1181 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1184 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1187 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1190 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1193 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1196 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1199 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1202 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1205 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1208 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1211 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1214 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1217 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1220 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1223 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1226 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1229 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1232 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1235 +assert_return( + () => invoke($0, `f64x2.min`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1238 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1241 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1244 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1247 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1250 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1253 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1256 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1259 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1262 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1265 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1268 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1271 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1274 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1277 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1280 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1283 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1286 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1289 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1292 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1295 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1298 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1301 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1304 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1307 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1310 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1313 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1316 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1319 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1322 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1325 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1328 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1331 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1334 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1337 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1340 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1343 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1346 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1349 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1352 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1355 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1358 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1361 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1364 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1367 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1370 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1373 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1376 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1379 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1382 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1385 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1388 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1391 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1394 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1397 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1400 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1403 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1406 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1409 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1412 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1415 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1418 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1421 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1424 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1427 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1430 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1433 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1436 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1439 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1442 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1445 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1448 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1451 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1454 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1457 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1460 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1463 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1466 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1469 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1472 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1475 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1478 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1481 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1484 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1487 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1490 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1493 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1496 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1499 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1502 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1505 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1508 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1511 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1514 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1517 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1520 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1523 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1526 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1529 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1532 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1535 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1538 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1541 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1544 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1547 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1550 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1553 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1556 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1559 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1562 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1565 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1568 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1571 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1574 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1577 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1580 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1583 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1586 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1589 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1592 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1595 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1598 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1601 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1604 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1607 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1610 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1613 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1616 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1619 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1622 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([1, 1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1625 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([1, 1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1628 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1631 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1634 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1637 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1640 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1643 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1646 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([1, 1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1649 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([1, 1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1652 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1655 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1658 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1661 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1664 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1667 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1670 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-1, -1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1673 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1676 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1679 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1682 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1685 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1688 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1691 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1694 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-1, -1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1697 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:1700 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1703 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:1706 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1709 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:1712 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1715 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:1718 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1721 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1724 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1727 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1730 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1733 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1736 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1739 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1742 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1745 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1748 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1751 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1754 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1757 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1760 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1763 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1766 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1769 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1772 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1775 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1778 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1781 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1784 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1787 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1790 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1793 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:1796 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1799 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1802 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1805 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1808 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1811 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1814 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1817 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1820 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1823 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1826 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1829 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1832 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1835 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1838 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1841 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1844 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1847 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1850 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1853 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1856 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1859 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1862 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1865 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1868 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1871 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1874 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1877 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1880 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1883 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1886 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1889 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:1892 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1895 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1898 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1901 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1904 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1907 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1910 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1913 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1916 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1919 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1922 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1925 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1928 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1931 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1934 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1937 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1940 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1943 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1946 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1949 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1952 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1955 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:1958 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:1961 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:1964 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1967 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1970 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1973 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1976 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1979 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:1982 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:1985 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2.wast:1988 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1991 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1994 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:1997 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2000 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:2003 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:2006 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2009 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2012 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2015 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2018 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2021 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2024 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2027 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2030 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2033 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2036 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2039 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2042 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2045 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2048 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2051 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2054 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2057 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2060 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2063 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2066 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2069 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2072 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2075 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2078 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2081 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2084 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2087 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2090 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2093 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2096 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2099 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2102 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2105 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2108 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2111 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2114 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2117 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2120 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2123 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2126 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2129 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2132 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2135 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2138 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2141 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2144 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2147 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2150 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2153 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2156 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2159 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2162 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2165 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2168 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2171 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2174 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2177 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2180 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2183 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2186 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2189 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2192 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2195 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2198 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2201 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2204 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2207 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2210 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2213 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2216 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2219 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2222 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2225 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2228 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2231 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2234 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2237 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2240 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2243 +assert_return( + () => invoke($0, `f64x2.max`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2.wast:2246 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2249 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2252 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2255 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2258 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2261 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2264 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2267 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2270 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2273 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2276 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2279 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2282 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2285 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2288 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2291 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2294 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2297 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2300 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2303 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2306 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2309 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2312 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2315 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2318 +assert_return( + () => invoke($0, `f64x2.max`, [ + f64x2([-1234567890123456800, -1234567890123456800]), + f64x2([-1234567890123456800, -1234567890123456800]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456800), + value("f64", -1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2323 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([0, 0]), f64x2([0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:2326 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, 0]), f64x2([0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:2329 +assert_return( + () => invoke($0, `f64x2.min`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2.wast:2332 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([0, 0]), f64x2([0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:2335 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, 0]), f64x2([0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:2338 +assert_return( + () => invoke($0, `f64x2.max`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:2343 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:2345 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2.wast:2347 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2349 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2351 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2353 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2355 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:2357 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2.wast:2359 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:2361 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2.wast:2363 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([6.283185307179586, 6.283185307179586])]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2365 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([-6.283185307179586, -6.283185307179586])]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2367 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2369 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2371 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:2373 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2.wast:2375 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789012345690000000000000000000000000000000000000000), + value("f64", 123456789012345690000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2377 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000012345678901234569), + value("f64", 0.000000000000000000012345678901234569), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2379 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2381 +assert_return( + () => invoke($0, `f64x2.abs`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 12345678900000000000000000000000000000000000000), + value("f64", 12345678900000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2383 +assert_return( + () => invoke($0, `f64x2.abs`, [f64x2([-1234567890123456800, -1234567890123456800])]), + [ + new F64x2Pattern( + value("f64", 1234567890123456800), + value("f64", 1234567890123456800), + ), + ], +); + +// ./test/core/simd/simd_f64x2.wast:2387 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.abs (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2.wast:2388 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.min (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2.wast:2389 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.max (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2.wast:2393 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.abs-arg-empty (result v128) + (f64x2.abs) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2.wast:2401 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.min-1st-arg-empty (result v128) + (f64x2.min (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2.wast:2409 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.min-arg-empty (result v128) + (f64x2.min) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2.wast:2417 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.max-1st-arg-empty (result v128) + (f64x2.max (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2.wast:2425 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.max-arg-empty (result v128) + (f64x2.max) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2.wast:2435 +let $1 = instantiate(`(module + (func (export "max-min") (param v128 v128 v128) (result v128) + (f64x2.max (f64x2.min (local.get 0) (local.get 1))(local.get 2))) + (func (export "min-max") (param v128 v128 v128) (result v128) + (f64x2.min (f64x2.max (local.get 0) (local.get 1))(local.get 2))) + (func (export "max-abs") (param v128 v128) (result v128) + (f64x2.max (f64x2.abs (local.get 0)) (local.get 1))) + (func (export "min-abs") (param v128 v128) (result v128) + (f64x2.min (f64x2.abs (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_f64x2.wast:2446 +assert_return( + () => invoke($1, `max-min`, [ + f64x2([1.125, 1.125]), + f64x2([0.25, 0.25]), + f64x2([0.125, 0.125]), + ]), + [new F64x2Pattern(value("f64", 0.25), value("f64", 0.25))], +); + +// ./test/core/simd/simd_f64x2.wast:2450 +assert_return( + () => invoke($1, `min-max`, [ + f64x2([1.125, 1.125]), + f64x2([0.25, 0.25]), + f64x2([0.125, 0.125]), + ]), + [new F64x2Pattern(value("f64", 0.125), value("f64", 0.125))], +); + +// ./test/core/simd/simd_f64x2.wast:2454 +assert_return( + () => invoke($1, `max-abs`, [f64x2([-1.125, -1.125]), f64x2([0.125, 0.125])]), + [new F64x2Pattern(value("f64", 1.125), value("f64", 1.125))], +); + +// ./test/core/simd/simd_f64x2.wast:2457 +assert_return( + () => invoke($1, `min-abs`, [f64x2([-1.125, -1.125]), f64x2([0.125, 0.125])]), + [new F64x2Pattern(value("f64", 0.125), value("f64", 0.125))], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_arith.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_arith.wast.js new file mode 100644 index 0000000000..ea798af4ad --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_arith.wast.js @@ -0,0 +1,32018 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f64x2_arith.wast + +// ./test/core/simd/simd_f64x2_arith.wast:4 +let $0 = instantiate(`(module + (func (export "f64x2.add") (param v128 v128) (result v128) (f64x2.add (local.get 0) (local.get 1))) + (func (export "f64x2.sub") (param v128 v128) (result v128) (f64x2.sub (local.get 0) (local.get 1))) + (func (export "f64x2.mul") (param v128 v128) (result v128) (f64x2.mul (local.get 0) (local.get 1))) + (func (export "f64x2.div") (param v128 v128) (result v128) (f64x2.div (local.get 0) (local.get 1))) + (func (export "f64x2.neg") (param v128) (result v128) (f64x2.neg (local.get 0))) + (func (export "f64x2.sqrt") (param v128) (result v128) (f64x2.sqrt (local.get 0))) +)`); + +// ./test/core/simd/simd_f64x2_arith.wast:13 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0, 0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:16 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0, 0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:19 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:22 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:25 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:28 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:31 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0, 0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:34 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0, 0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:37 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:40 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:43 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:46 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:49 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:52 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:55 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:58 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:61 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:64 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:67 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:70 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:73 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:76 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:79 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0, -0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:82 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:85 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:88 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:91 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:94 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:97 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:100 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:103 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:106 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:109 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:112 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:115 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:118 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:121 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:124 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:127 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:130 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:133 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:136 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:139 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:142 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:145 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:148 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:151 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:154 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:157 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:160 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:163 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:166 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:169 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:172 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:175 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:178 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:181 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:184 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:187 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:190 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:193 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:196 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:199 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:202 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:205 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:208 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:211 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:214 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:217 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:220 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:223 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1.5), value("f64", 1.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:226 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:229 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.783185307179586), + value("f64", 6.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:232 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -5.783185307179586), + value("f64", -5.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:235 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:238 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:241 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:244 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:247 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:250 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:253 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:256 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:259 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:262 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:265 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:268 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:271 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:274 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1.5), value("f64", -1.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:277 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 5.783185307179586), + value("f64", 5.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:280 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.783185307179586), + value("f64", -6.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:283 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:286 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:289 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:292 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:295 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:298 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:301 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([1, 1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:304 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([1, 1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:307 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:310 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:313 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 1.5), value("f64", 1.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:316 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:319 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([1, 1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 2), value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:322 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([1, 1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:325 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 7.283185307179586), + value("f64", 7.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:328 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -5.283185307179586), + value("f64", -5.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:331 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:334 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:337 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:340 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:343 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:346 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:349 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-1, -1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:352 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:355 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:358 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:361 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:364 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -1.5), value("f64", -1.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:367 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-1, -1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:370 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -2), value("f64", -2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:373 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 5.283185307179586), + value("f64", 5.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:376 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -7.283185307179586), + value("f64", -7.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:379 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:382 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:385 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:388 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:391 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:394 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:397 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:400 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:403 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:406 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:409 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 6.783185307179586), + value("f64", 6.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:412 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 5.783185307179586), + value("f64", 5.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:415 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 7.283185307179586), + value("f64", 7.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:418 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 5.283185307179586), + value("f64", 5.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:421 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 12.566370614359172), + value("f64", 12.566370614359172), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:424 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:427 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:430 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:433 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:436 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:439 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:442 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:445 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:448 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:451 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:454 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:457 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -5.783185307179586), + value("f64", -5.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:460 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -6.783185307179586), + value("f64", -6.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:463 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -5.283185307179586), + value("f64", -5.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:466 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -7.283185307179586), + value("f64", -7.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:469 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:472 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -12.566370614359172), + value("f64", -12.566370614359172), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:475 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:478 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:481 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:484 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:487 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:490 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:493 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:496 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:499 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:502 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:505 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:508 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:511 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:514 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:517 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:520 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:523 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:526 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:529 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:532 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:535 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:538 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:541 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:544 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:547 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:550 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:553 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:556 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:559 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:562 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:565 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:568 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:571 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:574 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:577 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:580 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:583 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:586 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:589 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:592 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:595 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:598 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:601 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:604 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:607 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:610 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:613 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:616 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:619 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:622 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:625 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:628 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:631 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:634 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:637 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:640 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:643 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:646 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:649 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:652 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:655 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:658 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:661 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:664 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:667 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:670 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:673 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:676 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:679 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:682 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:685 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:688 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:691 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:694 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:697 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:700 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:703 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:706 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:709 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:712 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:715 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:718 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:721 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:724 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:727 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:730 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:733 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:736 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:739 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:742 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:745 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:748 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:751 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:754 +assert_return( + () => invoke($0, `f64x2.add`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:757 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:760 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:763 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:766 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:769 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:772 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:775 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:778 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:781 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:784 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:787 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:790 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:793 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:796 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:799 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:802 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:805 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:808 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:811 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:814 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:817 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:820 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:823 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:826 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:829 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:832 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:835 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:838 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:841 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:844 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:847 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:850 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:853 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:856 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:859 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:862 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:865 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:868 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:871 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:874 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:877 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:880 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:883 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:886 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:889 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:892 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:895 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:898 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:901 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:904 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:907 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:910 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:913 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:916 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:919 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:922 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:925 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:928 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:931 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:934 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:937 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:940 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:943 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:946 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:949 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:952 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:955 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:958 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:961 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:964 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:967 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:970 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:973 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:976 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:979 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:982 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:985 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:988 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:991 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:994 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:997 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1000 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1003 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1006 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1009 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1012 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1015 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1018 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1021 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1024 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1027 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1030 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1033 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1036 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1039 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1042 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1045 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1048 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1051 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1054 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1057 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1060 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1063 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1066 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1069 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1072 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1075 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1078 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1081 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1084 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1087 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1090 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1093 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1096 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1099 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1102 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1105 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1108 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1111 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1114 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1117 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1120 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1123 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1126 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1129 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1132 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1135 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1138 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1141 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1144 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1147 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1150 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1153 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1156 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1159 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1162 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1165 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1168 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1171 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1174 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1177 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1180 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1183 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1186 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1189 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1192 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1195 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1198 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1201 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1204 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1207 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1210 +assert_return( + () => invoke($0, `f64x2.add`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1213 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 246913578), value("f64", 246913578))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1216 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2469135780000000000000000000), + value("f64", 2469135780000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1219 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2469135780000000000000000000), + value("f64", 2469135780000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1222 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000246913578), + value("f64", 0.0000000000246913578), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1225 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 246913578), value("f64", 246913578))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1228 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2469135780000000000000000000), + value("f64", 2469135780000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1231 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2469135780000000000000000000), + value("f64", 2469135780000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1234 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000246913578), + value("f64", 0.0000000000246913578), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1237 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 246913578.02469134), + value("f64", 246913578.02469134), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1240 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2469135780246913700000000000), + value("f64", 2469135780246913700000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1243 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2469135780246913700000000000), + value("f64", 2469135780246913700000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1246 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000024691357802469137), + value("f64", 0.000000000024691357802469137), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1249 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2750977865078623000000000), + value("f64", 2750977865078623000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1252 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1442304682926341000000000000000), + value("f64", 1442304682926341000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1255 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1442304682926341000000000000000), + value("f64", 1442304682926341000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1258 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 5247073869855161000), + value("f64", 5247073869855161000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1261 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2750977865078623000000000), + value("f64", 2750977865078623000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1264 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1442304682926341000000000000000), + value("f64", 1442304682926341000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1267 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1442304682926341000000000000000), + value("f64", 1442304682926341000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1270 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 5247073869855161000), + value("f64", 5247073869855161000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1273 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2750977865078623000000000), + value("f64", 2750977865078623000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1276 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1442304682926341000000000000000), + value("f64", 1442304682926341000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1279 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1442304682926341000000000000000), + value("f64", 1442304682926341000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1282 +assert_return( + () => invoke($0, `f64x2.add`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 5247073869855161000), + value("f64", 5247073869855161000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1285 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0, 0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1288 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0, 0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1291 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1294 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1297 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1300 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1303 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0, 0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1306 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0, 0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1309 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1312 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1315 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1318 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1321 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1324 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1327 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1330 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1333 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1336 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1339 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1342 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1345 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1348 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1351 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0, -0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1354 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1357 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1360 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1363 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1366 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1369 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1372 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1375 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1378 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1381 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1384 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1387 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1390 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1393 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1396 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1399 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1402 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1405 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1408 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1411 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1414 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1417 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1420 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1423 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1426 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1429 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1432 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1435 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1438 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1441 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1444 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1447 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1450 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1453 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1456 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1459 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1462 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1465 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1468 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1471 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1474 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1477 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1480 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1483 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1486 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1489 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1492 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1495 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1498 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1.5), value("f64", 1.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1501 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -5.783185307179586), + value("f64", -5.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1504 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.783185307179586), + value("f64", 6.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1507 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1510 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1513 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1516 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1519 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1522 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1525 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1528 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1531 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1534 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1537 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1540 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1543 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -1.5), value("f64", -1.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1546 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1549 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.783185307179586), + value("f64", -6.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1552 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 5.783185307179586), + value("f64", 5.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1555 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1558 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1561 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1564 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1567 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1570 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1573 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([1, 1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1576 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([1, 1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1579 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1582 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1585 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1588 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 1.5), value("f64", 1.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1591 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([1, 1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1594 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([1, 1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 2), value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1597 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -5.283185307179586), + value("f64", -5.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1600 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 7.283185307179586), + value("f64", 7.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1603 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1606 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1609 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1612 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1615 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1618 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1621 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-1, -1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1624 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1627 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1630 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1633 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -1.5), value("f64", -1.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1636 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1639 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-1, -1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -2), value("f64", -2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1642 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1645 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -7.283185307179586), + value("f64", -7.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1648 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 5.283185307179586), + value("f64", 5.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1651 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1654 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1657 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1660 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1663 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1666 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1669 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1672 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1675 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1678 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1681 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 5.783185307179586), + value("f64", 5.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1684 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 6.783185307179586), + value("f64", 6.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1687 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 5.283185307179586), + value("f64", 5.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1690 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 7.283185307179586), + value("f64", 7.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1693 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1696 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 12.566370614359172), + value("f64", 12.566370614359172), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1699 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1702 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1705 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1708 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1711 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1714 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1717 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1720 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1723 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1726 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1729 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -6.783185307179586), + value("f64", -6.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1732 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -5.783185307179586), + value("f64", -5.783185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1735 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -7.283185307179586), + value("f64", -7.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1738 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -5.283185307179586), + value("f64", -5.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1741 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -12.566370614359172), + value("f64", -12.566370614359172), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1744 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1747 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1750 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1753 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1756 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1759 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1762 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1765 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1768 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1771 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1774 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1777 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1780 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1783 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1786 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1789 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1792 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1795 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1798 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1801 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1804 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1807 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1810 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1813 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1816 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1819 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1822 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1825 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1828 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1831 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1834 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1837 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1840 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1843 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1846 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1849 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1852 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1855 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1858 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1861 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1864 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1867 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1870 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1873 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1876 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1879 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1882 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1885 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1888 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1891 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1894 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1897 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1900 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1903 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1906 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1909 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1912 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1915 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1918 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507202), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1921 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1924 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1927 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1930 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1933 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1936 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1939 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1942 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1945 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1948 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1951 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1954 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1957 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1960 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1963 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1966 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1969 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1972 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1975 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1978 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1981 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1984 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1987 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1990 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1993 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1996 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:1999 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2002 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2005 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2008 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2011 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2014 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2017 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2020 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2023 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2026 +assert_return( + () => invoke($0, `f64x2.sub`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2029 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2032 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2035 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2038 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2041 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2044 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2047 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2050 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2053 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2056 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2059 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2062 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2065 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2068 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2071 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2074 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2077 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2080 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2083 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2086 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2089 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2092 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2095 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2098 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2101 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2104 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2107 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2110 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2113 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2116 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2119 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2122 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2125 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2128 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2131 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2134 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2137 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2140 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2143 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2146 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2149 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2152 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2155 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2158 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2161 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2164 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2167 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2170 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2173 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2176 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2179 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2182 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2185 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2188 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2191 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2194 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2197 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2200 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2203 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2206 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2209 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2212 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2215 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2218 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2221 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2224 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2227 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2230 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2233 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2236 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2239 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2242 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2245 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2248 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2251 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2254 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2257 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2260 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2263 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2266 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2269 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2272 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2275 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2278 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2281 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2284 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2287 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2290 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2293 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2296 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2299 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2302 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2305 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2308 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2311 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2314 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2317 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2320 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2323 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2326 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2329 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2332 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2335 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2338 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2341 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2344 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2347 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2350 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2353 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2356 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2359 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2362 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2365 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2368 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2371 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2374 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2377 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2380 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2383 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2386 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2389 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2392 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2395 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2398 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2401 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2404 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2407 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2410 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2413 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2416 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2419 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2422 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2425 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2428 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2431 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2434 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2437 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2440 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2443 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2446 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2449 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2452 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2455 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2458 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2461 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2464 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2467 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2470 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2473 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2476 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2479 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2482 +assert_return( + () => invoke($0, `f64x2.sub`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2485 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2488 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2491 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2494 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2497 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2500 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2503 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2506 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2509 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2512 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2515 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2518 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2521 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2524 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2527 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2530 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2533 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2536 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2539 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2542 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2545 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2548 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2551 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2554 +assert_return( + () => invoke($0, `f64x2.sub`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2557 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0, 0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2560 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0, 0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2563 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2566 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2569 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2572 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2575 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0, 0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2578 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0, 0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2581 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2584 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2587 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2590 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2593 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2596 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2599 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2602 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2605 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2608 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2611 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2614 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2617 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2620 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2623 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0, -0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2626 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2629 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2632 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2635 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2638 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2641 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2644 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2647 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2650 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2653 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2656 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2659 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2662 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2665 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2668 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2671 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2674 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2677 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2680 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2683 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 3.9999999999999996), + value("f64", 3.9999999999999996), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2686 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -3.9999999999999996), + value("f64", -3.9999999999999996), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2689 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2692 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2695 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2698 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2701 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2704 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2707 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2710 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2713 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2716 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2719 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2722 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2725 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2728 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2731 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -3.9999999999999996), + value("f64", -3.9999999999999996), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2734 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 3.9999999999999996), + value("f64", 3.9999999999999996), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2737 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2740 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2743 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2746 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2749 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2752 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2755 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2758 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2761 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.25), value("f64", 0.25))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2764 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.25), value("f64", -0.25))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2767 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2770 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2773 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 3.141592653589793), + value("f64", 3.141592653589793), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2776 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -3.141592653589793), + value("f64", -3.141592653589793), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2779 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2782 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2785 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2788 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2791 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2794 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2797 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2800 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2803 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2806 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011125369292536007), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2809 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0.25), value("f64", -0.25))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2812 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.25), value("f64", 0.25))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2815 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2818 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2821 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -3.141592653589793), + value("f64", -3.141592653589793), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2824 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 3.141592653589793), + value("f64", 3.141592653589793), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2827 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2830 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2833 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2836 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2839 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2842 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2845 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([1, 1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2848 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([1, 1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2851 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2854 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2857 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2860 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2863 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([1, 1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2866 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([1, 1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2869 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2872 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2875 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2878 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2881 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2884 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2887 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2890 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2893 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-1, -1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2896 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2899 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2902 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2905 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2908 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2911 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-1, -1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2914 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2917 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2920 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2923 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2926 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2929 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2932 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2935 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2938 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2941 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2944 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2947 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2950 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2953 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 3.141592653589793), + value("f64", 3.141592653589793), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2956 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -3.141592653589793), + value("f64", -3.141592653589793), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2959 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2962 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2965 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 39.47841760435743), + value("f64", 39.47841760435743), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2968 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -39.47841760435743), + value("f64", -39.47841760435743), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2971 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2974 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2977 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2980 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2983 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2986 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2989 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2992 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2995 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:2998 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013980551375161837), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3001 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -3.141592653589793), + value("f64", -3.141592653589793), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3004 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 3.141592653589793), + value("f64", 3.141592653589793), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3007 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3010 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3013 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -39.47841760435743), + value("f64", -39.47841760435743), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3016 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 39.47841760435743), + value("f64", 39.47841760435743), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3019 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3022 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3025 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3028 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3031 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3034 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3037 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3040 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3043 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 3.9999999999999996), + value("f64", 3.9999999999999996), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3046 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -3.9999999999999996), + value("f64", -3.9999999999999996), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3049 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3052 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3055 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3058 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3061 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3064 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3067 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3070 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3073 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000008881784197001251), + value("f64", 0.0000000000000008881784197001251), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3076 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000008881784197001251), + value("f64", 0.0000000000000008881784197001251), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3079 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3082 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3085 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3088 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3091 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -3.9999999999999996), + value("f64", -3.9999999999999996), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3094 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 3.9999999999999996), + value("f64", 3.9999999999999996), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3097 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3100 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 89884656743115790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3103 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3106 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3109 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3112 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3115 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3118 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3121 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.0000000000000008881784197001251), + value("f64", -0.0000000000000008881784197001251), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3124 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.0000000000000008881784197001251), + value("f64", -0.0000000000000008881784197001251), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3127 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3130 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3133 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3136 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3139 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3142 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3145 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3148 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3151 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3154 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3157 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3160 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3163 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000008881784197001251), + value("f64", 0.0000000000000008881784197001251), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3166 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.0000000000000008881784197001251), + value("f64", -0.0000000000000008881784197001251), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3169 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3172 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3175 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3178 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3181 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3184 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3187 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3190 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3193 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3196 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3199 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3202 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3205 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3208 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3211 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000008881784197001251), + value("f64", 0.0000000000000008881784197001251), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3214 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.0000000000000008881784197001251), + value("f64", -0.0000000000000008881784197001251), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3217 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3220 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3223 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3226 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3229 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3232 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3235 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3238 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3241 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3244 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3247 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3250 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3253 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3256 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3259 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3262 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3265 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3268 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3271 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3274 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3277 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3280 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3283 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3286 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3289 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3292 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3295 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3298 +assert_return( + () => invoke($0, `f64x2.mul`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3301 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3304 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3307 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3310 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3313 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3316 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3319 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3322 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3325 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3328 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3331 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3334 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3337 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3340 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3343 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3346 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3349 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3352 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3355 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3358 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3361 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3364 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3367 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3370 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3373 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3376 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3379 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3382 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3385 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3388 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3391 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3394 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3397 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3400 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3403 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3406 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3409 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3412 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3415 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3418 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3421 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3424 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3427 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3430 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3433 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3436 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3439 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3442 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3445 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3448 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3451 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3454 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3457 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3460 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3463 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3466 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3469 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3472 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3475 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3478 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3481 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3484 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3487 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3490 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3493 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3496 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3499 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3502 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3505 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3508 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3511 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3514 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3517 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3520 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3523 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3526 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3529 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3532 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3535 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3538 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3541 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3544 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3547 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3550 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3553 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3556 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3559 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3562 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3565 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3568 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3571 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3574 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3577 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3580 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3583 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3586 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3589 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3592 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3595 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3598 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3601 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3604 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3607 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3610 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3613 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3616 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3619 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3622 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3625 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3628 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3631 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3634 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3637 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3640 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3643 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3646 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3649 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3652 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3655 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3658 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3661 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3664 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3667 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3670 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3673 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3676 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3679 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3682 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3685 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3688 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3691 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3694 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3697 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3700 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3703 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3706 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3709 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3712 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3715 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3718 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3721 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3724 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3727 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3730 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3733 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3736 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3739 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3742 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3745 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3748 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3751 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3754 +assert_return( + () => invoke($0, `f64x2.mul`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3757 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 15241578750190520), + value("f64", 15241578750190520), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3760 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1524157875019052000000000000000000000000000000000000000), + value("f64", 1524157875019052000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3763 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1524157875019052000000000000000000000000000000000000000), + value("f64", 1524157875019052000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3766 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000000000001524157875019052), + value("f64", 0.0000000000000000000001524157875019052), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3769 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 15241578750190520), + value("f64", 15241578750190520), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3772 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1524157875019052000000000000000000000000000000000000000), + value("f64", 1524157875019052000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3775 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1524157875019052000000000000000000000000000000000000000), + value("f64", 1524157875019052000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3778 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000000000001524157875019052), + value("f64", 0.0000000000000000000001524157875019052), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3781 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 15241578753238834), + value("f64", 15241578753238834), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3784 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1524157875323883800000000000000000000000000000000000000), + value("f64", 1524157875323883800000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3787 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1524157875323883800000000000000000000000000000000000000), + value("f64", 1524157875323883800000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3790 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000000000001524157875323884), + value("f64", 0.0000000000000000000001524157875323884), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3793 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1891969803538134400000000000000000000000000000000), + value("f64", 1891969803538134400000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3796 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 520060699597813300000000000000000000000000000000000000000000), + value("f64", 520060699597813300000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3799 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 520060699597813300000000000000000000000000000000000000000000), + value("f64", 520060699597813300000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3802 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 6882946048929205000000000000000000000), + value("f64", 6882946048929205000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3805 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1891969803538134400000000000000000000000000000000), + value("f64", 1891969803538134400000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3808 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 520060699597813300000000000000000000000000000000000000000000), + value("f64", 520060699597813300000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3811 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 520060699597813300000000000000000000000000000000000000000000), + value("f64", 520060699597813300000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3814 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 6882946048929205000000000000000000000), + value("f64", 6882946048929205000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3817 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1891969803538134400000000000000000000000000000000), + value("f64", 1891969803538134400000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3820 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 520060699597813300000000000000000000000000000000000000000000), + value("f64", 520060699597813300000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3823 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 520060699597813300000000000000000000000000000000000000000000), + value("f64", 520060699597813300000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3826 +assert_return( + () => invoke($0, `f64x2.mul`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 6882946048929205000000000000000000000), + value("f64", 6882946048929205000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3829 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0, 0]), f64x2([0, 0])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3832 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0, 0]), f64x2([-0, -0])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3835 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3838 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3841 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3844 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3847 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0, 0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3850 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0, 0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3853 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3856 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3859 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3862 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3865 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3868 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3871 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3874 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3877 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3880 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3883 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3886 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3889 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3892 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3895 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0, -0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3898 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3901 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3904 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3907 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3910 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3913 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3916 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3919 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3922 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3925 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3928 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3931 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3934 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3937 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3940 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3943 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3946 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3949 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3952 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3955 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3958 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3961 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern(value("f64", 4503599627370496), value("f64", 4503599627370496)), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3964 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern(value("f64", 4503599627370496), value("f64", 4503599627370496)), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3967 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3970 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3973 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3976 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3979 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3982 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3985 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3988 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004450147717014403), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3991 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3994 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:3997 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4000 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003541315033259774), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4003 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4006 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4009 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -4503599627370496), + value("f64", -4503599627370496), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4012 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -4503599627370496), + value("f64", -4503599627370496), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4015 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4018 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4021 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4024 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4027 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4030 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4033 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4036 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4039 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4042 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4045 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.07957747154594767), + value("f64", 0.07957747154594767), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4048 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.07957747154594767), + value("f64", -0.07957747154594767), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4051 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4054 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4057 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4060 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4063 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4066 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4069 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4072 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4075 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4078 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 22471164185778950000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4081 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4084 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4087 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4090 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4093 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.07957747154594767), + value("f64", -0.07957747154594767), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4096 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.07957747154594767), + value("f64", 0.07957747154594767), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4099 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4102 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002781342323134), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4105 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4108 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4111 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4114 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4117 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([1, 1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4120 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([1, 1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4123 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4126 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4129 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 2), value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4132 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -2), value("f64", -2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4135 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([1, 1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4138 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([1, 1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4141 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.15915494309189535), + value("f64", 0.15915494309189535), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4144 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.15915494309189535), + value("f64", -0.15915494309189535), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4147 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4150 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4153 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4156 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4159 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4162 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4165 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-1, -1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4168 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4171 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4174 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 44942328371557900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4177 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -2), value("f64", -2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4180 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 2), value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4183 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-1, -1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4186 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4189 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.15915494309189535), + value("f64", -0.15915494309189535), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4192 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.15915494309189535), + value("f64", 0.15915494309189535), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4195 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4198 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005562684646268003), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4201 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4204 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4207 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4210 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4213 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4216 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4219 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4222 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4225 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 12.566370614359172), + value("f64", 12.566370614359172), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4228 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -12.566370614359172), + value("f64", -12.566370614359172), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4231 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4234 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4237 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4240 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4243 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4246 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4249 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4252 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4255 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4258 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4261 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4264 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4267 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4270 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4273 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -12.566370614359172), + value("f64", -12.566370614359172), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4276 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 12.566370614359172), + value("f64", 12.566370614359172), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4279 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4282 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4285 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4288 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4291 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + value("f64", -0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4294 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349513784379046), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4297 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4300 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4303 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4306 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4309 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4312 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4315 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4318 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4321 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4324 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4327 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4330 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4333 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4336 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4339 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4342 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4345 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4348 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4351 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4354 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4357 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4360 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4363 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4366 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4369 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4372 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4375 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4378 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4381 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4384 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 28611174857570280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4387 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4390 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4393 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4396 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4399 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4402 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4405 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4408 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4411 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000002220446049250313), + value("f64", 0.0000000000000002220446049250313), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4414 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.0000000000000002220446049250313), + value("f64", -0.0000000000000002220446049250313), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4417 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4420 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4423 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4426 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4429 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4432 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4435 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4438 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4441 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4444 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4447 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4450 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4453 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4456 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4459 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000002220446049250313), + value("f64", 0.0000000000000002220446049250313), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4462 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.0000000000000002220446049250313), + value("f64", -0.0000000000000002220446049250313), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4465 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4468 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + value("f64", -0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4471 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4474 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4477 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4480 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4483 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4486 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4489 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4492 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4495 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4498 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4501 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4504 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4507 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4510 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4513 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4516 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4519 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4522 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4525 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4528 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4531 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4534 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4537 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4540 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4543 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4546 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4549 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4552 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4555 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4558 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4561 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4564 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4567 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4570 +assert_return( + () => invoke($0, `f64x2.div`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4573 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4576 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4579 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4582 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4585 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4588 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4591 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4594 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4597 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4600 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4603 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4606 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4609 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4612 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4615 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4618 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4621 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4624 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4627 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4630 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4633 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4636 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4639 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4642 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4645 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4648 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4651 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4654 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4657 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4660 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4663 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4666 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4669 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4672 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4675 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4678 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4681 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4684 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4687 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4690 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4693 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4696 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4699 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4702 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4705 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4708 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4711 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4714 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4717 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4720 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4723 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4726 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4729 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4732 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4735 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4738 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4741 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4744 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4747 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4750 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4753 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4756 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4759 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4762 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4765 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4768 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4771 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4774 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4777 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4780 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4783 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4786 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4789 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4792 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4795 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4798 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4801 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4804 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4807 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4810 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4813 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4816 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4819 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4822 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4825 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4828 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4831 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4834 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4837 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4840 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4843 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4846 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4849 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4852 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4855 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4858 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4861 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4864 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4867 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4870 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4873 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4876 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4879 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4882 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4885 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4888 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4891 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4894 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4897 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4900 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4903 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4906 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4909 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4912 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4915 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4918 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4921 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4924 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4927 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4930 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4933 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4936 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4939 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4942 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4945 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4948 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4951 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4954 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4957 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4960 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4963 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4966 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4969 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4972 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4975 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4978 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4981 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4984 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4987 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4990 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4993 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4996 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:4999 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5002 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5005 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5008 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5011 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5014 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5017 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5020 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5023 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5026 +assert_return( + () => invoke($0, `f64x2.div`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5029 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5032 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5035 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5038 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5041 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5044 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5047 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5050 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5053 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5056 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5059 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5062 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5065 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5068 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5071 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5074 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5077 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5080 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5083 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5086 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5089 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5092 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5095 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5098 +assert_return( + () => invoke($0, `f64x2.div`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5101 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5103 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5105 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014916681462400413), + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014916681462400413), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5107 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5109 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([0.5, 0.5])]), + [ + new F64x2Pattern( + value("f64", 0.7071067811865476), + value("f64", 0.7071067811865476), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5111 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([-0.5, -0.5])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5113 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5115 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([-1, -1])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5117 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([6.283185307179586, 6.283185307179586])]), + [ + new F64x2Pattern( + value("f64", 2.5066282746310002), + value("f64", 2.5066282746310002), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5119 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([-6.283185307179586, -6.283185307179586])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5121 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 13407807929942596000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 13407807929942596000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5123 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5125 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022227587494850775), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022227587494850775), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5127 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022227587494850775), + value("f64", 0.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022227587494850775), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5129 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5131 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5133 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5135 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5137 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5139 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5141 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([123456789, 123456789])]), + [ + new F64x2Pattern( + value("f64", 11111.111060555555), + value("f64", 11111.111060555555), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5143 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 35136418286444.62), + value("f64", 35136418286444.62), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5145 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 35136418286444.62), + value("f64", 35136418286444.62), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5147 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000035136418286444623), + value("f64", 0.0000035136418286444623), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5149 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([123456789, 123456789])]), + [ + new F64x2Pattern( + value("f64", 11111.111060555555), + value("f64", 11111.111060555555), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5151 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 35136418286444.62), + value("f64", 35136418286444.62), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5153 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 35136418286444.62), + value("f64", 35136418286444.62), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5155 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000035136418286444623), + value("f64", 0.0000035136418286444623), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5157 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([123456789.01234567, 123456789.01234567])]), + [ + new F64x2Pattern( + value("f64", 11111.11106111111), + value("f64", 11111.11106111111), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5159 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 35136418288201.445), + value("f64", 35136418288201.445), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5161 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 35136418288201.445), + value("f64", 35136418288201.445), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5163 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000003513641828820144), + value("f64", 0.000003513641828820144), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5165 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1172812402961.0667), + value("f64", 1172812402961.0667), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5167 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern(value("f64", 849206889670103), value("f64", 849206889670103)), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5169 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern(value("f64", 849206889670103), value("f64", 849206889670103)), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5171 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 1619733599.9872265), + value("f64", 1619733599.9872265), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5173 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1172812402961.0667), + value("f64", 1172812402961.0667), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5175 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern(value("f64", 849206889670103), value("f64", 849206889670103)), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5177 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern(value("f64", 849206889670103), value("f64", 849206889670103)), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5179 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 1619733599.9872265), + value("f64", 1619733599.9872265), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5181 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1172812402961.0667), + value("f64", 1172812402961.0667), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5183 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern(value("f64", 849206889670103), value("f64", 849206889670103)), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5185 +assert_return( + () => invoke($0, `f64x2.sqrt`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern(value("f64", 849206889670103), value("f64", 849206889670103)), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5187 +assert_return( + () => invoke($0, `f64x2.sqrt`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 1619733599.9872265), + value("f64", 1619733599.9872265), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5189 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5191 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5193 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5195 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5197 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5199 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5201 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5203 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5205 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([6.283185307179586, 6.283185307179586])]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5207 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([-6.283185307179586, -6.283185307179586])]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5209 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5211 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5213 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5215 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5217 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5219 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5221 +assert_return( + () => invoke($0, `f64x2.neg`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5223 +assert_return( + () => invoke($0, `f64x2.neg`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5225 +assert_return( + () => invoke($0, `f64x2.neg`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5227 +assert_return( + () => invoke($0, `f64x2.neg`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5229 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", -123456789), value("f64", -123456789))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5231 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890000000000000000000), + value("f64", -1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5233 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890000000000000000000), + value("f64", -1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5235 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([0.0000000000123456789, 0.0000000000123456789])]), + [ + new F64x2Pattern( + value("f64", -0.0000000000123456789), + value("f64", -0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5237 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", -123456789), value("f64", -123456789))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5239 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890000000000000000000), + value("f64", -1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5241 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890000000000000000000), + value("f64", -1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5243 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([0.0000000000123456789, 0.0000000000123456789])]), + [ + new F64x2Pattern( + value("f64", -0.0000000000123456789), + value("f64", -0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5245 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([123456789.01234567, 123456789.01234567])]), + [ + new F64x2Pattern( + value("f64", -123456789.01234567), + value("f64", -123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5247 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456900000000000), + value("f64", -1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5249 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1234567890123456900000000000), + value("f64", -1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5251 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000012345678901234568), + value("f64", -0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5253 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1375488932539311400000000), + value("f64", -1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5255 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -721152341463170500000000000000), + value("f64", -721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5257 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -721152341463170500000000000000), + value("f64", -721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5259 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", -2623536934927580700), + value("f64", -2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5261 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1375488932539311400000000), + value("f64", -1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5263 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -721152341463170500000000000000), + value("f64", -721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5265 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -721152341463170500000000000000), + value("f64", -721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5267 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", -2623536934927580700), + value("f64", -2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5269 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -1375488932539311400000000), + value("f64", -1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5271 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -721152341463170500000000000000), + value("f64", -721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5273 +assert_return( + () => invoke($0, `f64x2.neg`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -721152341463170500000000000000), + value("f64", -721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5275 +assert_return( + () => invoke($0, `f64x2.neg`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", -2623536934927580700), + value("f64", -2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5279 +let $1 = instantiate(`(module + (func (export "f64x2_add_arith") (result v128) + (f64x2.add (v128.const f64x2 nan:0x8000000000000 1.0) (v128.const f64x2 nan 1.0))) + (func (export "f64x2_div_mixed") (result v128) + (f64x2.div (v128.const f64x2 nan 1.0) (v128.const f64x2 2.0 -nan:0x8000000000000))) + (func (export "f64x2_mul_mixed") (result v128) + (f64x2.mul (v128.const f64x2 nan:0x8000000000000 1.0) (v128.const f64x2 2.0 nan))) + (func (export "f64x2_neg_canon") (result v128) + (f64x2.neg (v128.const f64x2 nan 1.0))) + (func (export "f64x2_sqrt_canon") (result v128) + (f64x2.sqrt (v128.const f64x2 4.0 -nan))) + (func (export "f64x2_sub_arith") (result v128) + (f64x2.sub (v128.const f64x2 1.0 -1.0) (v128.const f64x2 -nan 1.0))) +)`); + +// ./test/core/simd/simd_f64x2_arith.wast:5294 +assert_return( + () => invoke($1, `f64x2_add_arith`, []), + [new F64x2Pattern(`arithmetic_nan`, value("f64", 2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5295 +assert_return( + () => invoke($1, `f64x2_div_mixed`, []), + [new F64x2Pattern(`canonical_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5296 +assert_return( + () => invoke($1, `f64x2_mul_mixed`, []), + [new F64x2Pattern(`arithmetic_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5297 +assert_return( + () => invoke($1, `f64x2_neg_canon`, []), + [new F64x2Pattern(`canonical_nan`, value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5298 +assert_return( + () => invoke($1, `f64x2_sqrt_canon`, []), + [new F64x2Pattern(value("f64", 2), `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5299 +assert_return( + () => invoke($1, `f64x2_sub_arith`, []), + [new F64x2Pattern(`canonical_nan`, value("f64", -2))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5302 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.neg (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5303 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.sqrt (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5304 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.add (i64.const 0) (f64.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5305 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.sub (i64.const 0) (f64.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5306 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.mul (i64.const 0) (f64.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5307 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.div (i64.const 0) (f64.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5311 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.neg-arg-empty (result v128) + (f64x2.neg) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5319 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.sqrt-arg-empty (result v128) + (f64x2.sqrt) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5327 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.add-1st-arg-empty (result v128) + (f64x2.add (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5335 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.add-arg-empty (result v128) + (f64x2.add) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5343 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.sub-1st-arg-empty (result v128) + (f64x2.sub (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5351 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.sub-arg-empty (result v128) + (f64x2.sub) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5359 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.mul-1st-arg-empty (result v128) + (f64x2.mul (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5367 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.mul-arg-empty (result v128) + (f64x2.mul) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5375 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.div-1st-arg-empty (result v128) + (f64x2.div (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5383 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.div-arg-empty (result v128) + (f64x2.div) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_arith.wast:5393 +let $2 = instantiate(`(module + (func (export "add-sub") (param v128 v128 v128) (result v128) + (f64x2.add (f64x2.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "div-add") (param v128 v128 v128) (result v128) + (f64x2.div (f64x2.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "div-mul") (param v128 v128 v128) (result v128) + (f64x2.div (f64x2.mul (local.get 0) (local.get 1))(local.get 2))) + (func (export "div-sub") (param v128 v128 v128) (result v128) + (f64x2.div (f64x2.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-add") (param v128 v128 v128) (result v128) + (f64x2.mul (f64x2.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-div") (param v128 v128 v128) (result v128) + (f64x2.mul (f64x2.div (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-sub") (param v128 v128 v128) (result v128) + (f64x2.mul (f64x2.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "sub-add") (param v128 v128 v128) (result v128) + (f64x2.sub (f64x2.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "add-neg") (param v128 v128) (result v128) + (f64x2.add (f64x2.neg (local.get 0)) (local.get 1))) + (func (export "add-sqrt") (param v128 v128) (result v128) + (f64x2.add (f64x2.sqrt (local.get 0)) (local.get 1))) + (func (export "div-neg") (param v128 v128) (result v128) + (f64x2.div (f64x2.neg (local.get 0)) (local.get 1))) + (func (export "div-sqrt") (param v128 v128) (result v128) + (f64x2.div (f64x2.sqrt (local.get 0)) (local.get 1))) + (func (export "mul-neg") (param v128 v128) (result v128) + (f64x2.mul (f64x2.neg (local.get 0)) (local.get 1))) + (func (export "mul-sqrt") (param v128 v128) (result v128) + (f64x2.mul (f64x2.sqrt (local.get 0)) (local.get 1))) + (func (export "sub-neg") (param v128 v128) (result v128) + (f64x2.sub (f64x2.neg (local.get 0)) (local.get 1))) + (func (export "sub-sqrt") (param v128 v128) (result v128) + (f64x2.sub (f64x2.sqrt (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_f64x2_arith.wast:5428 +assert_return( + () => invoke($2, `add-sub`, [ + f64x2([1.125, 1.125]), + f64x2([0.25, 0.25]), + f64x2([0.125, 0.125]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5432 +assert_return( + () => invoke($2, `div-add`, [ + f64x2([1.125, 1.125]), + f64x2([0.125, 0.125]), + f64x2([0.25, 0.25]), + ]), + [new F64x2Pattern(value("f64", 5), value("f64", 5))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5436 +assert_return( + () => invoke($2, `div-mul`, [ + f64x2([1.125, 1.125]), + f64x2([4, 4]), + f64x2([0.25, 0.25]), + ]), + [new F64x2Pattern(value("f64", 18), value("f64", 18))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5440 +assert_return( + () => invoke($2, `div-sub`, [ + f64x2([1.125, 1.125]), + f64x2([0.125, 0.125]), + f64x2([0.25, 0.25]), + ]), + [new F64x2Pattern(value("f64", 4), value("f64", 4))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5444 +assert_return( + () => invoke($2, `mul-add`, [ + f64x2([1.25, 1.25]), + f64x2([0.25, 0.25]), + f64x2([0.25, 0.25]), + ]), + [new F64x2Pattern(value("f64", 0.375), value("f64", 0.375))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5448 +assert_return( + () => invoke($2, `mul-div`, [ + f64x2([1.125, 1.125]), + f64x2([0.125, 0.125]), + f64x2([0.25, 0.25]), + ]), + [new F64x2Pattern(value("f64", 2.25), value("f64", 2.25))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5452 +assert_return( + () => invoke($2, `mul-sub`, [ + f64x2([1.125, 1.125]), + f64x2([0.125, 0.125]), + f64x2([0.25, 0.25]), + ]), + [new F64x2Pattern(value("f64", 0.25), value("f64", 0.25))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5456 +assert_return( + () => invoke($2, `sub-add`, [ + f64x2([1.125, 1.125]), + f64x2([0.25, 0.25]), + f64x2([0.125, 0.125]), + ]), + [new F64x2Pattern(value("f64", 1.25), value("f64", 1.25))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5460 +assert_return( + () => invoke($2, `add-neg`, [f64x2([1.125, 1.125]), f64x2([0.125, 0.125])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5463 +assert_return( + () => invoke($2, `add-sqrt`, [f64x2([2.25, 2.25]), f64x2([0.25, 0.25])]), + [new F64x2Pattern(value("f64", 1.75), value("f64", 1.75))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5466 +assert_return( + () => invoke($2, `div-neg`, [f64x2([1.5, 1.5]), f64x2([0.25, 0.25])]), + [new F64x2Pattern(value("f64", -6), value("f64", -6))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5469 +assert_return( + () => invoke($2, `div-sqrt`, [f64x2([2.25, 2.25]), f64x2([0.25, 0.25])]), + [new F64x2Pattern(value("f64", 6), value("f64", 6))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5472 +assert_return( + () => invoke($2, `mul-neg`, [f64x2([1.5, 1.5]), f64x2([0.25, 0.25])]), + [new F64x2Pattern(value("f64", -0.375), value("f64", -0.375))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5475 +assert_return( + () => invoke($2, `mul-sqrt`, [f64x2([2.25, 2.25]), f64x2([0.25, 0.25])]), + [new F64x2Pattern(value("f64", 0.375), value("f64", 0.375))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5478 +assert_return( + () => invoke($2, `sub-neg`, [f64x2([1.125, 1.125]), f64x2([0.125, 0.125])]), + [new F64x2Pattern(value("f64", -1.25), value("f64", -1.25))], +); + +// ./test/core/simd/simd_f64x2_arith.wast:5481 +assert_return( + () => invoke($2, `sub-sqrt`, [f64x2([2.25, 2.25]), f64x2([0.25, 0.25])]), + [new F64x2Pattern(value("f64", 1.25), value("f64", 1.25))], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_cmp.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_cmp.wast.js new file mode 100644 index 0000000000..81d377b40d --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_cmp.wast.js @@ -0,0 +1,43747 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f64x2_cmp.wast + +// ./test/core/simd/simd_f64x2_cmp.wast:4 +let $0 = instantiate(`(module + (func (export "f64x2.eq") (param v128 v128) (result v128) (f64x2.eq (local.get 0) (local.get 1))) + (func (export "f64x2.ne") (param v128 v128) (result v128) (f64x2.ne (local.get 0) (local.get 1))) + (func (export "f64x2.lt") (param v128 v128) (result v128) (f64x2.lt (local.get 0) (local.get 1))) + (func (export "f64x2.le") (param v128 v128) (result v128) (f64x2.le (local.get 0) (local.get 1))) + (func (export "f64x2.gt") (param v128 v128) (result v128) (f64x2.gt (local.get 0) (local.get 1))) + (func (export "f64x2.ge") (param v128 v128) (result v128) (f64x2.ge (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_f64x2_cmp.wast:13 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:16 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:19 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:22 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:25 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:28 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:31 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:34 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:37 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:40 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:43 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:46 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:49 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:52 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:55 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:58 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:61 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:64 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:67 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:70 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:73 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:76 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:79 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:82 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:85 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:88 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:91 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:94 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:97 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:100 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:103 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:106 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:109 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:112 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:115 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:118 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:121 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:124 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:127 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:130 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:133 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:136 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:139 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:142 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:145 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:148 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:151 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:154 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:157 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:160 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:163 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:166 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:169 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:172 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:175 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:178 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:181 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:184 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:187 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:190 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:193 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:196 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:199 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:202 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:205 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:208 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:211 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:214 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:217 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:220 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:223 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:226 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:229 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:232 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:235 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:238 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:241 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:244 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:247 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:250 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:253 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:256 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:259 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:262 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:265 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:268 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:271 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:274 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:277 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:280 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:283 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:286 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:289 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:292 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:295 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:298 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:301 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:304 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:307 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:310 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:313 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:316 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:319 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:322 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-0, -0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:325 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:328 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:331 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:334 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:337 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:340 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:343 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:346 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:349 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0, -0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:352 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:355 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-0, -0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:358 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:361 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:364 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:367 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:370 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:373 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:376 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:379 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:382 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:385 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:388 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:391 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:394 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:397 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:400 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:403 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:406 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:409 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:412 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:415 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:418 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:421 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:424 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:427 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:430 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:433 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:436 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:439 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:442 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:445 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:448 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:451 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:454 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:457 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:460 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:463 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:466 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:469 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:472 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:475 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:478 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:481 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:484 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:487 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:490 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:493 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:496 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:499 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:502 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:505 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:508 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:511 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:514 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:517 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:520 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:523 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:526 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:529 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:532 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:535 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:538 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:541 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:544 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:547 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:550 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:553 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:556 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:559 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:562 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:565 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:568 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:571 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:574 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:577 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:580 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:583 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:586 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:589 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:592 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:595 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:598 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:601 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:604 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:607 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:610 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:613 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:616 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:619 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:622 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:625 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:628 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:631 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:634 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:637 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:640 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:643 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:646 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:649 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:652 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:655 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:658 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:661 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:664 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:667 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:670 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:673 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:676 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:679 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:682 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:685 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:688 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:691 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:694 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:697 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:700 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:703 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:706 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:709 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:712 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:715 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:718 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:721 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:724 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:727 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:730 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:733 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:736 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:739 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:742 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:745 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:748 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:751 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:754 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:757 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:760 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:763 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:766 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:769 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:772 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:775 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:778 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:781 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:784 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:787 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:790 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:793 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:796 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:799 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:802 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:805 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:808 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:811 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:814 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:817 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:820 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:823 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:826 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:829 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:832 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:835 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:838 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:841 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:844 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:847 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:850 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:853 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:856 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:859 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:862 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:865 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:868 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:871 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:874 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:877 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:880 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:883 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:886 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:889 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:892 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:895 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:898 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:901 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:904 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:907 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:910 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:913 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:916 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:919 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:922 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:925 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:928 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:931 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:934 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:937 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:940 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:943 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:946 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:949 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:952 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:955 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:958 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:961 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:964 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:967 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:970 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:973 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:976 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:979 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:982 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:985 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:988 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:991 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:994 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:997 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1000 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1003 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1006 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1009 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1012 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1015 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1018 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1021 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1024 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1027 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1030 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1033 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1036 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1039 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1042 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1045 +assert_return( + () => invoke($0, `f64x2.eq`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1048 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1051 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1054 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1057 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1060 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1063 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1066 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1069 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1072 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1075 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1078 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1081 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1084 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1087 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1090 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1093 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1096 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1099 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1102 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1105 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1108 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1111 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1114 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1117 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1120 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1123 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1126 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1129 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1132 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1135 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1138 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1141 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1144 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1147 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1150 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1153 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1156 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1159 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1162 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1165 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1168 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1171 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1174 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1177 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1180 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1183 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1186 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1189 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1192 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1195 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1198 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1201 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1204 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1207 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1210 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1213 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1216 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1219 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1222 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1225 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1228 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1231 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1234 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1237 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1240 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1243 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1246 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1249 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1252 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1255 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1258 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1261 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1264 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1267 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1270 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1273 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1276 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1279 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1282 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1285 +assert_return( + () => invoke($0, `f64x2.eq`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1288 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1291 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1294 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1297 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1300 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1303 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1306 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1309 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1312 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1315 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1318 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1321 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1324 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1327 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1330 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1333 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1336 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1339 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1342 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1345 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1348 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1351 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1354 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1357 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1360 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1363 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1366 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1369 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1372 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1375 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1378 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1381 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1384 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1387 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1390 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1393 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1396 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1399 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1402 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1405 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1408 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1411 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1414 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1417 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1420 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1423 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1426 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1429 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1432 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1435 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1438 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1441 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1444 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1447 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1450 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1453 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1456 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1459 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1462 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1465 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1468 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1471 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1474 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1477 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:1480 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1483 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1486 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1489 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1492 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1495 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1498 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1501 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1504 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1507 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1510 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1513 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1516 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1519 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1522 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1525 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1528 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1531 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1534 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1537 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1540 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1543 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1546 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1549 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1552 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1555 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1558 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1561 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1564 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1567 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1570 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1573 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1576 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1579 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1582 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1585 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1588 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1591 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1594 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1597 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0, -0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1600 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1603 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([-0, -0]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:1606 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1609 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1612 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1615 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1618 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1621 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1624 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([-0, -0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:1627 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1630 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1633 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1636 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1639 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1642 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1645 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1648 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1651 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1654 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1657 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1660 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1663 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1666 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1669 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1672 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1675 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1678 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1681 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1684 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1687 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1690 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1693 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1696 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1699 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1702 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1705 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1708 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1711 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1714 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1717 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1720 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1723 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1726 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1729 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1732 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1735 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1738 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1741 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1744 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1747 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1750 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1753 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1756 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1759 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1762 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1765 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1768 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1771 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1774 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1777 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1780 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1783 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1786 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1789 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1792 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1795 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1798 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1801 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1804 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1807 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1810 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1813 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1816 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1819 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1822 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1825 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1828 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1831 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1834 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1837 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1840 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1843 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1846 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1849 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1852 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1855 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1858 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1861 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1864 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1867 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1870 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1873 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1876 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1879 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1882 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1885 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1888 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1891 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1894 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1897 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1900 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1903 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1906 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1909 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1912 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1915 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1918 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1921 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1924 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1927 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1930 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1933 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1936 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1939 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1942 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1945 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1948 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1951 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1954 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1957 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1960 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1963 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1966 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1969 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1972 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1975 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1978 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1981 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1984 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1987 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1990 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1993 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1996 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:1999 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2002 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2005 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2008 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2011 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2014 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2017 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2020 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2023 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2026 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2029 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2032 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2035 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2038 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2041 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2044 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2047 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2050 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2053 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2056 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2059 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2062 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2065 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2068 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2071 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2074 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2077 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2080 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2083 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2086 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2089 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2092 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2095 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2098 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2101 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2104 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2107 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2110 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2113 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2116 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2119 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2122 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2125 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2128 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2131 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2134 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2137 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2140 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2143 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2146 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2149 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2152 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2155 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2158 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2161 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2164 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2167 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2170 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2173 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2176 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2179 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2182 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2185 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2188 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2191 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2194 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2197 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2200 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2203 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2206 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2209 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2212 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2215 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2218 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2221 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2224 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2227 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2230 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2233 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2236 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2239 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2242 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2245 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2248 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2251 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2254 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2257 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2260 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2263 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2266 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2269 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2272 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2275 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2278 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2281 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2284 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2287 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2290 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2293 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2296 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2299 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2302 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2305 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2308 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2311 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2314 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2317 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2320 +assert_return( + () => invoke($0, `f64x2.ne`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2323 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2326 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2329 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2332 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2335 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2338 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2341 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2344 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2347 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2350 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2353 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2356 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2359 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2362 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2365 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2368 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2371 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2374 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2377 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2380 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2383 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2386 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2389 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2392 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2395 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2398 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2401 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2404 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2407 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2410 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2413 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2416 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2419 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2422 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2425 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2428 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2431 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2434 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2437 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2440 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2443 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2446 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2449 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2452 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2455 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2458 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2461 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2464 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2467 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2470 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2473 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2476 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2479 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2482 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2485 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2488 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2491 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2494 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2497 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2500 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2503 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2506 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2509 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2512 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2515 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2518 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2521 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2524 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2527 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2530 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2533 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2536 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2539 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2542 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2545 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2548 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2551 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2554 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2557 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2560 +assert_return( + () => invoke($0, `f64x2.ne`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2563 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2566 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2569 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2572 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2575 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2578 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2581 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2584 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2587 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2590 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2593 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2596 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2599 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2602 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2605 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2608 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2611 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2614 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2617 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2620 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2623 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2626 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2629 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2632 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2635 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2638 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2641 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2644 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2647 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2650 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2653 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2656 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2659 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2662 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2665 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2668 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2671 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2674 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2677 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2680 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2683 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2686 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2689 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2692 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2695 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2698 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2701 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2704 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2707 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2710 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2713 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2716 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2719 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2722 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2725 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2728 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2731 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2734 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2737 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2740 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2743 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2746 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2749 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2752 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2755 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2758 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2761 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2764 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2767 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2770 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2773 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2776 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2779 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2782 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2785 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2788 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2791 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2794 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2797 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2800 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2803 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2806 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2809 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2812 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2815 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2818 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2821 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2824 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2827 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2830 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2833 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2836 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2839 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2842 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2845 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2848 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2851 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2854 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2857 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2860 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2863 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2866 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2869 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2872 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0, -0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2875 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2878 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([-0, -0]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2881 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2884 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2887 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2890 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2893 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2896 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2899 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([-0, -0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2902 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2905 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([-0, -0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:2908 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2911 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2914 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2917 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2920 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2923 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2926 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2929 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2932 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2935 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2938 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2941 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2944 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2947 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2950 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2953 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2956 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2959 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2962 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2965 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2968 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2971 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2974 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2977 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2980 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2983 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2986 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2989 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2992 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2995 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:2998 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3001 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3004 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3007 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3010 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3013 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3016 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3019 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3022 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3025 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3028 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3031 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3034 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3037 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3040 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3043 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3046 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3049 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3052 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3055 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3058 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3061 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3064 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3067 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3070 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3073 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3076 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3079 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3082 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3085 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3088 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3091 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3094 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3097 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3100 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3103 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3106 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3109 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3112 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3115 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3118 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3121 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3124 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3127 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3130 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3133 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3136 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3139 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3142 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3145 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3148 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3151 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3154 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3157 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3160 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3163 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3166 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3169 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3172 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3175 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3178 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:3181 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3184 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3187 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3190 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3193 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3196 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3199 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:3202 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3205 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:3208 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3211 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3214 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3217 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3220 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3223 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3226 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3229 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3232 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3235 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3238 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3241 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3244 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3247 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3250 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3253 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3256 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3259 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3262 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3265 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3268 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3271 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3274 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3277 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3280 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3283 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3286 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3289 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3292 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3295 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3298 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:3301 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:3304 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3307 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3310 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3313 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3316 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3319 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:3322 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3325 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:3328 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3331 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3334 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3337 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3340 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3343 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3346 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3349 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3352 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3355 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3358 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3361 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3364 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3367 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3370 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3373 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3376 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3379 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3382 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3385 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3388 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3391 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3394 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3397 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3400 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3403 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3406 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3409 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3412 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3415 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3418 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3421 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3424 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3427 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3430 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3433 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3436 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3439 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3442 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3445 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:3448 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3451 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3454 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3457 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3460 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3463 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3466 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3469 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3472 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3475 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3478 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3481 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3484 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3487 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3490 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3493 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3496 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3499 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3502 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3505 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3508 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3511 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3514 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3517 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3520 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3523 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3526 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3529 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3532 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3535 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3538 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3541 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3544 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3547 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3550 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3553 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3556 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3559 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3562 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3565 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3568 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3571 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3574 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3577 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3580 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3583 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3586 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3589 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3592 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3595 +assert_return( + () => invoke($0, `f64x2.lt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3598 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3601 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3604 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3607 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3610 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3613 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3616 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3619 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3622 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3625 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3628 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3631 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3634 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3637 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3640 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3643 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3646 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3649 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3652 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3655 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3658 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3661 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3664 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3667 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3670 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3673 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3676 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3679 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3682 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3685 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3688 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3691 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3694 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3697 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3700 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3703 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3706 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3709 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3712 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3715 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3718 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3721 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3724 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3727 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3730 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3733 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3736 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3739 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3742 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3745 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3748 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3751 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3754 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3757 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3760 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3763 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3766 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3769 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3772 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3775 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3778 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3781 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3784 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3787 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3790 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3793 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3796 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3799 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3802 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3805 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3808 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3811 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3814 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3817 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3820 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3823 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3826 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3829 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3832 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3835 +assert_return( + () => invoke($0, `f64x2.lt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3838 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3841 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3844 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3847 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3850 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3853 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3856 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3859 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3862 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3865 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3868 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3871 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3874 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3877 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3880 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3883 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3886 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3889 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3892 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3895 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3898 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3901 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3904 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3907 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3910 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3913 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3916 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3919 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3922 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3925 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3928 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3931 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3934 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3937 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3940 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3943 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3946 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3949 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3952 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3955 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3958 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3961 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3964 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3967 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3970 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3973 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3976 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3979 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3982 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3985 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3988 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3991 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3994 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:3997 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4000 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4003 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4006 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4009 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4012 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4015 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4018 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4021 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4024 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4027 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4030 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4033 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4036 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4039 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4042 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4045 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4048 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4051 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4054 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4057 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4060 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4063 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4066 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4069 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4072 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4075 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4078 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4081 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4084 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4087 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4090 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4093 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4096 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4099 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4102 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4105 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4108 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4111 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4114 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4117 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4120 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4123 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4126 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4129 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4132 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4135 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4138 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4141 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4144 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4147 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0, -0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4150 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4153 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4156 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4159 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4162 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4165 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4168 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4171 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4174 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0, -0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4177 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4180 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([-0, -0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4183 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4186 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4189 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4192 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4195 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4198 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4201 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4204 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4207 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4210 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4213 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4216 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4219 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4222 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4225 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4228 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4231 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4234 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4237 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4240 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4243 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4246 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4249 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4252 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4255 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4258 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4261 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4264 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4267 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4270 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4273 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4276 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4279 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4282 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4285 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4288 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4291 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4294 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4297 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4300 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4303 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4306 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4309 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4312 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4315 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4318 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4321 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4324 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4327 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4330 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4333 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4336 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4339 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4342 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4345 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4348 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4351 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4354 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4357 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4360 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4363 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4366 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4369 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4372 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4375 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4378 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4381 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4384 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4387 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4390 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4393 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4396 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4399 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4402 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4405 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4408 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4411 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4414 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4417 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4420 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4423 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4426 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4429 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4432 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4435 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4438 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4441 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4444 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4447 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4450 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4453 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4456 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4459 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4462 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4465 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4468 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4471 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4474 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4477 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4480 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4483 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4486 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4489 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4492 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4495 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4498 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4501 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4504 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4507 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4510 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4513 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4516 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4519 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4522 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4525 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4528 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4531 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4534 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4537 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4540 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4543 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4546 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4549 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4552 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4555 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4558 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4561 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4564 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4567 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4570 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4573 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4576 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4579 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4582 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4585 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4588 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4591 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4594 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4597 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4600 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:4603 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4606 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4609 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4612 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4615 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4618 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4621 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4624 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4627 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4630 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4633 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4636 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4639 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4642 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4645 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4648 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4651 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4654 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4657 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4660 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4663 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4666 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4669 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4672 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4675 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4678 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4681 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4684 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4687 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4690 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4693 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4696 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4699 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4702 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4705 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4708 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4711 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4714 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4717 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4720 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4723 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4726 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4729 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4732 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4735 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4738 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4741 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4744 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4747 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4750 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4753 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4756 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4759 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4762 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4765 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4768 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4771 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4774 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4777 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4780 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4783 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4786 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4789 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4792 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4795 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4798 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4801 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4804 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4807 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4810 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4813 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4816 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4819 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4822 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4825 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4828 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4831 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4834 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4837 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4840 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4843 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4846 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4849 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4852 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4855 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4858 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4861 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4864 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4867 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4870 +assert_return( + () => invoke($0, `f64x2.le`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4873 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4876 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4879 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4882 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4885 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4888 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4891 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4894 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4897 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4900 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4903 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4906 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4909 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4912 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4915 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4918 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4921 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4924 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4927 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4930 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4933 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4936 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4939 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4942 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4945 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4948 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4951 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4954 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4957 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4960 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4963 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4966 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4969 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4972 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4975 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4978 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4981 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4984 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4987 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4990 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4993 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4996 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:4999 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5002 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5005 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5008 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5011 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5014 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5017 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5020 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5023 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5026 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5029 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5032 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5035 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5038 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5041 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5044 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5047 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5050 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5053 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5056 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5059 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5062 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5065 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5068 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5071 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5074 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5077 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5080 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5083 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5086 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5089 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5092 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5095 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5098 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5101 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5104 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5107 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5110 +assert_return( + () => invoke($0, `f64x2.le`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5113 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5116 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5119 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5122 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5125 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5128 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5131 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5134 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5137 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5140 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5143 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5146 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5149 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5152 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5155 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5158 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5161 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5164 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5167 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5170 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5173 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5176 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5179 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5182 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5185 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5188 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5191 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5194 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5197 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5200 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5203 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5206 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5209 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5212 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5215 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5218 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5221 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5224 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5227 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5230 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5233 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5236 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5239 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5242 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5245 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5248 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5251 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5254 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5257 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5260 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5263 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5266 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5269 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5272 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5275 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5278 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5281 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5284 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5287 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5290 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5293 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5296 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5299 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5302 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5305 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5308 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5311 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5314 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5317 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5320 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5323 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5326 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5329 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5332 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5335 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5338 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5341 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5344 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5347 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5350 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5353 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5356 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5359 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5362 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5365 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5368 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5371 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5374 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5377 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5380 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5383 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5386 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5389 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5392 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5395 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5398 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5401 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5404 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5407 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5410 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5413 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5416 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5419 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5422 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-0, -0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5425 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5428 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-0, -0]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5431 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5434 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5437 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5440 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5443 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5446 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5449 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-0, -0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5452 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5455 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5458 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5461 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5464 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5467 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5470 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5473 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5476 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5479 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5482 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5485 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5488 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5491 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5494 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5497 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5500 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5503 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5506 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5509 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5512 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5515 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5518 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5521 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5524 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5527 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5530 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5533 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5536 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5539 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5542 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5545 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5548 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5551 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5554 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5557 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5560 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5563 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5566 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5569 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5572 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5575 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5578 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5581 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5584 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5587 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5590 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5593 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5596 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5599 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5602 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5605 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5608 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5611 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5614 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5617 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5620 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5623 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5626 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5629 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5632 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5635 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5638 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5641 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5644 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5647 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5650 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5653 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5656 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5659 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5662 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5665 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5668 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5671 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5674 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5677 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5680 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5683 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5686 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5689 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5692 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5695 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5698 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5701 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5704 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5707 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5710 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5713 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5716 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5719 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5722 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5725 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5728 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5731 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5734 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5737 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5740 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5743 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5746 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5749 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5752 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5755 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5758 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5761 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5764 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5767 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5770 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5773 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5776 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5779 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5782 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5785 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5788 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5791 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5794 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5797 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5800 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5803 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5806 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5809 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5812 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5815 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5818 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5821 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5824 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5827 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5830 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5833 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5836 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5839 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5842 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5845 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5848 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5851 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5854 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5857 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5860 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5863 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5866 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5869 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5872 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5875 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5878 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5881 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5884 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5887 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5890 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5893 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5896 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5899 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5902 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5905 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5908 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5911 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5914 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5917 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5920 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5923 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5926 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5929 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5932 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5935 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5938 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5941 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5944 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5947 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5950 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5953 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5956 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5959 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5962 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5965 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5968 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5971 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5974 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5977 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5980 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5983 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5986 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5989 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5992 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:5995 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:5998 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6001 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6004 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6007 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6010 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6013 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6016 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6019 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6022 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6025 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6028 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6031 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6034 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6037 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6040 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6043 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6046 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6049 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6052 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6055 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6058 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6061 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6064 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6067 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6070 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6073 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6076 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6079 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6082 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6085 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6088 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6091 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6094 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6097 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6100 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6103 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6106 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6109 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6112 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6115 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6118 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6121 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6124 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6127 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6130 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6133 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6136 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6139 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6142 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6145 +assert_return( + () => invoke($0, `f64x2.gt`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6148 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6151 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6154 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6157 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6160 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6163 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6166 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6169 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6172 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6175 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6178 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6181 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6184 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6187 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6190 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6193 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6196 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6199 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6202 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6205 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6208 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6211 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6214 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6217 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6220 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6223 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6226 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6229 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6232 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6235 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6238 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6241 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6244 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6247 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6250 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6253 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6256 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6259 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6262 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6265 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6268 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6271 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6274 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6277 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6280 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6283 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6286 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6289 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6292 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6295 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6298 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6301 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6304 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6307 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6310 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6313 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6316 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6319 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6322 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6325 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6328 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6331 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6334 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6337 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6340 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6343 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6346 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6349 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6352 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6355 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6358 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6361 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6364 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6367 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6370 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6373 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6376 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6379 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6382 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6385 +assert_return( + () => invoke($0, `f64x2.gt`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6388 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6391 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6394 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6397 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6400 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6403 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6406 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6409 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6412 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6415 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6418 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6421 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6424 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6427 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6430 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6433 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6436 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6439 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6442 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6445 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6448 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6451 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6454 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6457 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6460 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6463 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6466 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6469 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6472 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6475 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6478 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6481 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6484 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6487 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6490 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6493 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6496 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6499 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6502 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6505 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6508 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6511 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6514 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6517 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6520 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6523 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6526 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6529 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6532 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6535 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6538 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6541 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6544 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6547 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6550 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6553 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6556 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6559 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6562 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6565 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6568 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6571 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6574 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6577 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6580 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6583 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6586 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6589 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6592 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6595 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6598 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6601 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6604 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6607 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6610 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6613 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6616 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6619 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6622 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6625 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6628 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6631 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6634 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6637 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6640 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6643 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6646 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6649 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6652 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6655 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6658 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6661 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6664 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6667 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6670 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6673 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6676 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6679 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6682 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6685 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6688 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6691 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6694 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6697 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-0, -0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:6700 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6703 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6706 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6709 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6712 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6715 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6718 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:6721 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6724 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0, -0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6727 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6730 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6733 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6736 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6739 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6742 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6745 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6748 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6751 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6754 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6757 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:6760 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6763 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6766 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6769 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6772 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6775 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6778 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6781 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6784 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:6787 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6790 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6793 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6796 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6799 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6802 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6805 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6808 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6811 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6814 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6817 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6820 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6823 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6826 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6829 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6832 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6835 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6838 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6841 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6844 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6847 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6850 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6853 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6856 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6859 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6862 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6865 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6868 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6871 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6874 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6877 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6880 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6883 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6886 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6889 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6892 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6895 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6898 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6901 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6904 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6907 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6910 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6913 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6916 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6919 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6922 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6925 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6928 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6931 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6934 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6937 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6940 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6943 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6946 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6949 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6952 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6955 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6958 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6961 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6964 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6967 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6970 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6973 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6976 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6979 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6982 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6985 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6988 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6991 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6994 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:6997 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7000 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7003 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7006 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7009 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7012 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7015 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7018 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7021 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7024 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7027 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7030 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7033 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7036 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7039 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7042 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7045 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7048 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7051 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7054 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7057 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7060 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7063 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7066 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7069 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7072 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7075 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7078 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7081 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7084 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7087 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7090 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7093 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7096 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7099 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7102 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7105 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7108 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7111 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7114 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7117 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7120 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7123 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7126 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7129 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7132 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7135 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7138 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7141 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7144 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7147 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7150 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7153 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7156 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7159 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7162 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7165 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7168 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7171 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7174 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7177 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7180 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7183 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7186 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7189 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7192 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7195 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7198 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7201 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7204 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7207 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7210 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7213 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7216 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7219 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7222 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7225 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7228 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7231 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7234 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7237 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7240 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7243 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([-0, -0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7246 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7249 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7252 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7255 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7258 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7261 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7264 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7267 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7270 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7273 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7276 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7279 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7282 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7285 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7288 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7291 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7294 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7297 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7300 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7303 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7306 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7309 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7312 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7315 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7318 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7321 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7324 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7327 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7330 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7333 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7336 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7339 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7342 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7345 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7348 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7351 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7354 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7357 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7360 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7363 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7366 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7369 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7372 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7375 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7378 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7381 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7384 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7387 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7390 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7393 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7396 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7399 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7402 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7405 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7408 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 123456789012345690000000000000000000000000000000000000000, + 123456789012345690000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7411 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([0.000000000000000000012345678901234569, 0.000000000000000000012345678901234569]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7414 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7417 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([ + 12345678900000000000000000000000000000000000000, + 12345678900000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7420 +assert_return( + () => invoke($0, `f64x2.ge`, [ + f64x2([1234567890123456800, 1234567890123456800]), + f64x2([1234567890123456800, 1234567890123456800]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7423 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7426 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7429 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7432 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7435 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7438 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7441 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7444 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7447 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7450 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7453 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7456 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7459 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7462 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7465 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7468 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7471 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7474 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7477 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7480 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7483 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7486 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7489 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7492 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7495 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7498 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7501 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7504 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7507 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7510 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7513 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7516 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7519 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7522 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7525 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7528 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7531 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7534 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7537 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7540 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7543 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7546 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7549 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7552 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7555 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7558 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7561 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7564 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7567 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7570 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7573 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7576 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7579 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7582 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7585 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7588 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7591 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7594 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7597 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7600 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7603 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7606 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7609 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7612 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7615 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7618 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7621 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7624 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7627 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7630 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7633 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7636 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7639 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7642 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7645 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7648 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7651 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7654 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7657 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7660 +assert_return( + () => invoke($0, `f64x2.ge`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7663 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7666 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7669 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7672 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([-1, -1]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7675 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7678 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7681 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7684 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([0, 0]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7687 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7690 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7693 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7696 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([1, 1]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7699 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([2, 2]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7702 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([2, 2]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7705 +assert_return(() => invoke($0, `f64x2.eq`, [f64x2([2, 2]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7708 +assert_return( + () => invoke($0, `f64x2.eq`, [f64x2([2, 2]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7711 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7714 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7717 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7720 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([-1, -1]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7723 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7726 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7729 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7732 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([0, 0]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7735 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7738 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7741 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7744 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([1, 1]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7747 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([2, 2]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7750 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([2, 2]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7753 +assert_return( + () => invoke($0, `f64x2.ne`, [f64x2([2, 2]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7756 +assert_return(() => invoke($0, `f64x2.ne`, [f64x2([2, 2]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7759 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7762 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7765 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7768 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([-1, -1]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7771 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7774 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7777 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7780 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([0, 0]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7783 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7786 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7789 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7792 +assert_return( + () => invoke($0, `f64x2.lt`, [f64x2([1, 1]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7795 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([2, 2]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7798 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([2, 2]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7801 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([2, 2]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7804 +assert_return(() => invoke($0, `f64x2.lt`, [f64x2([2, 2]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7807 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7810 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7813 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7816 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([-1, -1]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7819 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7822 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7825 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7828 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([0, 0]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7831 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7834 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7837 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7840 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([1, 1]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7843 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([2, 2]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7846 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([2, 2]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7849 +assert_return(() => invoke($0, `f64x2.le`, [f64x2([2, 2]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7852 +assert_return( + () => invoke($0, `f64x2.le`, [f64x2([2, 2]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7855 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([-1, -1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7858 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7861 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7864 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([-1, -1]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7867 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7870 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7873 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7876 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([0, 0]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7879 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7882 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7885 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7888 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([1, 1]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7891 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([2, 2]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7894 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([2, 2]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7897 +assert_return( + () => invoke($0, `f64x2.gt`, [f64x2([2, 2]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7900 +assert_return(() => invoke($0, `f64x2.gt`, [f64x2([2, 2]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7903 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7906 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([0, 0])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7909 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7912 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([-1, -1]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7915 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7918 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7921 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([1, 1])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7924 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([0, 0]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7927 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7930 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7933 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7936 +assert_return(() => invoke($0, `f64x2.ge`, [f64x2([1, 1]), f64x2([2, 2])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_f64x2_cmp.wast:7939 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([2, 2]), f64x2([-1, -1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7942 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([2, 2]), f64x2([0, 0])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7945 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([2, 2]), f64x2([1, 1])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7948 +assert_return( + () => invoke($0, `f64x2.ge`, [f64x2([2, 2]), f64x2([2, 2])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7954 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f2x64.eq (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7955 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f2x64.ne (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7956 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f2x64.lt (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7957 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f2x64.le (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7958 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f2x64.gt (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7959 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (f2x64.ge (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7962 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.eq (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7963 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.ne (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7964 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.lt (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7965 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.le (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7966 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.gt (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7967 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.ge (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7971 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.eq-1st-arg-empty (result v128) + (f64x2.eq (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7979 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.eq-arg-empty (result v128) + (f64x2.eq) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7987 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.ne-1st-arg-empty (result v128) + (f64x2.ne (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:7995 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.ne-arg-empty (result v128) + (f64x2.ne) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8003 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.lt-1st-arg-empty (result v128) + (f64x2.lt (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8011 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.lt-arg-empty (result v128) + (f64x2.lt) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8019 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.le-1st-arg-empty (result v128) + (f64x2.le (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8027 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.le-arg-empty (result v128) + (f64x2.le) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8035 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.gt-1st-arg-empty (result v128) + (f64x2.gt (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8043 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.gt-arg-empty (result v128) + (f64x2.gt) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8051 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.ge-1st-arg-empty (result v128) + (f64x2.ge (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8059 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.ge-arg-empty (result v128) + (f64x2.ge) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_cmp.wast:8069 +let $1 = instantiate(`(module (memory 1) + (func (export "f64x2.eq-in-block") + (block + (drop + (block (result v128) + (f64x2.eq + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "f64x2.ne-in-block") + (block + (drop + (block (result v128) + (f64x2.ne + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "f64x2.lt-in-block") + (block + (drop + (block (result v128) + (f64x2.lt + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "f64x2.le-in-block") + (block + (drop + (block (result v128) + (f64x2.le + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "f64x2.gt-in-block") + (block + (drop + (block (result v128) + (f64x2.gt + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "f64x2.ge-in-block") + (block + (drop + (block (result v128) + (f64x2.ge + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "nested-f64x2.eq") + (drop + (f64x2.eq + (f64x2.eq + (f64x2.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f64x2.eq + (f64x2.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-f64x2.ne") + (drop + (f64x2.ne + (f64x2.ne + (f64x2.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f64x2.ne + (f64x2.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-f64x2.lt") + (drop + (f64x2.lt + (f64x2.lt + (f64x2.lt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.lt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f64x2.lt + (f64x2.lt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.lt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-f64x2.le") + (drop + (f64x2.le + (f64x2.le + (f64x2.le + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.le + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f64x2.le + (f64x2.le + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.le + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-f64x2.gt") + (drop + (f64x2.gt + (f64x2.gt + (f64x2.gt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.gt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f64x2.gt + (f64x2.gt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.gt + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-f64x2.ge") + (drop + (f64x2.ge + (f64x2.ge + (f64x2.ge + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.ge + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f64x2.ge + (f64x2.ge + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.ge + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "as-param") + (drop + (f64x2.eq + (f64x2.ne + (f64x2.lt + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.le + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (f64x2.gt + (f64x2.ge + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (f64x2.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) +)`); + +// ./test/core/simd/simd_f64x2_cmp.wast:8325 +assert_return(() => invoke($1, `f64x2.eq-in-block`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8326 +assert_return(() => invoke($1, `f64x2.ne-in-block`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8327 +assert_return(() => invoke($1, `f64x2.lt-in-block`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8328 +assert_return(() => invoke($1, `f64x2.le-in-block`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8329 +assert_return(() => invoke($1, `f64x2.gt-in-block`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8330 +assert_return(() => invoke($1, `f64x2.ge-in-block`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8331 +assert_return(() => invoke($1, `nested-f64x2.eq`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8332 +assert_return(() => invoke($1, `nested-f64x2.ne`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8333 +assert_return(() => invoke($1, `nested-f64x2.lt`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8334 +assert_return(() => invoke($1, `nested-f64x2.le`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8335 +assert_return(() => invoke($1, `nested-f64x2.gt`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8336 +assert_return(() => invoke($1, `nested-f64x2.ge`, []), []); + +// ./test/core/simd/simd_f64x2_cmp.wast:8337 +assert_return(() => invoke($1, `as-param`, []), []); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_pmin_pmax.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_pmin_pmax.wast.js new file mode 100644 index 0000000000..fc2d068e25 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_pmin_pmax.wast.js @@ -0,0 +1,64564 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4 +let $0 = instantiate(`(module + (func (export "f64x2.pmin") (param v128 v128) (result v128) (f64x2.pmin (local.get 0) (local.get 1))) + (func (export "f64x2.pmax") (param v128 v128) (result v128) (f64x2.pmax (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:12 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:15 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:18 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:21 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:24 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:27 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:30 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:33 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:36 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:39 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:42 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:45 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:48 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:51 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:54 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:57 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:60 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:63 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:66 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:69 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0, 0]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:72 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:75 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:78 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:81 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:84 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:87 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:90 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:93 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:96 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:99 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:102 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:105 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:108 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:111 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:114 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:117 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:120 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:123 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:126 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:129 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:132 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:135 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:138 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:141 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:144 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:147 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:150 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:153 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:156 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:159 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:162 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:165 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:168 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:171 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:174 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:177 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:180 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:183 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:186 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:189 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0, -0]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:192 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:195 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:198 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:201 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:204 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:207 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:210 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:213 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:216 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:219 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:222 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:225 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:228 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:231 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:234 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:237 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:240 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:243 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:246 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:249 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:252 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:255 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:258 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:261 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:264 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:267 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:270 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:273 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:276 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:279 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:282 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:285 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:288 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:291 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:294 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:297 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:300 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:303 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:306 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:309 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:312 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:315 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:318 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:321 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:324 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:327 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:330 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:333 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:336 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:339 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:342 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:345 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:348 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:351 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:354 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:357 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:360 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:363 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:366 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:369 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:372 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:375 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:378 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:381 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:384 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:387 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:390 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:393 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:396 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:399 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:402 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:405 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:408 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:411 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:414 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:417 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:420 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:423 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:426 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:429 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:432 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:435 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:438 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:441 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:444 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:447 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:450 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:453 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:456 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:459 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:462 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:465 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:468 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:471 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:474 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:477 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:480 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:483 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:486 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:489 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:492 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:495 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:498 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:501 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:504 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:507 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:510 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:513 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:516 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:519 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:522 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:525 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:528 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:531 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:534 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:537 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:540 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:543 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:546 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:549 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([0.5, 0.5]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:552 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:555 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:558 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:561 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:564 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:567 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:570 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:573 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:576 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:579 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:582 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:585 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:588 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:591 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:594 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:597 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:600 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:603 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:606 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:609 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:612 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:615 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:618 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:621 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:624 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:627 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:630 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:633 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:636 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:639 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:642 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:645 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:648 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:651 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:654 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:657 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:660 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:663 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:666 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:669 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-0.5, -0.5]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:672 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:675 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:678 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:681 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:684 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:687 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:690 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:693 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:696 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:699 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:702 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:705 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:708 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:711 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:714 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:717 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:720 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:723 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:726 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:729 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:732 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:735 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:738 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:741 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:744 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:747 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:750 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:753 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:756 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:759 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:762 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:765 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:768 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:771 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:774 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:777 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:780 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:783 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:786 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:789 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([1, 1]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:792 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:795 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:798 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:801 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:804 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:807 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:810 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:813 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:816 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:819 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:822 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:825 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:828 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:831 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:834 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:837 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:840 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:843 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:846 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:849 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:852 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:855 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:858 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:861 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:864 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:867 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:870 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:873 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:876 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:879 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:882 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:885 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:888 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:891 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:894 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:897 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:900 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:903 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:906 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:909 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-1, -1]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:912 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:915 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:918 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:921 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:924 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:927 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:930 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:933 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:936 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:939 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:942 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:945 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:948 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:951 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:954 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:957 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:960 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:963 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:966 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:969 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:972 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:975 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:978 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:981 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:984 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:987 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:990 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:993 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:996 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:999 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1002 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1005 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1008 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1011 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1014 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1017 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1020 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1023 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1026 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1029 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1032 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1035 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1038 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1041 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1044 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1047 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1050 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1053 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1056 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1059 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1062 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1065 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1068 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1071 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1074 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1077 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1080 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1083 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1086 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1089 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1092 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1095 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1098 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1101 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1104 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1107 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1110 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1113 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1116 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1119 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1122 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1125 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1128 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1131 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1134 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1137 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1140 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1143 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1146 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1149 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1152 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1155 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1158 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1161 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1164 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1167 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1170 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1173 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1176 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1179 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1182 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1185 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1188 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1191 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1194 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1197 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1200 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1203 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1206 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1209 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1212 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1215 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1218 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1221 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1224 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1227 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1230 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1233 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1236 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1239 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1242 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1245 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1248 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1251 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1254 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1257 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1260 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1263 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1266 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1269 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1272 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1275 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1278 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1281 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1284 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1287 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1290 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1293 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1296 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1299 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1302 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1305 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1308 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1311 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1314 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1317 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1320 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1323 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1326 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1329 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1332 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1335 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1338 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1341 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1344 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1347 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1350 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1353 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1356 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1359 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1362 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1365 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1368 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1371 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1374 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1377 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1380 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1383 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1386 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1389 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1392 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1395 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1398 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1401 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1404 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1407 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1410 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1413 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1416 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1419 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1422 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1425 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1428 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1431 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1434 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1437 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1440 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1443 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1446 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1449 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1452 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1455 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1458 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1461 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1464 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1467 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1470 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1473 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1476 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1479 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1482 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1485 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1488 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1491 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1494 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1497 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1500 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1503 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1506 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1509 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1512 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1515 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1518 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1521 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1524 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1527 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1530 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1533 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1536 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1539 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1542 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1545 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1548 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1551 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1554 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1557 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1560 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1563 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1566 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1569 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1572 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1575 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1578 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1581 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1584 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1587 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1590 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1593 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1596 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1599 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1602 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1605 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1608 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1611 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1614 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1617 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1620 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1623 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1626 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1629 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1632 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1635 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1638 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1641 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1644 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1647 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1650 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1653 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1656 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1659 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1662 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1665 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1668 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1671 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1674 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1677 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1680 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1683 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1686 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1689 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1692 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1695 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1698 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1701 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1704 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1707 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1710 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1713 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1716 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1719 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1722 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1725 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1728 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1731 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1734 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1737 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1740 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1743 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1746 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1749 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1752 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1755 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1758 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1761 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1764 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1767 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1770 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1773 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1776 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1779 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1782 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1785 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1788 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1791 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1794 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1797 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1800 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1803 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1806 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1809 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1812 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1815 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1818 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1821 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1824 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1827 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1830 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1833 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1836 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1839 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1842 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1845 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1848 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1851 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1854 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1857 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1860 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1863 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1866 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1869 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1872 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1875 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1878 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1881 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1884 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1887 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1890 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1893 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1896 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1899 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1902 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1905 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1908 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1911 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1914 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1917 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1920 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1923 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1926 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1929 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1932 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1935 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1938 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1941 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1944 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1947 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1950 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1953 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1956 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1959 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1962 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1965 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1968 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1971 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1974 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1977 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1980 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1983 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1986 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1989 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1992 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1995 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:1998 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2001 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2004 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2007 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2010 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2013 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2016 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2019 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2022 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2025 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2028 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2031 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2034 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2037 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2040 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2043 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2046 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2049 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2052 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2055 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2058 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2061 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2064 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2067 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2070 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2073 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2076 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2079 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2082 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2085 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2088 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2091 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2094 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2097 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2100 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2103 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2106 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2109 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2112 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2115 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2118 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2121 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2124 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2127 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2130 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2133 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2136 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2139 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2142 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2145 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2148 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2151 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2154 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2157 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2160 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2163 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2166 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2169 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2172 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2175 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2178 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2181 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2184 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2187 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2190 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2193 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2196 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2199 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2202 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2205 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2208 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2211 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2214 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2217 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2220 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2223 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2226 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2229 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2232 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2235 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2238 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2241 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2244 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2247 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2250 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2253 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2256 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2259 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2262 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2265 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2268 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2271 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2274 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2277 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2280 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2283 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2286 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2289 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2292 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2295 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2298 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2301 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2304 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2307 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2310 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2313 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2316 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2319 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2322 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2325 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2328 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2331 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2334 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2337 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2340 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2343 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2346 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2349 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2352 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2355 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2358 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2361 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2364 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2367 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2370 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2373 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2376 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2379 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2382 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2385 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2388 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2391 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2394 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2397 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2400 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2403 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2406 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2409 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2412 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2415 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2418 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2421 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2424 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2427 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2430 +assert_return( + () => invoke($0, `f64x2.pmin`, [f64x2([123456789, 123456789]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2433 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2436 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2439 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2442 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2445 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2448 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2451 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2454 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2457 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2460 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2463 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2466 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2469 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2472 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2475 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2478 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2481 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2484 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2487 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2490 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2493 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2496 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2499 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2502 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2505 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2508 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2511 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2514 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2517 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2520 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2523 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2526 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2529 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2532 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2535 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2538 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2541 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2544 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2547 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2550 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2553 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2556 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2559 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2562 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2565 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2568 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2571 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2574 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2577 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2580 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2583 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2586 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2589 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2592 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2595 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2598 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2601 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2604 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2607 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2610 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2613 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2616 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2619 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2622 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2625 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2628 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2631 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2634 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2637 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2640 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2643 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2646 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2649 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2652 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2655 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2658 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2661 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2664 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2667 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2670 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2673 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2676 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2679 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2682 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2685 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2688 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2691 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2694 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2697 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2700 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2703 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2706 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2709 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2712 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2715 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2718 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2721 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2724 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2727 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2730 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2733 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2736 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2739 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2742 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2745 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2748 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2751 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2754 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2757 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2760 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2763 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2766 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2769 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2772 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2775 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2778 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2781 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2784 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2787 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2790 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2793 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2796 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2799 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2802 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2805 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2808 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2811 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2814 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2817 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2820 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2823 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2826 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2829 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2832 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2835 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2838 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2841 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2844 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2847 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2850 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2853 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2856 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2859 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2862 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2865 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2868 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2871 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2874 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2877 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2880 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2883 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2886 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2889 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2892 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2895 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2898 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2901 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2904 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2907 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2910 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2913 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2916 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2919 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2922 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2925 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2928 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2931 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2934 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2937 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2940 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2943 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2946 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2949 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2952 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2955 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2958 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2961 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2964 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2967 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2970 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2973 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2976 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2979 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2982 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2985 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2988 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2991 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2994 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:2997 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3000 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3003 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3006 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3009 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3012 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3015 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3018 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3021 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3024 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3027 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3030 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3033 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3036 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3039 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3042 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3045 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3048 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3051 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3054 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3057 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3060 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3063 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3066 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3069 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3072 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3075 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3078 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3081 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3084 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3087 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3090 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3093 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3096 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3099 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3102 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3105 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3108 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3111 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3114 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3117 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3120 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3123 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3126 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3129 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3132 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3135 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3138 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3141 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3144 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3147 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3150 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3153 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3156 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3159 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3162 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3165 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3168 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3171 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3174 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3177 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3180 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3183 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3186 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3189 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3192 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3195 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3198 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3201 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3204 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3207 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3210 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3213 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3216 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3219 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3222 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3225 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3228 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3231 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3234 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3237 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3240 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3243 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3246 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3249 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3252 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3255 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3258 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3261 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3264 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3267 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3270 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3273 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3276 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3279 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3282 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3285 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3288 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3291 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3294 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3297 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3300 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3303 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3306 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3309 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3312 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3315 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3318 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3321 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3324 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3327 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3330 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3333 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3336 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3339 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3342 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3345 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3348 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3351 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3354 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3357 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3360 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3363 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3366 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3369 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3372 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3375 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3378 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3381 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3384 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3387 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3390 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3393 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3396 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3399 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3402 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3405 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3408 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3411 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3414 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3417 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3420 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3423 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3426 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3429 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3432 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3435 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3438 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3441 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3444 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3447 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3450 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3453 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3456 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3459 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3462 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3465 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3468 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3471 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3474 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3477 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3480 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3483 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3486 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3489 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3492 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3495 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3498 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3501 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3504 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3507 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3510 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3513 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3516 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3519 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3522 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3525 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3528 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3531 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3534 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3537 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3540 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3543 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3546 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3549 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3552 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3555 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3558 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3561 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3564 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3567 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3570 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3573 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3576 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3579 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3582 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3585 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3588 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3591 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3594 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3597 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3600 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3603 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3606 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3609 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3612 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3615 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3618 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3621 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3624 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3627 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3630 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3633 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3636 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3639 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3642 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3645 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3648 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3651 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3654 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3657 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3660 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3663 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3666 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3669 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3672 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3675 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3678 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3681 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3684 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3687 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3690 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3693 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3696 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3699 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3702 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3705 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3708 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3711 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3714 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3717 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3720 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3723 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3726 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3729 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3732 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3735 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3738 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3741 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3744 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3747 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3750 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3753 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3756 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3759 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3762 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3765 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3768 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3771 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3774 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3777 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3780 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3783 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3786 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3789 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3792 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3795 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3798 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3801 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3804 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3807 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3810 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3813 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3816 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3819 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3822 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3825 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3828 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3831 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3834 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3837 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3840 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3843 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3846 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3849 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3852 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3855 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3858 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3861 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3864 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3867 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3870 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3873 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3876 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3879 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3882 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3885 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3888 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3891 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3894 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3897 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3900 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3903 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3906 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3909 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3912 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3915 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3918 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3921 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3924 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3927 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3930 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3933 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3936 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3939 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3942 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3945 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3948 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3951 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3954 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3957 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3960 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3963 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3966 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3969 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3972 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3975 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3978 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3981 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3984 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3987 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3990 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3993 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3996 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:3999 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4002 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4005 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4008 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4011 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4014 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4017 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4020 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4023 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4026 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4029 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4032 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4035 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4038 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4041 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4044 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4047 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4050 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4053 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4056 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4059 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4062 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4065 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4068 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4071 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4074 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4077 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4080 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4083 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4086 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4089 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4092 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4095 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4098 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4101 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4104 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4107 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4110 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4113 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4116 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4119 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4122 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4125 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4128 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4131 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4134 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4137 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4140 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4143 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4146 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4149 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4152 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4155 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4158 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4161 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4164 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4167 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4170 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4173 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4176 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4179 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4182 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4185 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4188 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4191 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4194 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4197 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4200 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4203 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4206 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4209 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4212 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4215 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4218 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4221 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4224 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4227 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4230 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4233 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4236 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4239 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4242 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4245 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4248 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4251 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4254 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4257 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4260 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4263 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4266 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4269 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4272 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4275 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4278 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4281 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4284 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4287 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4290 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4293 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4296 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4299 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4302 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4305 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4308 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4311 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4314 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4317 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4320 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4323 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4326 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4329 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4332 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4335 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4338 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4341 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4344 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4347 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4350 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4353 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4356 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4359 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4362 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4365 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4368 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4371 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4374 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4377 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4380 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4383 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4386 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4389 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4392 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4395 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4398 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4401 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4404 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4407 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4410 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4413 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4416 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4419 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4422 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4425 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4428 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4431 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4434 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4437 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4440 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4443 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4446 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4449 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4452 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4455 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4458 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4461 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4464 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4467 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4470 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4473 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4476 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4479 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4482 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4485 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4488 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4491 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4494 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4497 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4500 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4503 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4506 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4509 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4512 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4515 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4518 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4521 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4524 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4527 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4530 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4533 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4536 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4539 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4542 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4545 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4548 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4551 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4554 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4557 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4560 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4563 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4566 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4569 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4572 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4575 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4578 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4581 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4584 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4587 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4590 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4593 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4596 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4599 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4602 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4605 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4608 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4611 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4614 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4617 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4620 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4623 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4626 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4629 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4632 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4635 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4638 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4641 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4644 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4647 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4650 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4653 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4656 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4659 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4662 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4665 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4668 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4671 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4674 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4677 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4680 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4683 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4686 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4689 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4692 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4695 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4698 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4701 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4704 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4707 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4710 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4713 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4716 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4719 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4722 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4725 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4728 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4731 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4734 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4737 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4740 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4743 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4746 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4749 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4752 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4755 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4758 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4761 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4764 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4767 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4770 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4773 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4776 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4779 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4782 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4785 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4788 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4791 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4794 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4797 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4800 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4803 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4806 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4809 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4812 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4815 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4818 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4821 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4824 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4827 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4830 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4833 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4836 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4839 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4842 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4845 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4848 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4851 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4854 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4857 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4860 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4863 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4866 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4869 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4872 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4875 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4878 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4881 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4884 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4887 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4890 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4893 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4896 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4899 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4902 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4905 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4908 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4911 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4914 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4917 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4920 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4923 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4926 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4929 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4932 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4935 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4938 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4941 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4944 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4947 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4950 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4953 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4956 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4959 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4962 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4965 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4968 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4971 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4974 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4977 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4980 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4983 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4986 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4989 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4992 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4995 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:4998 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5001 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5004 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5007 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5010 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5013 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5016 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5019 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5022 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5025 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5028 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5031 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5034 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5037 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5040 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5043 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5046 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5049 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5052 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5055 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5058 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5061 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5064 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5067 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5070 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5073 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5076 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5079 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5082 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5085 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5088 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5091 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5094 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5097 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5100 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5103 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5106 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5109 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5112 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5115 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5118 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5121 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5124 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5127 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5130 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5133 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5136 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5139 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5142 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5145 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5148 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5151 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5154 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5157 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5160 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5163 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5166 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5169 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5172 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5175 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5178 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5181 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5184 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5187 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5190 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5193 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5196 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5199 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5202 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5205 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5208 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5211 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5214 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5217 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5220 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5223 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5226 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5229 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5232 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5235 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5238 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5241 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5244 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5247 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5250 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5253 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5256 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5259 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5262 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5265 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5268 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5271 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5274 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5277 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5280 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5283 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5286 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5289 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5292 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5295 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5298 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5301 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5304 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5307 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5310 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5313 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5316 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5319 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5322 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5325 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5328 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5331 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5334 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5337 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5340 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5343 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5346 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5349 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5352 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5355 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5358 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5361 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5364 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5367 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5370 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5373 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5376 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5379 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5382 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5385 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5388 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5391 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5394 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5397 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5400 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5403 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5406 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5409 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5412 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5415 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5418 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5421 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5424 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5427 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5430 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5433 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5436 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5439 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5442 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5445 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5448 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5451 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5454 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5457 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5460 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5463 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5466 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5469 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5472 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5475 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5478 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5481 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5484 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5487 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5490 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5493 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5496 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5499 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5502 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5505 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5508 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5511 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5514 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5517 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5520 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5523 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5526 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5529 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5532 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5535 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5538 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5541 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5544 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5547 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5550 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5553 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5556 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5559 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5562 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5565 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5568 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5571 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5574 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5577 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5580 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5583 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5586 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5589 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5592 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5595 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5598 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5601 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5604 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5607 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5610 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5613 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5616 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5619 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5622 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5625 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5628 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5631 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5634 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5637 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5640 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5643 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5646 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5649 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5652 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5655 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5658 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5661 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5664 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5667 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5670 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5673 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5676 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5679 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5682 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5685 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5688 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5691 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5694 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5697 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5700 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5703 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5706 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5709 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5712 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5715 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5718 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5721 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5724 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5727 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5730 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5733 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5736 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5739 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5742 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5745 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5748 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5751 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5754 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5757 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5760 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5763 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5766 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5769 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([123456789.01234567, 123456789.01234567]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5772 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5775 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5778 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5781 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5784 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5787 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5790 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5793 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5796 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5799 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5802 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5805 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5808 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5811 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5814 +assert_return( + () => invoke($0, `f64x2.pmin`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5817 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5820 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5823 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5826 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5829 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5832 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5835 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5838 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5841 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5844 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5847 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5850 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5853 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5856 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5859 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5862 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5865 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5868 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5871 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5874 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5877 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0, 0]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5880 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5883 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5886 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5889 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5892 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5895 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5898 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5901 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5904 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5907 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5910 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5913 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5916 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5919 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5922 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5925 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5928 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5931 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5934 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5937 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5940 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5943 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5946 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5949 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5952 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5955 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5958 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5961 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5964 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5967 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5970 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5973 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5976 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5979 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5982 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5985 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5988 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5991 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5994 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:5997 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0, -0]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6000 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6003 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6006 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6009 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6012 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6015 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6018 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6021 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6024 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6027 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6030 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6033 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6036 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6039 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6042 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6045 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6048 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6051 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6054 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6057 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6060 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6063 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6066 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6069 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6072 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6075 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6078 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6081 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6084 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6087 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6090 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6093 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6096 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6099 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6102 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6105 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6108 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6111 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6114 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6117 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6120 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6123 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6126 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6129 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6132 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6135 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6138 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6141 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6144 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6147 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6150 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6153 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6156 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6159 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6162 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6165 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6168 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6171 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6174 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6177 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6180 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6183 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6186 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6189 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6192 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6195 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6198 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6201 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6204 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6207 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6210 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6213 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6216 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6219 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6222 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6225 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6228 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6231 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6234 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6237 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6240 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6243 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6246 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6249 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6252 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6255 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6258 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6261 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6264 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6267 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6270 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6273 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6276 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6279 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6282 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6285 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6288 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6291 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6294 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6297 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6300 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6303 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6306 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6309 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6312 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6315 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6318 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6321 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6324 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6327 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6330 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6333 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6336 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6339 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6342 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6345 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6348 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6351 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6354 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6357 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([0.5, 0.5]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6360 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6363 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6366 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6369 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6372 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6375 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6378 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6381 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6384 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6387 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6390 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6393 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6396 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6399 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6402 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6405 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6408 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6411 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6414 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6417 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6420 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6423 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6426 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6429 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6432 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6435 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6438 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6441 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6444 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6447 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6450 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6453 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6456 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6459 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6462 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6465 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6468 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6471 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6474 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6477 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-0.5, -0.5]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6480 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6483 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6486 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6489 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6492 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6495 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6498 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6501 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6504 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6507 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6510 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6513 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6516 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6519 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6522 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6525 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6528 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6531 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6534 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6537 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6540 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6543 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6546 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6549 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6552 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6555 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6558 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6561 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6564 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6567 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6570 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6573 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6576 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6579 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6582 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6585 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6588 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6591 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6594 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6597 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([1, 1]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6600 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6603 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6606 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6609 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6612 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6615 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6618 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6621 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6624 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6627 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6630 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6633 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6636 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6639 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6642 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6645 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6648 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6651 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6654 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6657 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6660 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6663 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6666 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6669 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6672 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6675 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6678 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6681 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6684 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6687 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6690 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6693 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6696 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6699 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6702 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6705 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6708 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6711 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6714 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6717 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-1, -1]), f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6720 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6723 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6726 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6729 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6732 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6735 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6738 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6741 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6744 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6747 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6750 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6753 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6756 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6759 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6762 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6765 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6768 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6771 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6774 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6777 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6780 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6783 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6786 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6789 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6792 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6795 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6798 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6801 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6804 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6807 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6810 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6813 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6816 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6819 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6822 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6825 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6828 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6831 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6834 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6837 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6840 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6843 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6846 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6849 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6852 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6855 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6858 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6861 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6864 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6867 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6870 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6873 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6876 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6879 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6882 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6885 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6888 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6891 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6894 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6897 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6900 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6903 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6906 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6909 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6912 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6915 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6918 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6921 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6924 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6927 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6930 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6933 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6936 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6939 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6942 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6945 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6948 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6951 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6954 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6957 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6960 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6963 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6966 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6969 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6972 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6975 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6978 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6981 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6984 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6987 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6990 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6993 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6996 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:6999 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7002 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7005 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7008 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7011 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7014 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7017 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7020 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7023 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7026 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7029 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7032 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7035 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7038 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7041 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7044 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7047 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7050 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7053 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7056 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7059 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7062 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7065 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7068 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7071 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7074 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7077 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7080 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7083 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7086 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7089 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7092 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7095 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7098 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7101 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7104 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7107 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7110 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7113 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7116 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7119 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7122 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7125 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7128 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7131 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7134 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7137 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0, 0]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7140 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0, -0]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7143 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7146 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7149 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7152 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-0.5, -0.5]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7155 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7158 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-1, -1]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7161 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7164 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7167 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7170 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7173 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7176 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7179 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7182 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7185 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7188 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7191 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7194 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7197 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7200 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7203 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7206 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7209 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7212 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7215 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7218 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7221 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7224 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7227 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7230 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7233 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7236 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7239 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7242 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7245 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7248 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7251 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7254 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7257 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7260 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7263 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7266 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7269 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7272 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7275 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7278 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7281 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7284 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7287 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7290 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7293 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7296 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7299 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7302 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7305 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7308 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7311 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7314 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7317 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7320 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7323 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7326 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7329 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7332 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7335 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7338 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7341 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7344 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7347 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7350 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7353 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7356 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7359 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7362 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7365 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7368 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7371 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7374 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7377 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7380 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7383 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7386 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7389 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7392 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7395 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7398 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7401 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7404 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7407 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7410 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7413 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7416 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7419 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7422 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7425 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7428 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7431 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7434 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7437 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7440 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7443 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7446 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7449 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7452 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7455 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7458 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7461 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7464 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7467 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7470 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7473 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7476 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7479 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7482 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7485 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7488 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7491 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7494 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7497 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([Infinity, Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7500 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([Infinity, Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7503 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7506 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7509 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([Infinity, Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7512 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([Infinity, Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7515 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([Infinity, Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7518 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([Infinity, Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7521 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7524 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7527 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7530 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7533 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7536 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7539 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7542 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7545 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7548 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7551 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7554 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7557 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7560 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7563 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7566 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7569 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7572 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7575 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7578 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7581 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7584 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7587 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7590 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7593 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7596 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7599 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7602 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7605 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7608 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7611 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7614 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7617 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-Infinity, -Infinity]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7620 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-Infinity, -Infinity]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7623 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7626 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7629 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-Infinity, -Infinity]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7632 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-Infinity, -Infinity]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7635 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-Infinity, -Infinity]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7638 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([-Infinity, -Infinity]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7641 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7644 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7647 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7650 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7653 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7656 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7659 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7662 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7665 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7668 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7671 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7674 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7677 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7680 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7683 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7686 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7689 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7692 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7695 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7698 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7701 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7704 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7707 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7710 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7713 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7716 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7719 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7722 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7725 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7728 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7731 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7734 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7737 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7740 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7743 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7746 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7749 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7752 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7755 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7758 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7761 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7764 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7767 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7770 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7773 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7776 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7779 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7782 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7785 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7788 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7791 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7794 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7797 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7800 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7803 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7806 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7809 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7812 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7815 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7818 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7821 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7824 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7827 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7830 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7833 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7836 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7839 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7842 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7845 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7848 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7851 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7854 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7857 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7860 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7863 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7866 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7869 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7872 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7875 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7878 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7881 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7884 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7887 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7890 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7893 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7896 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7899 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7902 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7905 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7908 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7911 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7914 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7917 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7920 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7923 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7926 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7929 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7932 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7935 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7938 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7941 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7944 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7947 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7950 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7953 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7956 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7959 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7962 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7965 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7968 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7971 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7974 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7977 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7980 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7983 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7986 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7989 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7992 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7995 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:7998 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8001 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8004 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8007 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8010 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8013 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8016 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8019 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8022 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8025 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8028 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8031 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8034 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8037 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8040 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8043 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8046 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8049 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8052 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8055 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8058 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8061 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8064 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8067 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8070 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8073 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8076 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8079 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8082 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8085 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8088 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8091 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8094 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8097 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8100 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8103 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8106 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8109 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8112 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8115 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8118 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8121 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8124 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8127 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8130 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8133 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8136 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8139 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8142 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8145 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8148 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8151 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8154 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8157 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8160 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8163 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8166 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8169 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8172 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8175 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8178 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8181 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8184 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8187 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8190 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8193 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8196 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8199 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8202 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8205 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8208 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8211 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8214 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8217 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8220 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8223 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8226 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8229 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8232 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8235 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8238 +assert_return( + () => invoke($0, `f64x2.pmax`, [f64x2([123456789, 123456789]), f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8241 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8244 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8247 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8250 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8253 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8256 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8259 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8262 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([-Infinity, -Infinity]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8265 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8268 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8271 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8274 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8277 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8280 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8283 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8286 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8289 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8292 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8295 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8298 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8301 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8304 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8307 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8310 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8313 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8316 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8319 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8322 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8325 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8328 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8331 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8334 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8337 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8340 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8343 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8346 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8349 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8352 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8355 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8358 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8361 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8364 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8367 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8370 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8373 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8376 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8379 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8382 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8385 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8388 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8391 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8394 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8397 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8400 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8403 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8406 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8409 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8412 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8415 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8418 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8421 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8424 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8427 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8430 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8433 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8436 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8439 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8442 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8445 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8448 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8451 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8454 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8457 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8460 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8463 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8466 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8469 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8472 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8475 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8478 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8481 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8484 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8487 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8490 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8493 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8496 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8499 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8502 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8505 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8508 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8511 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8514 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8517 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8520 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8523 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8526 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8529 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8532 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8535 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8538 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8541 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8544 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8547 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8550 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8553 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8556 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8559 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8562 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8565 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8568 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8571 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8574 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8577 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8580 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8583 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8586 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8589 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8592 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8595 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8598 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8601 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8604 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8607 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8610 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8613 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8616 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8619 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8622 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8625 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8628 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8631 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8634 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8637 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8640 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8643 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8646 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8649 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8652 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8655 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8658 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8661 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8664 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8667 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8670 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8673 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8676 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8679 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8682 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8685 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8688 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8691 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8694 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8697 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8700 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8703 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8706 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8709 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8712 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8715 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8718 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8721 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8724 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8727 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8730 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8733 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8736 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8739 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8742 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8745 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8748 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8751 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8754 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8757 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8760 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8763 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8766 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8769 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8772 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8775 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8778 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8781 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8784 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8787 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8790 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8793 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8796 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8799 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8802 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8805 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8808 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8811 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8814 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8817 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8820 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8823 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8826 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8829 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8832 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8835 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8838 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8841 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8844 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8847 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8850 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8853 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8856 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8859 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8862 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8865 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8868 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8871 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8874 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8877 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8880 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8883 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8886 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8889 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8892 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8895 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8898 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8901 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8904 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8907 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8910 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8913 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8916 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8919 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8922 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8925 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8928 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8931 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8934 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8937 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8940 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8943 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8946 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8949 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8952 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8955 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8958 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8961 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8964 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8967 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8970 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8973 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8976 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8979 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8982 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8985 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8988 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8991 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8994 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:8997 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9000 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9003 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9006 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9009 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9012 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9015 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9018 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9021 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9024 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9027 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9030 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9033 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9036 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9039 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9042 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9045 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9048 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9051 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9054 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9057 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9060 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9063 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9066 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9069 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.5, 0.5]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9072 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9075 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1, 1]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9078 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9081 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9084 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9087 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9090 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9093 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9096 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9099 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9102 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9105 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9108 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9111 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9114 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9117 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([123456789, 123456789]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9120 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9123 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9126 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9129 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9132 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9135 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9138 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9141 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9144 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9147 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9150 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9153 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9156 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9159 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9162 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9165 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9168 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9171 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9174 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9177 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9180 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9183 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9186 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9189 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9192 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9195 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9198 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9201 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9204 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9207 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9210 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9213 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9216 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9219 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9222 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9225 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9228 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9231 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9234 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9237 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9240 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9243 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9246 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9249 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9252 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9255 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9258 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9261 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9264 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9267 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9270 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9273 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9276 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9279 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9282 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9285 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9288 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9291 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9294 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9297 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9300 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9303 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9306 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9309 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9312 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9315 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9318 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9321 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9324 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9327 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9330 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9333 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9336 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9339 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9342 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9345 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9348 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9351 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9354 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9357 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9360 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9363 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9366 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9369 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9372 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9375 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9378 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9381 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9384 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9387 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9390 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9393 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9396 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9399 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9402 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9405 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9408 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9411 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9414 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9417 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9420 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9423 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9426 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9429 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9432 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9435 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9438 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9441 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9444 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9447 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9450 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9453 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9456 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9459 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9462 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9465 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9468 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9471 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9474 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9477 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9480 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9483 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9486 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9489 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9492 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9495 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9498 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9501 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9504 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9507 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9510 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9513 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9516 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9519 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9522 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9525 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9528 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9531 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9534 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9537 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9540 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9543 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9546 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9549 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9552 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9555 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9558 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9561 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9564 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9567 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9570 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9573 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9576 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9579 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9582 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9585 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9588 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9591 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9594 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9597 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9600 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9603 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9606 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9609 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9612 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9615 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9618 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9621 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9624 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9627 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9630 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9633 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9636 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9639 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9642 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9645 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9648 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9651 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9654 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9657 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9660 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9663 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9666 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9669 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9672 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9675 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9678 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9681 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9684 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9687 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9690 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9693 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9696 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9699 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9702 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9705 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9708 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9711 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9714 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9717 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9720 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9723 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9726 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9729 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9732 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9735 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9738 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9741 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9744 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9747 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9750 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9753 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9756 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9759 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9762 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9765 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9768 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9771 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9774 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9777 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9780 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9783 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9786 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9789 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9792 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9795 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9798 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9801 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9804 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9807 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9810 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9813 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9816 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9819 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9822 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9825 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9828 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9831 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9834 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9837 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9840 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9843 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9846 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9849 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9852 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9855 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9858 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9861 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9864 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9867 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9870 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9873 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9876 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9879 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9882 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9885 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9888 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9891 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9894 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9897 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9900 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9903 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9906 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9909 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9912 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9915 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9918 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9921 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9924 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9927 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9930 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9933 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9936 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9939 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9942 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9945 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9948 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9951 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9954 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9957 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9960 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9963 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9966 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9969 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9972 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9975 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9978 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9981 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9984 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9987 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9990 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9993 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9996 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:9999 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10002 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10005 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10008 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10011 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10014 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10017 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10020 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10023 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10026 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10029 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10032 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10035 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10038 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10041 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10044 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10047 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10050 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10053 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10056 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10059 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10062 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10065 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10068 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10071 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10074 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10077 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10080 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10083 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10086 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10089 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10092 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10095 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10098 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10101 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10104 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10107 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10110 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10113 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10116 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10119 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10122 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10125 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10128 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10131 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10134 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10137 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10140 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10143 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10146 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10149 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10152 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10155 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10158 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10161 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10164 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10167 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10170 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10173 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10176 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10179 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10182 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10185 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10188 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10191 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10194 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10197 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10200 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10203 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10206 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10209 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10212 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10215 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10218 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10221 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10224 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10227 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10230 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10233 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10236 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10239 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10242 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10245 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10248 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10251 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10254 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10257 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10260 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10263 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10266 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10269 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10272 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10275 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10278 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10281 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10284 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10287 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10290 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10293 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10296 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10299 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10302 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10305 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10308 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10311 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10314 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10317 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10320 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10323 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10326 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10329 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10332 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10335 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10338 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10341 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10344 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10347 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10350 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10353 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10356 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10359 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10362 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10365 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10368 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10371 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10374 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10377 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10380 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10383 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10386 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10389 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10392 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10395 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10398 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10401 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10404 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10407 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10410 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10413 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10416 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10419 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10422 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10425 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10428 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10431 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10434 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10437 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10440 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10443 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10446 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10449 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10452 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10455 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10458 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10461 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10464 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10467 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10470 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10473 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10476 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10479 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10482 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10485 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10488 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10491 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10494 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10497 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10500 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10503 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10506 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10509 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10512 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10515 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10518 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10521 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10524 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10527 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10530 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10533 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10536 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10539 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([Infinity, Infinity]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10542 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10545 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10548 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10551 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10554 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10557 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10560 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10563 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10566 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10569 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10572 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10575 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10578 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10581 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10584 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10587 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10590 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10593 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10596 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10599 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10602 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10605 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10608 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10611 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10614 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10617 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10620 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10623 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10626 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10629 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10632 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10635 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10638 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10641 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10644 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10647 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10650 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10653 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10656 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10659 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10662 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10665 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10668 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10671 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10674 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10677 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10680 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10683 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10686 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10689 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10692 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10695 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10698 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10701 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10704 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10707 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10710 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10713 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10716 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10719 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10722 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10725 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10728 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10731 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10734 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10737 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10740 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10743 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10746 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10749 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10752 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10755 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10758 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10761 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10764 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10767 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10770 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10773 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10776 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10779 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10782 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10785 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10788 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10791 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10794 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10797 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10800 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10803 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10806 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10809 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10812 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10815 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10818 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10821 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10824 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10827 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10830 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10833 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10836 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10839 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10842 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10845 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10848 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10851 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10854 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10857 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10860 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10863 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10866 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10869 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10872 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10875 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10878 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10881 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10884 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10887 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10890 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10893 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10896 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10899 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10902 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10905 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10908 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10911 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10914 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10917 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10920 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10923 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10926 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10929 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10932 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10935 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10938 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10941 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10944 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10947 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10950 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10953 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10956 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10959 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10962 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10965 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10968 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10971 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10974 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10977 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10980 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10983 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10986 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10989 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10992 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10995 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:10998 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11001 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11004 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11007 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11010 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11013 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0, 0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11016 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0, -0]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11019 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11022 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11025 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.5, 0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11028 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-0.5, -0.5]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11031 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1, 1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11034 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-1, -1]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11037 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([6.283185307179586, 6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11040 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-6.283185307179586, -6.283185307179586]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11043 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11046 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11049 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11052 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11055 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([Infinity, Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11058 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([-Infinity, -Infinity]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11061 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11064 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11067 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11070 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11073 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([123456789, 123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11076 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11079 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11082 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11085 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([123456789.01234567, 123456789.01234567]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11088 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11091 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11094 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11097 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11100 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11103 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11106 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11109 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11112 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11115 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11118 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11121 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11124 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11127 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11130 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + f64x2([2623536934927580700, 2623536934927580700]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11133 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11136 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11139 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11142 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11145 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11148 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11151 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11154 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11157 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11160 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11163 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11166 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11169 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11172 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11175 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11178 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11181 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11184 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11187 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11190 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11193 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11196 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11199 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11202 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11205 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11208 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11211 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11214 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11217 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11220 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11223 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11226 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11229 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11232 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11235 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11238 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11241 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11244 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11247 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11250 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11253 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11256 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11259 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11262 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11265 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11268 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11271 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11274 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11277 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11280 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11283 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11286 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11289 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11292 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11295 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11298 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11301 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11304 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11307 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11310 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11313 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11316 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11319 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11322 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11325 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11328 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11331 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11334 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11337 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11340 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11343 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11346 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11349 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11352 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11355 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11358 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11361 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11364 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11367 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11370 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11373 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11376 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11379 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11382 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11385 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11388 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11391 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11394 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11397 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11400 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11403 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11406 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11409 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11412 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11415 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11418 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11421 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11424 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11427 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11430 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11433 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11436 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11439 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11442 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11445 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11448 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11451 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11454 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11457 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11460 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11463 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11466 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11469 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11472 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11475 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11478 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11481 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11484 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11487 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11490 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11493 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11496 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11499 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11502 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11505 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0, 0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11508 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0, -0]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11511 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11514 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11517 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.5, 0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11520 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-0.5, -0.5]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11523 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1, 1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11526 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-1, -1]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11529 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([6.283185307179586, 6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11532 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-6.283185307179586, -6.283185307179586]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11535 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11538 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11541 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11544 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11547 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([Infinity, Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11550 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([-Infinity, -Infinity]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11553 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11556 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11559 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11562 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11565 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789, 123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11568 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11571 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11574 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.0000000000123456789), + value("f64", 0.0000000000123456789), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11577 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([123456789.01234567, 123456789.01234567]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 123456789.01234567), + value("f64", 123456789.01234567), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11580 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11583 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11586 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000012345678901234568), + value("f64", 0.000000000012345678901234568), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11589 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11592 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11595 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11598 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11601 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11604 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11607 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11610 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11613 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11616 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11619 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11622 +assert_return( + () => invoke($0, `f64x2.pmax`, [ + f64x2([2623536934927580700, 2623536934927580700]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11629 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.pmin (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11630 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.pmax (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11631 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.pmin (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11632 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.pmax (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11633 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.pmin (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11634 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.pmax (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11635 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.pmin (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11636 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.pmax (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11639 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.pmin (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11640 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.pmax (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11644 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.pmin-1st-arg-empty (result v128) + (f64x2.pmin (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11652 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.pmin-arg-empty (result v128) + (f64x2.pmin) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11660 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.pmax-1st-arg-empty (result v128) + (f64x2.pmax (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_pmin_pmax.wast:11668 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.pmax-arg-empty (result v128) + (f64x2.pmax) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_rounding.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_rounding.wast.js new file mode 100644 index 0000000000..c787804bc2 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_f64x2_rounding.wast.js @@ -0,0 +1,2210 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_f64x2_rounding.wast + +// ./test/core/simd/simd_f64x2_rounding.wast:4 +let $0 = instantiate(`(module + (func (export "f64x2.ceil") (param v128) (result v128) (f64x2.ceil (local.get 0))) + (func (export "f64x2.floor") (param v128) (result v128) (f64x2.floor (local.get 0))) + (func (export "f64x2.trunc") (param v128) (result v128) (f64x2.trunc (local.get 0))) + (func (export "f64x2.nearest") (param v128) (result v128) (f64x2.nearest (local.get 0))) +)`); + +// ./test/core/simd/simd_f64x2_rounding.wast:11 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:13 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:15 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:17 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:19 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:21 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:23 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:25 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:27 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([6.283185307179586, 6.283185307179586])]), + [new F64x2Pattern(value("f64", 7), value("f64", 7))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:29 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([-6.283185307179586, -6.283185307179586])]), + [new F64x2Pattern(value("f64", -6), value("f64", -6))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:31 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:33 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:35 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:37 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:39 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:41 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:43 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:45 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:47 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:49 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:51 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:53 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:55 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:57 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:59 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([123456789.01234567, 123456789.01234567])]), + [new F64x2Pattern(value("f64", 123456790), value("f64", 123456790))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:61 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:63 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:65 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:67 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:69 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:71 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:73 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:75 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:77 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:79 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:81 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:83 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:85 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:87 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:89 +assert_return( + () => invoke($0, `f64x2.ceil`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:91 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:93 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:95 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:97 +assert_return( + () => invoke($0, `f64x2.ceil`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:99 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:101 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:103 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:105 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:107 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:109 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:111 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:113 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:115 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([6.283185307179586, 6.283185307179586])]), + [new F64x2Pattern(value("f64", 6), value("f64", 6))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:117 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([-6.283185307179586, -6.283185307179586])]), + [new F64x2Pattern(value("f64", -7), value("f64", -7))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:119 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:121 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:123 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:125 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:127 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:129 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:131 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:133 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:135 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:137 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:139 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:141 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:143 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:145 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:147 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([123456789.01234567, 123456789.01234567])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:149 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:151 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:153 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:155 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:157 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:159 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:161 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:163 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:165 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:167 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:169 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:171 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:173 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:175 +assert_return( + () => invoke($0, `f64x2.floor`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:177 +assert_return( + () => invoke($0, `f64x2.floor`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:179 +assert_return( + () => invoke($0, `f64x2.floor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:181 +assert_return( + () => invoke($0, `f64x2.floor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:183 +assert_return( + () => invoke($0, `f64x2.floor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:185 +assert_return( + () => invoke($0, `f64x2.floor`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:187 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:189 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:191 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:193 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:195 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:197 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:199 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:201 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:203 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([6.283185307179586, 6.283185307179586])]), + [new F64x2Pattern(value("f64", 6), value("f64", 6))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:205 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([-6.283185307179586, -6.283185307179586])]), + [new F64x2Pattern(value("f64", -6), value("f64", -6))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:207 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:209 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:211 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:213 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:215 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:217 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:219 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:221 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:223 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:225 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:227 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:229 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:231 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:233 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:235 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([123456789.01234567, 123456789.01234567])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:237 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:239 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:241 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:243 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:245 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:247 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:249 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:251 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:253 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:255 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:257 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:259 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:261 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:263 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:265 +assert_return( + () => invoke($0, `f64x2.trunc`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:267 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:269 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:271 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:273 +assert_return( + () => invoke($0, `f64x2.trunc`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:275 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([0, 0])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:277 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([-0, -0])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:279 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:281 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + ]), + ]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:283 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([0.5, 0.5])]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:285 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([-0.5, -0.5])]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:287 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([1, 1])]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:289 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([-1, -1])]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:291 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([6.283185307179586, 6.283185307179586])]), + [new F64x2Pattern(value("f64", 6), value("f64", 6))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:293 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([-6.283185307179586, -6.283185307179586])]), + [new F64x2Pattern(value("f64", -6), value("f64", -6))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:295 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([ + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:297 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([ + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:299 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:301 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005, + ]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:303 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([Infinity, Infinity])]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:305 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([-Infinity, -Infinity])]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:307 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:309 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:311 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:313 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:315 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([123456789, 123456789])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:317 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:319 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1234567890000000000000000000, 1234567890000000000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:321 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([0.0000000000123456789, 0.0000000000123456789]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:323 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([123456789.01234567, 123456789.01234567])]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:325 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:327 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1234567890123456900000000000, 1234567890123456900000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1234567890123456900000000000), + value("f64", 1234567890123456900000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:329 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([0.000000000012345678901234568, 0.000000000012345678901234568]), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:331 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:333 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:335 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:337 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:339 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:341 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:343 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:345 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:347 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([1375488932539311400000000, 1375488932539311400000000]), + ]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:349 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:351 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + f64x2([721152341463170500000000000000, 721152341463170500000000000000]), + ]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:353 +assert_return( + () => invoke($0, `f64x2.nearest`, [f64x2([2623536934927580700, 2623536934927580700])]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:355 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:357 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [new F64x2Pattern(`canonical_nan`, `canonical_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:359 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0x7f, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:361 +assert_return( + () => invoke($0, `f64x2.nearest`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf4, + 0xff, + ]), + ]), + [new F64x2Pattern(`arithmetic_nan`, `arithmetic_nan`)], +); + +// ./test/core/simd/simd_f64x2_rounding.wast:367 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.ceil (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:368 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.floor (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:369 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.trunc (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:370 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.nearest (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:371 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.ceil (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:372 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.floor (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:373 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.trunc (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:374 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.nearest (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:375 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.ceil (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:376 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.floor (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:377 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.trunc (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:378 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.nearest (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:379 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.ceil (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:380 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.floor (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:381 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.trunc (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:382 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.nearest (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:385 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.ceil (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:386 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.floor (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:387 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.trunc (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:388 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.nearest (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:392 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.ceil-arg-empty (result v128) + (f64x2.ceil) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:400 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.floor-arg-empty (result v128) + (f64x2.floor) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:408 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.trunc-arg-empty (result v128) + (f64x2.trunc) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_f64x2_rounding.wast:416 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.nearest-arg-empty (result v128) + (f64x2.nearest) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_arith.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_arith.wast.js new file mode 100644 index 0000000000..860294d3a7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_arith.wast.js @@ -0,0 +1,1801 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i16x8_arith.wast + +// ./test/core/simd/simd_i16x8_arith.wast:4 +let $0 = instantiate(`(module + (func (export "i16x8.add") (param v128 v128) (result v128) (i16x8.add (local.get 0) (local.get 1))) + (func (export "i16x8.sub") (param v128 v128) (result v128) (i16x8.sub (local.get 0) (local.get 1))) + (func (export "i16x8.mul") (param v128 v128) (result v128) (i16x8.mul (local.get 0) (local.get 1))) + (func (export "i16x8.neg") (param v128) (result v128) (i16x8.neg (local.get 0))) +)`); + +// ./test/core/simd/simd_i16x8_arith.wast:13 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:16 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:19 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:22 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:25 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:28 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:31 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:34 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:37 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:40 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:43 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:46 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:49 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:52 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:55 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:58 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:61 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:64 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:67 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:70 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:73 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:76 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:79 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:82 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:85 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:88 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:91 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:94 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:97 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:100 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:103 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:106 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:109 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:112 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:115 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:118 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:121 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:124 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:127 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i8x16([0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:130 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:133 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i32x4([0x80008000, 0x80008000, 0x80008000, 0x80008000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:136 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:139 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([0, 0, 0, 0]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:142 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-0, -0, -0, -0]), + ]), + [i16x8([0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:145 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([1, 1, 1, 1]), + ]), + [i16x8([0x8000, 0xbf80, 0x8000, 0xbf80, 0x8000, 0xbf80, 0x8000, 0xbf80])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:148 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-1, -1, -1, -1]), + ]), + [i16x8([0x8000, 0x3f80, 0x8000, 0x3f80, 0x8000, 0x3f80, 0x8000, 0x3f80])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:151 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i16x8([0x1, 0x7f81, 0x1, 0x7f81, 0x1, 0x7f81, 0x1, 0x7f81])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:154 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i16x8([0x1, 0xff81, 0x1, 0xff81, 0x1, 0xff81, 0x1, 0xff81])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:157 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i16x8([0x1, 0x7fc1, 0x1, 0x7fc1, 0x1, 0x7fc1, 0x1, 0x7fc1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:160 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:163 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0x3, 0x6, 0x9, 0xc, 0xf, 0x12, 0x15])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:166 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + ]), + [i16x8([0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:169 +assert_return( + () => invoke($0, `i16x8.add`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678]), + ]), + [i16x8([0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:174 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:177 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:180 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:183 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:186 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:189 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:192 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:195 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:198 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:201 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:204 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:207 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:210 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:213 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:216 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8003, 0x8003, 0x8003, 0x8003, 0x8003, 0x8003, 0x8003, 0x8003])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:219 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:222 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:225 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:228 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:231 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:234 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:237 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:240 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:243 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:246 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:249 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:252 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:255 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:258 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:261 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:264 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:267 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:270 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:273 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:276 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:279 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:282 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:285 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:288 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i8x16([0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80, 0x0, 0x80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:291 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:294 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i32x4([0x80008000, 0x80008000, 0x80008000, 0x80008000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:297 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:300 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([0, 0, 0, 0]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:303 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-0, -0, -0, -0]), + ]), + [i16x8([0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:306 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([1, 1, 1, 1]), + ]), + [i16x8([0x8000, 0x4080, 0x8000, 0x4080, 0x8000, 0x4080, 0x8000, 0x4080])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:309 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-1, -1, -1, -1]), + ]), + [i16x8([0x8000, 0xc080, 0x8000, 0xc080, 0x8000, 0xc080, 0x8000, 0xc080])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:312 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i16x8([0x1, 0x8081, 0x1, 0x8081, 0x1, 0x8081, 0x1, 0x8081])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:315 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i16x8([0x1, 0x81, 0x1, 0x81, 0x1, 0x81, 0x1, 0x81])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:318 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i16x8([0x1, 0x8041, 0x1, 0x8041, 0x1, 0x8041, 0x1, 0x8041])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:321 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9]), + ]), + [i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:324 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:327 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0xad9c, 0xad9c, 0xad9c, 0xad9c, 0xad9c, 0xad9c, 0xad9c, 0xad9c])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:330 +assert_return( + () => invoke($0, `i16x8.sub`, [ + i16x8([0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0x4444, 0x4444, 0x4444, 0x4444, 0x4444, 0x4444, 0x4444, 0x4444])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:335 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:338 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:341 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:344 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:347 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:350 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:353 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:356 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:359 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:362 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:365 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:368 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:371 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:374 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:377 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:380 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:383 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:386 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:389 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:392 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:395 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:398 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:401 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:404 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:407 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:410 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:413 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:416 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:419 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:422 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:425 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + ]), + [i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:428 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:431 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:434 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:437 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:440 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:443 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:446 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:449 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000]), + i8x16([0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:452 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:455 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i32x4([0x20002, 0x20002, 0x20002, 0x20002]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:458 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:461 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([0, 0, 0, 0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:464 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-0, -0, -0, -0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:467 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([1, 1, 1, 1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:470 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-1, -1, -1, -1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:473 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i16x8([0x0, 0x7f80, 0x0, 0x7f80, 0x0, 0x7f80, 0x0, 0x7f80])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:476 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i16x8([0x0, 0xff80, 0x0, 0xff80, 0x0, 0xff80, 0x0, 0xff80])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:479 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i16x8([0x0, 0x7fc0, 0x0, 0x7fc0, 0x0, 0x7fc0, 0x0, 0x7fc0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:482 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9]), + ]), + [i16x8([0x0, 0xffff, 0xfffc, 0xfff7, 0xfff0, 0xffe7, 0xffdc, 0xffcf])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:485 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0x2, 0x8, 0x12, 0x20, 0x32, 0x48, 0x62])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:488 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + ]), + [i16x8([0x546d, 0x546d, 0x546d, 0x546d, 0x546d, 0x546d, 0x546d, 0x546d])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:491 +assert_return( + () => invoke($0, `i16x8.mul`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef]), + ]), + [i16x8([0xa28c, 0xa28c, 0xa28c, 0xa28c, 0xa28c, 0xa28c, 0xa28c, 0xa28c])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:496 +assert_return( + () => invoke($0, `i16x8.neg`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:498 +assert_return( + () => invoke($0, `i16x8.neg`, [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:500 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:502 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + ]), + [i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:504 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:506 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:508 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:510 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:512 +assert_return( + () => invoke($0, `i16x8.neg`, [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:514 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:516 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:518 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:520 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:522 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:524 +assert_return( + () => invoke($0, `i16x8.neg`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:528 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.neg (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:529 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.add (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:530 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.sub (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:531 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.mul (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:535 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.neg-arg-empty (result v128) + (i16x8.neg) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:543 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.add-1st-arg-empty (result v128) + (i16x8.add (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:551 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.add-arg-empty (result v128) + (i16x8.add) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:559 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.sub-1st-arg-empty (result v128) + (i16x8.sub (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:567 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.sub-arg-empty (result v128) + (i16x8.sub) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:575 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.mul-1st-arg-empty (result v128) + (i16x8.mul (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:583 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.mul-arg-empty (result v128) + (i16x8.mul) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith.wast:593 +let $1 = instantiate(`(module + (func (export "add-sub") (param v128 v128 v128) (result v128) + (i16x8.add (i16x8.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-add") (param v128 v128 v128) (result v128) + (i16x8.mul (i16x8.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-sub") (param v128 v128 v128) (result v128) + (i16x8.mul (i16x8.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "sub-add") (param v128 v128 v128) (result v128) + (i16x8.sub (i16x8.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "add-neg") (param v128 v128) (result v128) + (i16x8.add (i16x8.neg (local.get 0)) (local.get 1))) + (func (export "mul-neg") (param v128 v128) (result v128) + (i16x8.mul (i16x8.neg (local.get 0)) (local.get 1))) + (func (export "sub-neg") (param v128 v128) (result v128) + (i16x8.sub (i16x8.neg (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_i16x8_arith.wast:610 +assert_return( + () => invoke($1, `add-sub`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:614 +assert_return( + () => invoke($1, `mul-add`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x0, 0x4, 0x8, 0xc, 0x10, 0x14, 0x18, 0x1c])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:618 +assert_return( + () => invoke($1, `mul-sub`, [ + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + ]), + [i16x8([0x0, 0x1, 0x4, 0x9, 0x10, 0x19, 0x24, 0x31])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:622 +assert_return( + () => invoke($1, `sub-add`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:626 +assert_return( + () => invoke($1, `add-neg`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:629 +assert_return( + () => invoke($1, `mul-neg`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x0, 0xfffe, 0xfffc, 0xfffa, 0xfff8, 0xfff6, 0xfff4, 0xfff2])], +); + +// ./test/core/simd/simd_i16x8_arith.wast:632 +assert_return( + () => invoke($1, `sub-neg`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + ]), + [i16x8([0x0, 0xfffe, 0xfffc, 0xfffa, 0xfff8, 0xfff6, 0xfff4, 0xfff2])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_arith2.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_arith2.wast.js new file mode 100644 index 0000000000..759c59683b --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_arith2.wast.js @@ -0,0 +1,1558 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i16x8_arith2.wast + +// ./test/core/simd/simd_i16x8_arith2.wast:3 +let $0 = instantiate(`(module + (func (export "i16x8.min_s") (param v128 v128) (result v128) (i16x8.min_s (local.get 0) (local.get 1))) + (func (export "i16x8.min_u") (param v128 v128) (result v128) (i16x8.min_u (local.get 0) (local.get 1))) + (func (export "i16x8.max_s") (param v128 v128) (result v128) (i16x8.max_s (local.get 0) (local.get 1))) + (func (export "i16x8.max_u") (param v128 v128) (result v128) (i16x8.max_u (local.get 0) (local.get 1))) + (func (export "i16x8.avgr_u") (param v128 v128) (result v128) (i16x8.avgr_u (local.get 0) (local.get 1))) + (func (export "i16x8.abs") (param v128) (result v128) (i16x8.abs (local.get 0))) + (func (export "i16x8.min_s_with_const_0") (result v128) (i16x8.min_s (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535) (v128.const i16x8 65535 65535 16384 16384 32767 32767 -32768 -32768))) + (func (export "i16x8.min_s_with_const_1") (result v128) (i16x8.min_s (v128.const i16x8 0 0 1 1 2 2 3 3) (v128.const i16x8 3 3 2 2 1 1 0 0))) + (func (export "i16x8.min_u_with_const_2") (result v128) (i16x8.min_u (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535) (v128.const i16x8 65535 65535 16384 16384 32767 32767 -32768 -32768))) + (func (export "i16x8.min_u_with_const_3") (result v128) (i16x8.min_u (v128.const i16x8 0 0 1 1 2 2 3 3) (v128.const i16x8 3 3 2 2 1 1 0 0))) + (func (export "i16x8.max_s_with_const_4") (result v128) (i16x8.max_s (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535) (v128.const i16x8 65535 65535 16384 16384 32767 32767 -32768 -32768))) + (func (export "i16x8.max_s_with_const_5") (result v128) (i16x8.max_s (v128.const i16x8 0 0 1 1 2 2 3 3) (v128.const i16x8 3 3 2 2 1 1 0 0))) + (func (export "i16x8.max_u_with_const_6") (result v128) (i16x8.max_u (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535) (v128.const i16x8 65535 65535 16384 16384 32767 32767 -32768 -32768))) + (func (export "i16x8.max_u_with_const_7") (result v128) (i16x8.max_u (v128.const i16x8 0 0 1 1 2 2 3 3) (v128.const i16x8 3 3 2 2 1 1 0 0))) + (func (export "i16x8.avgr_u_with_const_8") (result v128) (i16x8.avgr_u (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535) (v128.const i16x8 65535 65535 16384 16384 32767 32767 -32768 -32768))) + (func (export "i16x8.avgr_u_with_const_9") (result v128) (i16x8.avgr_u (v128.const i16x8 0 0 1 1 2 2 3 3) (v128.const i16x8 3 3 2 2 1 1 0 0))) + (func (export "i16x8.abs_with_const_10") (result v128) (i16x8.abs (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535))) + (func (export "i16x8.min_s_with_const_11") (param v128) (result v128) (i16x8.min_s (local.get 0) (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535))) + (func (export "i16x8.min_s_with_const_12") (param v128) (result v128) (i16x8.min_s (local.get 0) (v128.const i16x8 0 0 1 1 2 2 3 3))) + (func (export "i16x8.min_u_with_const_13") (param v128) (result v128) (i16x8.min_u (local.get 0) (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535))) + (func (export "i16x8.min_u_with_const_14") (param v128) (result v128) (i16x8.min_u (local.get 0) (v128.const i16x8 0 0 1 1 2 2 3 3))) + (func (export "i16x8.max_s_with_const_15") (param v128) (result v128) (i16x8.max_s (local.get 0) (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535))) + (func (export "i16x8.max_s_with_const_16") (param v128) (result v128) (i16x8.max_s (local.get 0) (v128.const i16x8 0 0 1 1 2 2 3 3))) + (func (export "i16x8.max_u_with_const_17") (param v128) (result v128) (i16x8.max_u (local.get 0) (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535))) + (func (export "i16x8.max_u_with_const_18") (param v128) (result v128) (i16x8.max_u (local.get 0) (v128.const i16x8 0 0 1 1 2 2 3 3))) + (func (export "i16x8.avgr_u_with_const_19") (param v128) (result v128) (i16x8.avgr_u (local.get 0) (v128.const i16x8 -32768 -32768 32767 32767 16384 16384 65535 65535))) + (func (export "i16x8.avgr_u_with_const_20") (param v128) (result v128) (i16x8.avgr_u (local.get 0) (v128.const i16x8 0 0 1 1 2 2 3 3))) +)`); + +// ./test/core/simd/simd_i16x8_arith2.wast:33 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:36 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:39 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:42 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:45 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:48 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:51 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:54 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:57 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:60 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:63 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:66 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:69 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:72 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:75 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:78 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:81 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:84 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:87 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:90 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:93 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:96 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:99 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:102 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:105 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:108 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:111 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:114 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:117 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:120 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:123 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:126 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:129 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:132 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:135 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:138 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:141 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:144 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:147 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:150 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:153 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:156 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:159 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:162 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:165 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:168 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:171 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x8000, 0x8000, 0x8000, 0x8000, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:174 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:177 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:180 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:183 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x8040, 0x8040, 0x8040, 0x8040, 0x8040, 0x8040, 0x8040, 0x8040])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:186 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:189 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:192 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:195 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:198 +assert_return( + () => invoke($0, `i16x8.abs`, [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:200 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:202 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:204 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:206 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:208 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:210 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:212 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:214 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:216 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0xff85, 0xff85, 0xff85, 0xff85, 0xff85, 0xff85, 0xff85, 0xff85]), + ]), + [i16x8([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:218 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:220 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:222 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:224 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:228 +assert_return( + () => invoke($0, `i16x8.min_s_with_const_0`, []), + [i16x8([0x8000, 0x8000, 0x4000, 0x4000, 0x4000, 0x4000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:229 +assert_return( + () => invoke($0, `i16x8.min_s_with_const_1`, []), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:230 +assert_return( + () => invoke($0, `i16x8.min_u_with_const_2`, []), + [i16x8([0x8000, 0x8000, 0x4000, 0x4000, 0x4000, 0x4000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:231 +assert_return( + () => invoke($0, `i16x8.min_u_with_const_3`, []), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:232 +assert_return( + () => invoke($0, `i16x8.max_s_with_const_4`, []), + [i16x8([0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:233 +assert_return( + () => invoke($0, `i16x8.max_s_with_const_5`, []), + [i16x8([0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:234 +assert_return( + () => invoke($0, `i16x8.max_u_with_const_6`, []), + [i16x8([0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:235 +assert_return( + () => invoke($0, `i16x8.max_u_with_const_7`, []), + [i16x8([0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:236 +assert_return( + () => invoke($0, `i16x8.avgr_u_with_const_8`, []), + [i16x8([0xc000, 0xc000, 0x6000, 0x6000, 0x6000, 0x6000, 0xc000, 0xc000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:237 +assert_return( + () => invoke($0, `i16x8.avgr_u_with_const_9`, []), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:238 +assert_return( + () => invoke($0, `i16x8.abs_with_const_10`, []), + [i16x8([0x8000, 0x8000, 0x7fff, 0x7fff, 0x4000, 0x4000, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:241 +assert_return( + () => invoke($0, `i16x8.min_s_with_const_11`, [ + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x4000, 0x4000, 0x4000, 0x4000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:243 +assert_return( + () => invoke($0, `i16x8.min_s_with_const_12`, [ + i16x8([0x3, 0x3, 0x2, 0x2, 0x1, 0x1, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:245 +assert_return( + () => invoke($0, `i16x8.min_u_with_const_13`, [ + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x4000, 0x4000, 0x4000, 0x4000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:247 +assert_return( + () => invoke($0, `i16x8.min_u_with_const_14`, [ + i16x8([0x3, 0x3, 0x2, 0x2, 0x1, 0x1, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:249 +assert_return( + () => invoke($0, `i16x8.max_s_with_const_15`, [ + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:251 +assert_return( + () => invoke($0, `i16x8.max_s_with_const_16`, [ + i16x8([0x3, 0x3, 0x2, 0x2, 0x1, 0x1, 0x0, 0x0]), + ]), + [i16x8([0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:253 +assert_return( + () => invoke($0, `i16x8.max_u_with_const_17`, [ + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:255 +assert_return( + () => invoke($0, `i16x8.max_u_with_const_18`, [ + i16x8([0x3, 0x3, 0x2, 0x2, 0x1, 0x1, 0x0, 0x0]), + ]), + [i16x8([0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:257 +assert_return( + () => invoke($0, `i16x8.avgr_u_with_const_19`, [ + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0xc000, 0xc000, 0x6000, 0x6000, 0x6000, 0x6000, 0xc000, 0xc000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:259 +assert_return( + () => invoke($0, `i16x8.avgr_u_with_const_20`, [ + i16x8([0x3, 0x3, 0x2, 0x2, 0x1, 0x1, 0x0, 0x0]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:263 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x8000, 0x8000, 0x7fff, 0x7fff, 0x4000, 0x4000, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x4000, 0x4000, 0x4000, 0x4000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:266 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x80, 0x80]), + i16x8([0x0, 0x0, 0x2, 0x2, 0x1, 0x1, 0x80, 0x80]), + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:269 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x8000, 0x8000, 0x7fff, 0x7fff, 0x4000, 0x4000, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x4000, 0x4000, 0x4000, 0x4000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:272 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x80, 0x80]), + i16x8([0x0, 0x0, 0x2, 0x2, 0x1, 0x1, 0x80, 0x80]), + ]), + [i16x8([0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:275 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x8000, 0x8000, 0x7fff, 0x7fff, 0x4000, 0x4000, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:278 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x80, 0x80]), + i16x8([0x0, 0x0, 0x2, 0x2, 0x1, 0x1, 0x80, 0x80]), + ]), + [i16x8([0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:281 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x8000, 0x8000, 0x7fff, 0x7fff, 0x4000, 0x4000, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:284 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x80, 0x80]), + i16x8([0x0, 0x0, 0x2, 0x2, 0x1, 0x1, 0x80, 0x80]), + ]), + [i16x8([0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:287 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x8000, 0x8000, 0x7fff, 0x7fff, 0x4000, 0x4000, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0x4000, 0x4000, 0x7fff, 0x7fff, 0x8000, 0x8000]), + ]), + [i16x8([0xc000, 0xc000, 0x6000, 0x6000, 0x6000, 0x6000, 0xc000, 0xc000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:290 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x80, 0x80]), + i16x8([0x0, 0x0, 0x2, 0x2, 0x1, 0x1, 0x80, 0x80]), + ]), + [i16x8([0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:293 +assert_return( + () => invoke($0, `i16x8.abs`, [ + i16x8([0x8000, 0x8000, 0x7fff, 0x7fff, 0x4000, 0x4000, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x7fff, 0x7fff, 0x4000, 0x4000, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:297 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:300 +assert_return( + () => invoke($0, `i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:303 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:306 +assert_return( + () => invoke($0, `i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:309 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:312 +assert_return( + () => invoke($0, `i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:315 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:318 +assert_return( + () => invoke($0, `i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:321 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:324 +assert_return( + () => invoke($0, `i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:327 +assert_return( + () => invoke($0, `i16x8.abs`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:329 +assert_return( + () => invoke($0, `i16x8.abs`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:331 +assert_return( + () => invoke($0, `i16x8.abs`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:333 +assert_return( + () => invoke($0, `i16x8.abs`, [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:337 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.avgr (v128.const i16x8 0 0 0 0 0 0 0 0) (v128.const i16x8 1 1 1 1 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:338 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i16x8.avgr_s (v128.const i16x8 0 0 0 0 0 0 0 0) (v128.const i16x8 1 1 1 1 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:341 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.min_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:342 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.min_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:343 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.max_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:344 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.max_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:345 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.avgr_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:346 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.abs (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:350 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.min_s-1st-arg-empty (result v128) + (i16x8.min_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:358 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.min_s-arg-empty (result v128) + (i16x8.min_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:366 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.min_u-1st-arg-empty (result v128) + (i16x8.min_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:374 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.min_u-arg-empty (result v128) + (i16x8.min_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:382 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.max_s-1st-arg-empty (result v128) + (i16x8.max_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:390 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.max_s-arg-empty (result v128) + (i16x8.max_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:398 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.max_u-1st-arg-empty (result v128) + (i16x8.max_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:406 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.max_u-arg-empty (result v128) + (i16x8.max_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:414 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.avgr_u-1st-arg-empty (result v128) + (i16x8.avgr_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:422 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.avgr_u-arg-empty (result v128) + (i16x8.avgr_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:430 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.abs-arg-empty (result v128) + (i16x8.abs) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_arith2.wast:440 +let $1 = instantiate(`(module + (func (export "i16x8.min_s-i16x8.avgr_u") (param v128 v128 v128) (result v128) (i16x8.min_s (i16x8.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_s-i16x8.max_u") (param v128 v128 v128) (result v128) (i16x8.min_s (i16x8.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_s-i16x8.max_s") (param v128 v128 v128) (result v128) (i16x8.min_s (i16x8.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_s-i16x8.min_u") (param v128 v128 v128) (result v128) (i16x8.min_s (i16x8.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_s-i16x8.min_s") (param v128 v128 v128) (result v128) (i16x8.min_s (i16x8.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_s-i16x8.abs") (param v128 v128) (result v128) (i16x8.min_s (i16x8.abs (local.get 0))(local.get 1))) + (func (export "i16x8.abs-i16x8.min_s") (param v128 v128) (result v128) (i16x8.abs (i16x8.min_s (local.get 0) (local.get 1)))) + (func (export "i16x8.min_u-i16x8.avgr_u") (param v128 v128 v128) (result v128) (i16x8.min_u (i16x8.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_u-i16x8.max_u") (param v128 v128 v128) (result v128) (i16x8.min_u (i16x8.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_u-i16x8.max_s") (param v128 v128 v128) (result v128) (i16x8.min_u (i16x8.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_u-i16x8.min_u") (param v128 v128 v128) (result v128) (i16x8.min_u (i16x8.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_u-i16x8.min_s") (param v128 v128 v128) (result v128) (i16x8.min_u (i16x8.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.min_u-i16x8.abs") (param v128 v128) (result v128) (i16x8.min_u (i16x8.abs (local.get 0))(local.get 1))) + (func (export "i16x8.abs-i16x8.min_u") (param v128 v128) (result v128) (i16x8.abs (i16x8.min_u (local.get 0) (local.get 1)))) + (func (export "i16x8.max_s-i16x8.avgr_u") (param v128 v128 v128) (result v128) (i16x8.max_s (i16x8.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_s-i16x8.max_u") (param v128 v128 v128) (result v128) (i16x8.max_s (i16x8.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_s-i16x8.max_s") (param v128 v128 v128) (result v128) (i16x8.max_s (i16x8.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_s-i16x8.min_u") (param v128 v128 v128) (result v128) (i16x8.max_s (i16x8.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_s-i16x8.min_s") (param v128 v128 v128) (result v128) (i16x8.max_s (i16x8.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_s-i16x8.abs") (param v128 v128) (result v128) (i16x8.max_s (i16x8.abs (local.get 0))(local.get 1))) + (func (export "i16x8.abs-i16x8.max_s") (param v128 v128) (result v128) (i16x8.abs (i16x8.max_s (local.get 0) (local.get 1)))) + (func (export "i16x8.max_u-i16x8.avgr_u") (param v128 v128 v128) (result v128) (i16x8.max_u (i16x8.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_u-i16x8.max_u") (param v128 v128 v128) (result v128) (i16x8.max_u (i16x8.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_u-i16x8.max_s") (param v128 v128 v128) (result v128) (i16x8.max_u (i16x8.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_u-i16x8.min_u") (param v128 v128 v128) (result v128) (i16x8.max_u (i16x8.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_u-i16x8.min_s") (param v128 v128 v128) (result v128) (i16x8.max_u (i16x8.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.max_u-i16x8.abs") (param v128 v128) (result v128) (i16x8.max_u (i16x8.abs (local.get 0))(local.get 1))) + (func (export "i16x8.abs-i16x8.max_u") (param v128 v128) (result v128) (i16x8.abs (i16x8.max_u (local.get 0) (local.get 1)))) + (func (export "i16x8.avgr_u-i16x8.avgr_u") (param v128 v128 v128) (result v128) (i16x8.avgr_u (i16x8.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.avgr_u-i16x8.max_u") (param v128 v128 v128) (result v128) (i16x8.avgr_u (i16x8.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.avgr_u-i16x8.max_s") (param v128 v128 v128) (result v128) (i16x8.avgr_u (i16x8.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.avgr_u-i16x8.min_u") (param v128 v128 v128) (result v128) (i16x8.avgr_u (i16x8.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.avgr_u-i16x8.min_s") (param v128 v128 v128) (result v128) (i16x8.avgr_u (i16x8.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i16x8.avgr_u-i16x8.abs") (param v128 v128) (result v128) (i16x8.avgr_u (i16x8.abs (local.get 0))(local.get 1))) + (func (export "i16x8.abs-i16x8.avgr_u") (param v128 v128) (result v128) (i16x8.abs (i16x8.avgr_u (local.get 0) (local.get 1)))) + (func (export "i16x8.abs-i16x8.abs") (param v128) (result v128) (i16x8.abs (i16x8.abs (local.get 0)))) +)`); + +// ./test/core/simd/simd_i16x8_arith2.wast:479 +assert_return( + () => invoke($1, `i16x8.min_s-i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:483 +assert_return( + () => invoke($1, `i16x8.min_s-i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:487 +assert_return( + () => invoke($1, `i16x8.min_s-i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:491 +assert_return( + () => invoke($1, `i16x8.min_s-i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:495 +assert_return( + () => invoke($1, `i16x8.min_s-i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:499 +assert_return( + () => invoke($1, `i16x8.min_s-i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:502 +assert_return( + () => invoke($1, `i16x8.abs-i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:505 +assert_return( + () => invoke($1, `i16x8.min_u-i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:509 +assert_return( + () => invoke($1, `i16x8.min_u-i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:513 +assert_return( + () => invoke($1, `i16x8.min_u-i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:517 +assert_return( + () => invoke($1, `i16x8.min_u-i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:521 +assert_return( + () => invoke($1, `i16x8.min_u-i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:525 +assert_return( + () => invoke($1, `i16x8.min_u-i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:528 +assert_return( + () => invoke($1, `i16x8.abs-i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:531 +assert_return( + () => invoke($1, `i16x8.max_s-i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:535 +assert_return( + () => invoke($1, `i16x8.max_s-i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:539 +assert_return( + () => invoke($1, `i16x8.max_s-i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:543 +assert_return( + () => invoke($1, `i16x8.max_s-i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:547 +assert_return( + () => invoke($1, `i16x8.max_s-i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:551 +assert_return( + () => invoke($1, `i16x8.max_s-i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:554 +assert_return( + () => invoke($1, `i16x8.abs-i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:557 +assert_return( + () => invoke($1, `i16x8.max_u-i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:561 +assert_return( + () => invoke($1, `i16x8.max_u-i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:565 +assert_return( + () => invoke($1, `i16x8.max_u-i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:569 +assert_return( + () => invoke($1, `i16x8.max_u-i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:573 +assert_return( + () => invoke($1, `i16x8.max_u-i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:577 +assert_return( + () => invoke($1, `i16x8.max_u-i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:580 +assert_return( + () => invoke($1, `i16x8.abs-i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:583 +assert_return( + () => invoke($1, `i16x8.avgr_u-i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:587 +assert_return( + () => invoke($1, `i16x8.avgr_u-i16x8.max_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:591 +assert_return( + () => invoke($1, `i16x8.avgr_u-i16x8.max_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:595 +assert_return( + () => invoke($1, `i16x8.avgr_u-i16x8.min_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:599 +assert_return( + () => invoke($1, `i16x8.avgr_u-i16x8.min_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:603 +assert_return( + () => invoke($1, `i16x8.avgr_u-i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:606 +assert_return( + () => invoke($1, `i16x8.abs-i16x8.avgr_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_arith2.wast:609 +assert_return( + () => invoke($1, `i16x8.abs-i16x8.abs`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_cmp.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_cmp.wast.js new file mode 100644 index 0000000000..f0fdcc0868 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_cmp.wast.js @@ -0,0 +1,4369 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i16x8_cmp.wast + +// ./test/core/simd/simd_i16x8_cmp.wast:4 +let $0 = instantiate(`(module + (func (export "eq") (param $$x v128) (param $$y v128) (result v128) (i16x8.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x v128) (param $$y v128) (result v128) (i16x8.ne (local.get $$x) (local.get $$y))) + (func (export "lt_s") (param $$x v128) (param $$y v128) (result v128) (i16x8.lt_s (local.get $$x) (local.get $$y))) + (func (export "lt_u") (param $$x v128) (param $$y v128) (result v128) (i16x8.lt_u (local.get $$x) (local.get $$y))) + (func (export "le_s") (param $$x v128) (param $$y v128) (result v128) (i16x8.le_s (local.get $$x) (local.get $$y))) + (func (export "le_u") (param $$x v128) (param $$y v128) (result v128) (i16x8.le_u (local.get $$x) (local.get $$y))) + (func (export "gt_s") (param $$x v128) (param $$y v128) (result v128) (i16x8.gt_s (local.get $$x) (local.get $$y))) + (func (export "gt_u") (param $$x v128) (param $$y v128) (result v128) (i16x8.gt_u (local.get $$x) (local.get $$y))) + (func (export "ge_s") (param $$x v128) (param $$y v128) (result v128) (i16x8.ge_s (local.get $$x) (local.get $$y))) + (func (export "ge_u") (param $$x v128) (param $$y v128) (result v128) (i16x8.ge_u (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/simd/simd_i16x8_cmp.wast:23 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:26 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:29 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:32 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:35 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:38 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:41 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:46 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:49 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:52 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:55 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:58 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:63 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:66 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:69 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:72 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:75 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:78 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:81 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:86 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:89 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:94 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:97 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:100 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:103 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8000, 0x8001, 0x8002, 0x8003, 0x8004, 0x8005, 0x8006, 0x8007]), + i16x8([0x8007, 0x8006, 0x8005, 0x8004, 0x8003, 0x8002, 0x8001, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:106 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8000, 0x8001, 0xfffe, 0xffff, 0x0, 0xffff, 0x8001, 0x8000]), + i16x8([0x8000, 0x8001, 0xffff, 0x0, 0xffff, 0xfffe, 0x8001, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:111 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:114 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:117 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:120 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:123 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:126 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:129 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:134 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:137 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:140 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:143 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:146 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:149 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x8000, 0x8000]), + i32x4([0xffff, 0x0, 0x1, 0x8000]), + ]), + [i16x8([0xffff, 0x0, 0xffff, 0xffff, 0xffff, 0x0, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:152 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:155 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:158 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:167 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:170 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:173 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:176 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:179 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:182 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:185 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:190 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:193 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:196 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:199 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:202 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:207 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:210 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:213 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:216 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:219 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:222 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:225 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xff, 0x7fff, 0x0, 0x0, 0x1, 0x2, 0xfffe, 0xffff]), + i16x8([0xff, 0x7fff, 0x0, 0x0, 0x1, 0x2, 0xfffe, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:230 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:233 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:238 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:241 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:244 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:247 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x8081, 0x8283, 0xfdfe, 0xff00, 0x1, 0x27f, 0x80fd, 0xfeff]), + i16x8([0xfeff, 0x80fd, 0x27f, 0x1, 0xff00, 0xfdfe, 0x8283, 0x8081]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:250 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x80, 0x81, 0x82, 0x83, 0x0, 0xff, 0x7ffe, 0x7fff]), + i16x8([0x7fff, 0x7ffe, 0xff, 0x0, 0x83, 0x82, 0x81, 0x1c]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:255 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:258 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:261 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:264 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:267 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:270 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:273 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:278 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:281 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:284 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:287 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:290 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:293 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [i16x8([0x0, 0xffff, 0x0, 0x0, 0x0, 0xffff, 0x0, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:296 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:299 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:302 +assert_return( + () => invoke($0, `ne`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:311 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:314 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:317 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:320 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:323 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:326 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:329 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:332 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:335 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:338 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:341 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:344 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:347 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:350 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:353 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:356 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:359 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:362 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:365 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xff, 0x7fff, 0x0, 0x0, 0x1, 0x2, 0xfffe, 0xffff]), + i16x8([0xff, 0x7fff, 0x0, 0x0, 0x1, 0x2, 0xfffe, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:368 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:371 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:376 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:379 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:382 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0x0, 0x0, 0x0, 0x0, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:385 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x8081, 0x8283, 0xfdfe, 0xff00, 0x1, 0x27f, 0x80fd, 0xfeff]), + i16x8([0xfeff, 0x80fd, 0x27f, 0x1, 0xff00, 0xfdfe, 0x8283, 0x8081]), + ]), + [i16x8([0xffff, 0x0, 0xffff, 0xffff, 0x0, 0x0, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:388 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x80, 0x81, 0x82, 0x83, 0x0, 0xff, 0x7ffe, 0x7fff]), + i16x8([0x7fff, 0x7ffe, 0xff, 0x0, 0x83, 0x82, 0x81, 0x1c]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0x0, 0xffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:393 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:396 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:399 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:402 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:405 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:408 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:411 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:416 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:419 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:422 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:425 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:428 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:431 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [i16x8([0x0, 0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:434 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:437 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:440 +assert_return( + () => invoke($0, `lt_s`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:449 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:452 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:455 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:458 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:461 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:464 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:467 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:472 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:475 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:478 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:481 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:484 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:489 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:492 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:495 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:498 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:501 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:504 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:507 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xff, 0x7fff, 0x0, 0x0, 0x1, 0x2, 0xfffe, 0xffff]), + i16x8([0xff, 0x7fff, 0x0, 0x0, 0x1, 0x2, 0xfffe, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:512 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:515 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:520 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:523 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:526 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:529 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x8081, 0x8283, 0xfdfe, 0xff00, 0x1, 0x27f, 0x80fd, 0xfeff]), + i16x8([0xfeff, 0x80fd, 0x27f, 0x1, 0xff00, 0xfdfe, 0x8283, 0x8081]), + ]), + [i16x8([0xffff, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:532 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x80, 0x81, 0x82, 0x83, 0x0, 0xff, 0x7ffe, 0x7fff]), + i16x8([0x7fff, 0x7ffe, 0xff, 0x0, 0x83, 0x82, 0x81, 0x1c]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0x0, 0xffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:537 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:540 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:543 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:546 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:549 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:552 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:555 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:560 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:563 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:566 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:569 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:572 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:575 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [i16x8([0x0, 0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:578 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:581 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:584 +assert_return( + () => invoke($0, `lt_u`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:593 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:596 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:599 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:602 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:605 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:608 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:611 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:616 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:619 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:622 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:625 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:628 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:633 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:636 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:639 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:642 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:645 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:648 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:651 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:656 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:659 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:664 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:667 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:670 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0x0, 0x0, 0x0, 0x0, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:673 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x8000, 0x8001, 0x8002, 0x8003, 0x8004, 0x8005, 0x8006, 0x8007]), + i16x8([0x8007, 0x8006, 0x8005, 0x8004, 0x8003, 0x8002, 0x8001, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:676 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x8000, 0x8001, 0xfffe, 0xffff, 0x0, 0xffff, 0x8001, 0x8000]), + i16x8([0x8000, 0x8001, 0xffff, 0x0, 0xffff, 0xfffe, 0x8001, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:681 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:684 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:687 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:690 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:693 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:696 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:699 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:704 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:707 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:710 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:713 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:716 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:719 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:722 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:725 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:728 +assert_return( + () => invoke($0, `le_s`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:737 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:740 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:743 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:746 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:749 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:752 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:755 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:760 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:763 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:766 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:769 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:772 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:777 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:780 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:783 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:786 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:789 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:792 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:795 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:800 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:803 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:808 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:811 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:814 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:817 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x8000, 0x8001, 0x8002, 0x8003, 0x8004, 0x8005, 0x8006, 0x8007]), + i16x8([0x8007, 0x8006, 0x8005, 0x8004, 0x8003, 0x8002, 0x8001, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:820 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x8000, 0x8001, 0xfffe, 0xffff, 0x0, 0xffff, 0x8001, 0x8000]), + i16x8([0x8000, 0x8001, 0xffff, 0x0, 0xffff, 0xfffe, 0x8001, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0x0, 0xffff, 0x0, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:825 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:828 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:831 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:834 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:837 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:840 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:843 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:848 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:851 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:854 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:857 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:860 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:863 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:866 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:869 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:872 +assert_return( + () => invoke($0, `le_u`, [ + i16x8([0xedcb, 0xedcb, 0xedcb, 0xedcb, 0xedcb, 0xedcb, 0xedcb, 0xedcb]), + i16x8([0xedcc, 0xedcc, 0xedcc, 0xedcc, 0xedcc, 0xedcc, 0xedcc, 0xedcc]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:881 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:884 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:887 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:890 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:893 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:896 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:899 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:904 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:907 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:910 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:913 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:916 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:921 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:924 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:927 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:930 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:933 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:936 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:939 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:944 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:947 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:952 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:955 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:958 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0xffff, 0xffff, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:961 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x8000, 0x8001, 0x8002, 0x8003, 0x8004, 0x8005, 0x8006, 0x8007]), + i16x8([0x8007, 0x8006, 0x8005, 0x8004, 0x8003, 0x8002, 0x8001, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:964 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x8000, 0x8001, 0xfffe, 0xffff, 0x0, 0xffff, 0x8001, 0x8000]), + i16x8([0x8000, 0x8001, 0xffff, 0x0, 0xffff, 0xfffe, 0x8001, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:969 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:972 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:975 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:978 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:981 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:984 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:987 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:992 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:995 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:998 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1001 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1004 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1007 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x8000, 0x8000]), + i32x4([0xffff, 0x0, 0x1, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1010 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1013 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1016 +assert_return( + () => invoke($0, `gt_s`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1025 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1028 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1031 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1034 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1037 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1040 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1043 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1048 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1051 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1054 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1057 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1060 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1065 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1068 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1071 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1074 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1077 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1080 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1083 +assert_return( + () => invoke($0, `eq`, [ + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1088 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1091 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1096 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1099 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1102 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1105 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x8000, 0x8001, 0x8002, 0x8003, 0x8004, 0x8005, 0x8006, 0x8007]), + i16x8([0x8007, 0x8006, 0x8005, 0x8004, 0x8003, 0x8002, 0x8001, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1108 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x8000, 0x8001, 0xfffe, 0xffff, 0x0, 0xffff, 0x8001, 0x8000]), + i16x8([0x8000, 0x8001, 0xffff, 0x0, 0xffff, 0xfffe, 0x8001, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0xffff, 0x0, 0xffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1113 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1116 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1119 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1122 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1125 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1128 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1131 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1136 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1139 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1142 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1145 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1148 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1151 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0xffff, 0x0, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1154 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1157 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1160 +assert_return( + () => invoke($0, `gt_u`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1169 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1172 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1175 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1178 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1181 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1184 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1187 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1192 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1195 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1198 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1201 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1204 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1209 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1212 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1215 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1218 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1221 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1224 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1227 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1232 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1235 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1240 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1243 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1246 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0xffff, 0xffff, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1249 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x8000, 0x8001, 0x8002, 0x8003, 0x8004, 0x8005, 0x8006, 0x8007]), + i16x8([0x8007, 0x8006, 0x8005, 0x8004, 0x8003, 0x8002, 0x8001, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1252 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x8000, 0x8001, 0xfffe, 0xffff, 0x0, 0xffff, 0x8001, 0x8000]), + i16x8([0x8000, 0x8001, 0xffff, 0x0, 0xffff, 0xfffe, 0x8001, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1257 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1260 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1263 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1266 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1269 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1272 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1275 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1280 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1283 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1286 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1289 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1292 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1295 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x8000, 0x8000]), + i32x4([0xffff, 0x0, 0x1, 0x8000]), + ]), + [i16x8([0xffff, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1298 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1301 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1304 +assert_return( + () => invoke($0, `ge_s`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1313 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1316 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1319 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1322 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1325 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1328 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1331 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + i16x8([0x100, 0x302, 0x904, 0x1110, 0xa12, 0x1a0b, 0xaa1b, 0xffab]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1336 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1339 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1342 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1345 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1348 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1353 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1356 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1359 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1362 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1365 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1368 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1371 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + i16x8([0x8000, 0xfffe, 0xffff, 0x0, 0x0, 0x1, 0x2, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1376 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0xc300, 0x0, 0xc2fe, 0x0, 0xbf80, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1379 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0x3f80, 0x0, 0x42fe, 0x0, 0x4300, 0x0, 0x437f]), + f32x4([1, 127, 128, 255]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1384 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f, 0xf0f]), + i16x8([0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0, 0xf0f0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1387 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1390 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x1, 0x203, 0x409, 0x1011, 0x120a, 0xb1a, 0x1baa, 0xabff]), + i16x8([0xffab, 0xaa1b, 0x1a0b, 0xa12, 0x1110, 0x904, 0x302, 0x100]), + ]), + [i16x8([0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1393 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x8000, 0x8001, 0x8002, 0x8003, 0x8004, 0x8005, 0x8006, 0x8007]), + i16x8([0x8007, 0x8006, 0x8005, 0x8004, 0x8003, 0x8002, 0x8001, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1396 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x8000, 0x8001, 0xfffe, 0xffff, 0x0, 0xffff, 0x8001, 0x8000]), + i16x8([0x8000, 0x8001, 0xffff, 0x0, 0xffff, 0xfffe, 0x8001, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0x0, 0xffff, 0x0, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1401 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1404 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1407 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1410 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1413 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1416 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1419 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1424 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1427 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1430 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1433 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1436 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1439 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x8000, 0x8000]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1442 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1445 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1448 +assert_return( + () => invoke($0, `ge_u`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1455 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.eq (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1456 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.ge_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1457 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.ge_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1458 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.gt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1459 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.gt_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1460 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.le_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1461 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.le_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1462 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.lt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1463 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.lt_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1464 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.ne (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1469 +let $1 = instantiate(`(module (memory 1) + (func (export "eq-in-block") + (block + (drop + (block (result v128) + (i16x8.eq + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "ne-in-block") + (block + (drop + (block (result v128) + (i16x8.ne + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "lt_s-in-block") + (block + (drop + (block (result v128) + (i16x8.lt_s + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "le_u-in-block") + (block + (drop + (block (result v128) + (i16x8.le_u + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "gt_u-in-block") + (block + (drop + (block (result v128) + (i16x8.gt_u + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "ge_s-in-block") + (block + (drop + (block (result v128) + (i16x8.ge_s + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "nested-eq") + (drop + (i16x8.eq + (i16x8.eq + (i16x8.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i16x8.eq + (i16x8.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-ne") + (drop + (i16x8.ne + (i16x8.ne + (i16x8.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i16x8.ne + (i16x8.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-lt_s") + (drop + (i16x8.lt_s + (i16x8.lt_s + (i16x8.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.lt_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i16x8.lt_s + (i16x8.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.lt_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-le_u") + (drop + (i16x8.le_u + (i16x8.le_u + (i16x8.le_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i16x8.le_u + (i16x8.le_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-gt_u") + (drop + (i16x8.gt_u + (i16x8.gt_u + (i16x8.gt_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.gt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i16x8.gt_u + (i16x8.gt_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.gt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-ge_s") + (drop + (i16x8.ge_s + (i16x8.ge_s + (i16x8.ge_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.ge_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i16x8.ge_s + (i16x8.ge_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.ge_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "as-param") + (drop + (i16x8.ge_u + (i16x8.eq + (i16x8.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i16x8.ne + (i16x8.gt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i16x8.lt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) +)`); + +// ./test/core/simd/simd_i16x8_cmp.wast:1725 +assert_return(() => invoke($1, `eq-in-block`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1726 +assert_return(() => invoke($1, `ne-in-block`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1727 +assert_return(() => invoke($1, `lt_s-in-block`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1728 +assert_return(() => invoke($1, `le_u-in-block`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1729 +assert_return(() => invoke($1, `gt_u-in-block`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1730 +assert_return(() => invoke($1, `ge_s-in-block`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1731 +assert_return(() => invoke($1, `nested-eq`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1732 +assert_return(() => invoke($1, `nested-ne`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1733 +assert_return(() => invoke($1, `nested-lt_s`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1734 +assert_return(() => invoke($1, `nested-le_u`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1735 +assert_return(() => invoke($1, `nested-gt_u`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1736 +assert_return(() => invoke($1, `nested-ge_s`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1737 +assert_return(() => invoke($1, `as-param`, []), []); + +// ./test/core/simd/simd_i16x8_cmp.wast:1742 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.eq-1st-arg-empty (result v128) + (i16x8.eq (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1750 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.eq-arg-empty (result v128) + (i16x8.eq) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1758 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.ne-1st-arg-empty (result v128) + (i16x8.ne (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1766 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.ne-arg-empty (result v128) + (i16x8.ne) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1774 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.lt_s-1st-arg-empty (result v128) + (i16x8.lt_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1782 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.lt_s-arg-empty (result v128) + (i16x8.lt_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1790 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.lt_u-1st-arg-empty (result v128) + (i16x8.lt_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1798 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.lt_u-arg-empty (result v128) + (i16x8.lt_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1806 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.le_s-1st-arg-empty (result v128) + (i16x8.le_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1814 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.le_s-arg-empty (result v128) + (i16x8.le_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1822 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.le_u-1st-arg-empty (result v128) + (i16x8.le_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1830 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.le_u-arg-empty (result v128) + (i16x8.le_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1838 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.gt_s-1st-arg-empty (result v128) + (i16x8.gt_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1846 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.gt_s-arg-empty (result v128) + (i16x8.gt_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1854 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.gt_u-1st-arg-empty (result v128) + (i16x8.gt_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1862 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.gt_u-arg-empty (result v128) + (i16x8.gt_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1870 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.ge_s-1st-arg-empty (result v128) + (i16x8.ge_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1878 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.ge_s-arg-empty (result v128) + (i16x8.ge_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1886 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.ge_u-1st-arg-empty (result v128) + (i16x8.ge_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_cmp.wast:1894 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.ge_u-arg-empty (result v128) + (i16x8.ge_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_extadd_pairwise_i8x16.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_extadd_pairwise_i8x16.wast.js new file mode 100644 index 0000000000..5a594d4ce4 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_extadd_pairwise_i8x16.wast.js @@ -0,0 +1,184 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:4 +let $0 = instantiate(`(module + (func (export "i16x8.extadd_pairwise_i8x16_s") (param v128) (result v128) (i16x8.extadd_pairwise_i8x16_s (local.get 0))) + (func (export "i16x8.extadd_pairwise_i8x16_u") (param v128) (result v128) (i16x8.extadd_pairwise_i8x16_u (local.get 0))) +)`); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:11 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:13 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:15 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:17 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_s`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [i16x8([0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:19 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_s`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0xff02, 0xff02, 0xff02, 0xff02, 0xff02, 0xff02, 0xff02, 0xff02])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:21 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xff00, 0xff00, 0xff00, 0xff00, 0xff00, 0xff00, 0xff00, 0xff00])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:23 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:25 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:29 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:31 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:33 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1fe, 0x1fe, 0x1fe, 0x1fe, 0x1fe, 0x1fe, 0x1fe, 0x1fe])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:35 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_u`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [i16x8([0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:37 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_u`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0x102, 0x102, 0x102, 0x102, 0x102, 0x102, 0x102, 0x102])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:39 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:41 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:43 +assert_return( + () => invoke($0, `i16x8.extadd_pairwise_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1fe, 0x1fe, 0x1fe, 0x1fe, 0x1fe, 0x1fe, 0x1fe, 0x1fe])], +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:47 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extadd_pairwise_i8x16_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:48 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extadd_pairwise_i8x16_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:52 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extadd_pairwise_i8x16_s-arg-empty (result v128) + (i16x8.extadd_pairwise_i8x16_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extadd_pairwise_i8x16.wast:60 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extadd_pairwise_i8x16_u-arg-empty (result v128) + (i16x8.extadd_pairwise_i8x16_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_extmul_i8x16.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_extmul_i8x16.wast.js new file mode 100644 index 0000000000..4e102de588 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_extmul_i8x16.wast.js @@ -0,0 +1,1066 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:4 +let $0 = instantiate(`(module + (func (export "i16x8.extmul_low_i8x16_s") (param v128 v128) (result v128) (i16x8.extmul_low_i8x16_s (local.get 0) (local.get 1))) + (func (export "i16x8.extmul_high_i8x16_s") (param v128 v128) (result v128) (i16x8.extmul_high_i8x16_s (local.get 0) (local.get 1))) + (func (export "i16x8.extmul_low_i8x16_u") (param v128 v128) (result v128) (i16x8.extmul_low_i8x16_u (local.get 0) (local.get 1))) + (func (export "i16x8.extmul_high_i8x16_u") (param v128 v128) (result v128) (i16x8.extmul_high_i8x16_u (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:13 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:16 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:19 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:22 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:25 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:28 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:31 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [i16x8([0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:34 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [i16x8([0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:37 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:40 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:43 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x1040, 0x1040, 0x1040, 0x1040, 0x1040, 0x1040, 0x1040, 0x1040])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:46 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:49 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:52 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:55 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:58 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:61 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:64 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:67 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:70 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0x3f80, 0x3f80, 0x3f80, 0x3f80, 0x3f80, 0x3f80, 0x3f80, 0x3f80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:73 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:76 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:79 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:82 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:85 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:88 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:93 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:96 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:99 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:102 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:105 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:108 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:111 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [i16x8([0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:114 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [i16x8([0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:117 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:120 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:123 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x1040, 0x1040, 0x1040, 0x1040, 0x1040, 0x1040, 0x1040, 0x1040])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:126 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:129 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:132 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:135 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:138 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:141 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:144 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:147 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:150 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0x3f80, 0x3f80, 0x3f80, 0x3f80, 0x3f80, 0x3f80, 0x3f80, 0x3f80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:153 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:156 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:159 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:162 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:165 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:168 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:173 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:176 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:179 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:182 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:185 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:188 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:191 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [i16x8([0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:194 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [i16x8([0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:197 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x90c0, 0x90c0, 0x90c0, 0x90c0, 0x90c0, 0x90c0, 0x90c0, 0x90c0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:200 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x9000, 0x9000, 0x9000, 0x9000, 0x9000, 0x9000, 0x9000, 0x9000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:203 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x8f40, 0x8f40, 0x8f40, 0x8f40, 0x8f40, 0x8f40, 0x8f40, 0x8f40])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:206 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:209 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:212 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:215 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x817e, 0x817e, 0x817e, 0x817e, 0x817e, 0x817e, 0x817e, 0x817e])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:218 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x807f, 0x807f, 0x807f, 0x807f, 0x807f, 0x807f, 0x807f, 0x807f])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:221 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:224 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:227 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:230 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0x4080, 0x4080, 0x4080, 0x4080, 0x4080, 0x4080, 0x4080, 0x4080])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:233 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:236 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:239 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:242 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7e81, 0x7e81, 0x7e81, 0x7e81, 0x7e81, 0x7e81, 0x7e81, 0x7e81])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:245 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:248 +assert_return( + () => invoke($0, `i16x8.extmul_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:253 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:256 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:259 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:262 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:265 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:268 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:271 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [i16x8([0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0, 0xfc0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:274 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [i16x8([0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:277 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x90c0, 0x90c0, 0x90c0, 0x90c0, 0x90c0, 0x90c0, 0x90c0, 0x90c0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:280 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x9000, 0x9000, 0x9000, 0x9000, 0x9000, 0x9000, 0x9000, 0x9000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:283 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [i16x8([0x8f40, 0x8f40, 0x8f40, 0x8f40, 0x8f40, 0x8f40, 0x8f40, 0x8f40])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:286 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:289 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:292 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:295 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x817e, 0x817e, 0x817e, 0x817e, 0x817e, 0x817e, 0x817e, 0x817e])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:298 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x807f, 0x807f, 0x807f, 0x807f, 0x807f, 0x807f, 0x807f, 0x807f])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:301 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:304 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01, 0x3f01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:307 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:310 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0x4080, 0x4080, 0x4080, 0x4080, 0x4080, 0x4080, 0x4080, 0x4080])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:313 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:316 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:319 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:322 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7e81, 0x7e81, 0x7e81, 0x7e81, 0x7e81, 0x7e81, 0x7e81, 0x7e81])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:325 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80, 0x7f80])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:328 +assert_return( + () => invoke($0, `i16x8.extmul_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01, 0xfe01])], +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:333 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extmul_low_i8x16_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:334 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extmul_high_i8x16_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:335 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extmul_low_i8x16_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:336 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extmul_high_i8x16_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:340 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extmul_low_i8x16_s-1st-arg-empty (result v128) + (i16x8.extmul_low_i8x16_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:348 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extmul_low_i8x16_s-arg-empty (result v128) + (i16x8.extmul_low_i8x16_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:356 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extmul_high_i8x16_s-1st-arg-empty (result v128) + (i16x8.extmul_high_i8x16_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:364 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extmul_high_i8x16_s-arg-empty (result v128) + (i16x8.extmul_high_i8x16_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:372 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extmul_low_i8x16_u-1st-arg-empty (result v128) + (i16x8.extmul_low_i8x16_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:380 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extmul_low_i8x16_u-arg-empty (result v128) + (i16x8.extmul_low_i8x16_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:388 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extmul_high_i8x16_u-1st-arg-empty (result v128) + (i16x8.extmul_high_i8x16_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_extmul_i8x16.wast:396 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extmul_high_i8x16_u-arg-empty (result v128) + (i16x8.extmul_high_i8x16_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_q15mulr_sat_s.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_q15mulr_sat_s.wast.js new file mode 100644 index 0000000000..7d02f8a85f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_q15mulr_sat_s.wast.js @@ -0,0 +1,283 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:4 +let $0 = instantiate(`(module + (func (export "i16x8.q15mulr_sat_s") (param v128 v128) (result v128) (i16x8.q15mulr_sat_s (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:10 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:13 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:16 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:19 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:22 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:25 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:28 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:31 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:34 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:37 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:40 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x2001, 0x2001, 0x2001, 0x2001, 0x2001, 0x2001, 0x2001, 0x2001])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:43 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:46 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:49 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:52 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:55 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:58 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:61 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:64 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:67 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:70 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:73 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:76 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:79 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:82 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:85 +assert_return( + () => invoke($0, `i16x8.q15mulr_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:90 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.q15mulr_sat_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:94 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.q15mulr_sat_s-1st-arg-empty (result v128) + (i16x8.q15mulr_sat_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_q15mulr_sat_s.wast:102 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.q15mulr_sat_s-arg-empty (result v128) + (i16x8.q15mulr_sat_s) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_sat_arith.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_sat_arith.wast.js new file mode 100644 index 0000000000..999c6a2b31 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i16x8_sat_arith.wast.js @@ -0,0 +1,2150 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i16x8_sat_arith.wast + +// ./test/core/simd/simd_i16x8_sat_arith.wast:4 +let $0 = instantiate(`(module + (func (export "i16x8.add_sat_s") (param v128 v128) (result v128) (i16x8.add_sat_s (local.get 0) (local.get 1))) + (func (export "i16x8.add_sat_u") (param v128 v128) (result v128) (i16x8.add_sat_u (local.get 0) (local.get 1))) + (func (export "i16x8.sub_sat_s") (param v128 v128) (result v128) (i16x8.sub_sat_s (local.get 0) (local.get 1))) + (func (export "i16x8.sub_sat_u") (param v128 v128) (result v128) (i16x8.sub_sat_u (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:13 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:16 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:19 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:22 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:25 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:28 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:31 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:34 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:37 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:40 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:43 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:46 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:49 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:52 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:55 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:58 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:61 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:64 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:67 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:70 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:73 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:76 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:79 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:82 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:85 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:88 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:91 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:94 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:97 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:100 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:103 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:106 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:109 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:112 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:115 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:118 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:121 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:124 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:127 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-0, -0, -0, -0]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:130 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i16x8([0x1, 0x7f81, 0x1, 0x7f81, 0x1, 0x7f81, 0x1, 0x7f81])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:133 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i16x8([0x1, 0xff81, 0x1, 0xff81, 0x1, 0xff81, 0x1, 0xff81])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:136 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i16x8([0x1, 0x7fc1, 0x1, 0x7fc1, 0x1, 0x7fc1, 0x1, 0x7fc1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:139 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i16x8([0x1, 0xffc1, 0x1, 0xffc1, 0x1, 0xffc1, 0x1, 0xffc1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:142 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:145 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0x3, 0x6, 0x9, 0xc, 0xf, 0x12, 0x15])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:148 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0x7d7b, 0x7d7b, 0x7d7b, 0x7d7b, 0x7d7b, 0x7d7b, 0x7d7b, 0x7d7b]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:151 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + ]), + [i16x8([0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:154 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678]), + ]), + [i16x8([0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:157 +assert_return( + () => invoke($0, `i16x8.add_sat_s`, [ + i16x8([0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab]), + i16x8([0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:162 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:165 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:168 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:171 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:174 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:177 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:180 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:183 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:186 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:189 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:192 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:195 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:198 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:201 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:204 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:207 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:210 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:213 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:216 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:219 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:222 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:225 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:228 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:231 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:234 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:237 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:240 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:243 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:246 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:249 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:252 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:255 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:258 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:261 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:264 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:267 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:270 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:273 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:276 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-0, -0, -0, -0]), + ]), + [i16x8([0x8000, 0xffff, 0x8000, 0xffff, 0x8000, 0xffff, 0x8000, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:279 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i16x8([0x1, 0x7f81, 0x1, 0x7f81, 0x1, 0x7f81, 0x1, 0x7f81])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:282 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i16x8([0x1, 0xff81, 0x1, 0xff81, 0x1, 0xff81, 0x1, 0xff81])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:285 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i16x8([0x1, 0x7fc1, 0x1, 0x7fc1, 0x1, 0x7fc1, 0x1, 0x7fc1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:288 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i16x8([0x1, 0x7fc1, 0x1, 0x7fc1, 0x1, 0x7fc1, 0x1, 0x7fc1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:291 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9]), + ]), + [i16x8([0x0, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:294 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0x3, 0x6, 0x9, 0xc, 0xf, 0x12, 0x15])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:297 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:300 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:303 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678]), + ]), + [i16x8([0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac, 0x68ac])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:306 +assert_return( + () => invoke($0, `i16x8.add_sat_u`, [ + i16x8([0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab]), + i16x8([0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:311 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:314 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:317 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:320 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:323 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:326 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:329 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:332 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:335 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:338 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:341 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:344 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:347 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:350 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:353 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8003, 0x8003, 0x8003, 0x8003, 0x8003, 0x8003, 0x8003, 0x8003])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:356 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:359 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:362 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:365 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:368 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:371 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:374 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:377 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:380 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:383 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:386 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:389 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:392 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:395 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:398 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:401 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:404 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:407 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:410 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:413 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:416 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:419 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:422 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:425 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-0, -0, -0, -0]), + ]), + [i16x8([0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:428 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i16x8([0x1, 0x8081, 0x1, 0x8081, 0x1, 0x8081, 0x1, 0x8081])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:431 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i16x8([0x1, 0x81, 0x1, 0x81, 0x1, 0x81, 0x1, 0x81])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:434 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i16x8([0x1, 0x8041, 0x1, 0x8041, 0x1, 0x8041, 0x1, 0x8041])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:437 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i16x8([0x1, 0x41, 0x1, 0x41, 0x1, 0x41, 0x1, 0x41])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:440 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9]), + ]), + [i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:443 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:446 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + ]), + [i16x8([0x5264, 0x5264, 0x5264, 0x5264, 0x5264, 0x5264, 0x5264, 0x5264])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:449 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7]), + ]), + [i16x8([0x6072, 0x6072, 0x6072, 0x6072, 0x6072, 0x6072, 0x6072, 0x6072])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:452 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678, 0x5678]), + ]), + [i16x8([0xbbbc, 0xbbbc, 0xbbbc, 0xbbbc, 0xbbbc, 0xbbbc, 0xbbbc, 0xbbbc])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:455 +assert_return( + () => invoke($0, `i16x8.sub_sat_s`, [ + i16x8([0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab]), + i16x8([0xedcc, 0xedcc, 0xedcc, 0xedcc, 0xedcc, 0xedcc, 0xedcc, 0xedcc]), + ]), + [i16x8([0xa2df, 0xa2df, 0xa2df, 0xa2df, 0xa2df, 0xa2df, 0xa2df, 0xa2df])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:460 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:463 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:466 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:469 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:472 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:475 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:478 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:481 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:484 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:487 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:490 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:493 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc, 0x7ffc])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:496 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:499 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:502 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:505 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:508 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:511 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:514 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:517 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:520 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:523 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:526 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:529 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:532 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:535 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:538 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:541 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:544 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:547 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:550 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:553 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:556 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:559 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:562 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:565 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:568 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:571 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:574 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-0, -0, -0, -0]), + ]), + [i16x8([0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:577 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i16x8([0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:580 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i16x8([0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:583 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i16x8([0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:586 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i16x8([0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:589 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0xffff, 0xfffe, 0xfffd, 0xfffc, 0xfffb, 0xfffa, 0xfff9]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:592 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7]), + i16x8([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:595 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039]), + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:598 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5, 0xddd5]), + i16x8([0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7, 0xcfc7]), + ]), + [i16x8([0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e, 0xe0e])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:601 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234]), + i16x8([0xa988, 0xa988, 0xa988, 0xa988, 0xa988, 0xa988, 0xa988, 0xa988]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:604 +assert_return( + () => invoke($0, `i16x8.sub_sat_u`, [ + i16x8([0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef, 0xcdef]), + i16x8([0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab, 0x90ab]), + ]), + [i16x8([0x3d44, 0x3d44, 0x3d44, 0x3d44, 0x3d44, 0x3d44, 0x3d44, 0x3d44])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:609 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.add_sat (v128.const i16x8 1 1 1 1 1 1 1 1) (v128.const i16x8 2 2 2 2 2 2 2 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:612 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.sub_sat (v128.const i16x8 1 1 1 1 1 1 1 1) (v128.const i16x8 2 2 2 2 2 2 2 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:615 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.mul_sat (v128.const i16x8 1 1 1 1 1 1 1 1) (v128.const i16x8 2 2 2 2 2 2 2 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:618 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.div_sat (v128.const i16x8 1 1 1 1 1 1 1 1) (v128.const i16x8 2 2 2 2 2 2 2 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:623 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.add_sat_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:624 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.add_sat_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:625 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.sub_sat_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:626 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.sub_sat_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:630 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.add_sat_s-1st-arg-empty (result v128) + (i16x8.add_sat_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:638 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.add_sat_s-arg-empty (result v128) + (i16x8.add_sat_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:646 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.add_sat_u-1st-arg-empty (result v128) + (i16x8.add_sat_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:654 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.add_sat_u-arg-empty (result v128) + (i16x8.add_sat_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:662 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.sub_sat_s-1st-arg-empty (result v128) + (i16x8.sub_sat_s (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:670 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.sub_sat_s-arg-empty (result v128) + (i16x8.sub_sat_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:678 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.sub_sat_u-1st-arg-empty (result v128) + (i16x8.sub_sat_u (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:686 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.sub_sat_u-arg-empty (result v128) + (i16x8.sub_sat_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:696 +let $1 = instantiate(`(module + (func (export "sat-add_s-sub_s") (param v128 v128 v128) (result v128) + (i16x8.add_sat_s (i16x8.sub_sat_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "sat-add_s-sub_u") (param v128 v128 v128) (result v128) + (i16x8.add_sat_s (i16x8.sub_sat_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "sat-add_u-sub_s") (param v128 v128 v128) (result v128) + (i16x8.add_sat_u (i16x8.sub_sat_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "sat-add_u-sub_u") (param v128 v128 v128) (result v128) + (i16x8.add_sat_u (i16x8.sub_sat_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "sat-add_s-neg") (param v128 v128) (result v128) + (i16x8.add_sat_s (i16x8.neg (local.get 0)) (local.get 1))) + (func (export "sat-add_u-neg") (param v128 v128) (result v128) + (i16x8.add_sat_u (i16x8.neg (local.get 0)) (local.get 1))) + (func (export "sat-sub_s-neg") (param v128 v128) (result v128) + (i16x8.sub_sat_s (i16x8.neg (local.get 0)) (local.get 1))) + (func (export "sat-sub_u-neg") (param v128 v128) (result v128) + (i16x8.sub_sat_u (i16x8.neg (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:715 +assert_return( + () => invoke($1, `sat-add_s-sub_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:719 +assert_return( + () => invoke($1, `sat-add_s-sub_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:723 +assert_return( + () => invoke($1, `sat-add_u-sub_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:727 +assert_return( + () => invoke($1, `sat-add_u-sub_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:731 +assert_return( + () => invoke($1, `sat-add_s-neg`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:734 +assert_return( + () => invoke($1, `sat-add_u-neg`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:737 +assert_return( + () => invoke($1, `sat-sub_s-neg`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i16x8_sat_arith.wast:740 +assert_return( + () => invoke($1, `sat-sub_u-neg`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_arith.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_arith.wast.js new file mode 100644 index 0000000000..42976320d0 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_arith.wast.js @@ -0,0 +1,1801 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i32x4_arith.wast + +// ./test/core/simd/simd_i32x4_arith.wast:4 +let $0 = instantiate(`(module + (func (export "i32x4.add") (param v128 v128) (result v128) (i32x4.add (local.get 0) (local.get 1))) + (func (export "i32x4.sub") (param v128 v128) (result v128) (i32x4.sub (local.get 0) (local.get 1))) + (func (export "i32x4.mul") (param v128 v128) (result v128) (i32x4.mul (local.get 0) (local.get 1))) + (func (export "i32x4.neg") (param v128) (result v128) (i32x4.neg (local.get 0))) +)`); + +// ./test/core/simd/simd_i32x4_arith.wast:13 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:16 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:19 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:22 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:25 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:28 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:31 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:34 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:37 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:40 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:43 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:46 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:49 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:52 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:55 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:58 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:61 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:64 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:67 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:70 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:73 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:76 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:79 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:82 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:85 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:88 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:91 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:94 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:97 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:100 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:103 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:106 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:109 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:112 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:115 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:118 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:121 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:124 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:127 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i8x16([0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:130 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:133 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i16x8([0x0, 0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0, 0x8000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:136 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:139 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:142 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:145 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:148 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:151 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x7f800001, 0x7f800001, 0x7f800001, 0x7f800001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:154 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xff800001, 0xff800001, 0xff800001, 0xff800001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:157 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x7fc00001, 0x7fc00001, 0x7fc00001, 0x7fc00001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:160 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0xffffffff, 0xfffffffe, 0xfffffffd]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:163 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x2, 0x4, 0x6]), + ]), + [i32x4([0x0, 0x3, 0x6, 0x9])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:166 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [i32x4([0x932c05a4, 0x932c05a4, 0x932c05a4, 0x932c05a4])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:169 +assert_return( + () => invoke($0, `i32x4.add`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [i32x4([0xa2e02467, 0xa2e02467, 0xa2e02467, 0xa2e02467])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:174 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:177 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:180 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:183 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:186 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:189 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:192 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:195 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:198 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:201 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:204 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:207 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffffffc, 0x7ffffffc, 0x7ffffffc, 0x7ffffffc])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:210 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:213 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:216 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x80000003, 0x80000003, 0x80000003, 0x80000003])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:219 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:222 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:225 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:228 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:231 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:234 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:237 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:240 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:243 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:246 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:249 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:252 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:255 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:258 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:261 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:264 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:267 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:270 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:273 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:276 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:279 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:282 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:285 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:288 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i8x16([0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:291 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:294 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i16x8([0x0, 0x8000, 0x0, 0x8000, 0x0, 0x8000, 0x0, 0x8000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:297 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:300 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:303 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:306 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x40800000, 0x40800000, 0x40800000, 0x40800000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:309 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0xc0800000, 0xc0800000, 0xc0800000, 0xc0800000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:312 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x80800001, 0x80800001, 0x80800001, 0x80800001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:315 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x800001, 0x800001, 0x800001, 0x800001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:318 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x80400001, 0x80400001, 0x80400001, 0x80400001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:321 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0xffffffff, 0xfffffffe, 0xfffffffd]), + ]), + [i32x4([0x0, 0x2, 0x4, 0x6])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:324 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x2, 0x4, 0x6]), + ]), + [i32x4([0x0, 0xffffffff, 0xfffffffe, 0xfffffffd])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:327 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0xbf9a69d2, 0xbf9a69d2, 0xbf9a69d2, 0xbf9a69d2]), + i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2]), + ]), + [i32x4([0x76046700, 0x76046700, 0x76046700, 0x76046700])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:330 +assert_return( + () => invoke($0, `i32x4.sub`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i32x4([0x7e777777, 0x7e777777, 0x7e777777, 0x7e777777])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:335 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:338 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:341 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:344 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:347 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:350 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:353 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:356 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:359 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:362 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:365 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:368 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:371 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:374 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:377 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:380 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:383 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:386 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:389 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:392 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:395 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:398 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:401 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:404 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:407 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:410 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:413 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:416 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:419 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:422 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:425 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + ]), + [i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:428 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:431 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:434 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:437 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:440 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:443 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:446 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:449 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x10000000, 0x10000000, 0x10000000, 0x10000000]), + i8x16([0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:452 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:455 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i16x8([0x0, 0x2, 0x0, 0x2, 0x0, 0x2, 0x0, 0x2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:458 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:461 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([0, 0, 0, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:464 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-0, -0, -0, -0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:467 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([1, 1, 1, 1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:470 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x8000, 0x8000, 0x8000, 0x8000]), + f32x4([-1, -1, -1, -1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:473 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:476 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0xff800000, 0xff800000, 0xff800000, 0xff800000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:479 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x7fc00000, 0x7fc00000, 0x7fc00000, 0x7fc00000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:482 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0xffffffff, 0xfffffffe, 0xfffffffd]), + ]), + [i32x4([0x0, 0xffffffff, 0xfffffffc, 0xfffffff7])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:485 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x2, 0x4, 0x6]), + ]), + [i32x4([0x0, 0x2, 0x8, 0x12])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:488 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x3ade68b1, 0x3ade68b1, 0x3ade68b1, 0x3ade68b1]), + ]), + [i32x4([0xfbff5385, 0xfbff5385, 0xfbff5385, 0xfbff5385])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:491 +assert_return( + () => invoke($0, `i32x4.mul`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [i32x4([0x2a42d208, 0x2a42d208, 0x2a42d208, 0x2a42d208])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:496 +assert_return( + () => invoke($0, `i32x4.neg`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:498 +assert_return( + () => invoke($0, `i32x4.neg`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:500 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:502 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe]), + ]), + [i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:504 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:506 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:508 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:510 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:512 +assert_return( + () => invoke($0, `i32x4.neg`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:514 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:516 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:518 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:520 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:522 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:524 +assert_return( + () => invoke($0, `i32x4.neg`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:528 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.neg (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:529 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.add (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:530 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.sub (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:531 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.mul (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:535 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.neg-arg-empty (result v128) + (i32x4.neg) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:543 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.add-1st-arg-empty (result v128) + (i32x4.add (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:551 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.add-arg-empty (result v128) + (i32x4.add) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:559 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.sub-1st-arg-empty (result v128) + (i32x4.sub (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:567 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.sub-arg-empty (result v128) + (i32x4.sub) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:575 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.mul-1st-arg-empty (result v128) + (i32x4.mul (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:583 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.mul-arg-empty (result v128) + (i32x4.mul) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith.wast:593 +let $1 = instantiate(`(module + (func (export "add-sub") (param v128 v128 v128) (result v128) + (i32x4.add (i32x4.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-add") (param v128 v128 v128) (result v128) + (i32x4.mul (i32x4.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-sub") (param v128 v128 v128) (result v128) + (i32x4.mul (i32x4.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "sub-add") (param v128 v128 v128) (result v128) + (i32x4.sub (i32x4.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "add-neg") (param v128 v128) (result v128) + (i32x4.add (i32x4.neg (local.get 0)) (local.get 1))) + (func (export "mul-neg") (param v128 v128) (result v128) + (i32x4.mul (i32x4.neg (local.get 0)) (local.get 1))) + (func (export "sub-neg") (param v128 v128) (result v128) + (i32x4.sub (i32x4.neg (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_i32x4_arith.wast:610 +assert_return( + () => invoke($1, `add-sub`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x2, 0x4, 0x6]), + i32x4([0x0, 0x2, 0x4, 0x6]), + ]), + [i32x4([0x0, 0x1, 0x2, 0x3])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:614 +assert_return( + () => invoke($1, `mul-add`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x4, 0x8, 0xc])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:618 +assert_return( + () => invoke($1, `mul-sub`, [ + i32x4([0x0, 0x2, 0x4, 0x6]), + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x1, 0x2, 0x3]), + ]), + [i32x4([0x0, 0x1, 0x4, 0x9])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:622 +assert_return( + () => invoke($1, `sub-add`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x2, 0x4, 0x6]), + i32x4([0x0, 0x2, 0x4, 0x6]), + ]), + [i32x4([0x0, 0x1, 0x2, 0x3])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:626 +assert_return( + () => invoke($1, `add-neg`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x1, 0x2, 0x3]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:629 +assert_return( + () => invoke($1, `mul-neg`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0xfffffffe, 0xfffffffc, 0xfffffffa])], +); + +// ./test/core/simd/simd_i32x4_arith.wast:632 +assert_return( + () => invoke($1, `sub-neg`, [ + i32x4([0x0, 0x1, 0x2, 0x3]), + i32x4([0x0, 0x1, 0x2, 0x3]), + ]), + [i32x4([0x0, 0xfffffffe, 0xfffffffc, 0xfffffffa])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_arith2.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_arith2.wast.js new file mode 100644 index 0000000000..42d50dfefd --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_arith2.wast.js @@ -0,0 +1,1279 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i32x4_arith2.wast + +// ./test/core/simd/simd_i32x4_arith2.wast:3 +let $0 = instantiate(`(module + (func (export "i32x4.min_s") (param v128 v128) (result v128) (i32x4.min_s (local.get 0) (local.get 1))) + (func (export "i32x4.min_u") (param v128 v128) (result v128) (i32x4.min_u (local.get 0) (local.get 1))) + (func (export "i32x4.max_s") (param v128 v128) (result v128) (i32x4.max_s (local.get 0) (local.get 1))) + (func (export "i32x4.max_u") (param v128 v128) (result v128) (i32x4.max_u (local.get 0) (local.get 1))) + (func (export "i32x4.abs") (param v128) (result v128) (i32x4.abs (local.get 0))) + (func (export "i32x4.min_s_with_const_0") (result v128) (i32x4.min_s (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295) (v128.const i32x4 4294967295 1073741824 2147483647 -2147483648))) + (func (export "i32x4.min_s_with_const_1") (result v128) (i32x4.min_s (v128.const i32x4 0 1 2 3) (v128.const i32x4 3 2 1 0))) + (func (export "i32x4.min_u_with_const_2") (result v128) (i32x4.min_u (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295) (v128.const i32x4 4294967295 1073741824 2147483647 -2147483648))) + (func (export "i32x4.min_u_with_const_3") (result v128) (i32x4.min_u (v128.const i32x4 0 1 2 3) (v128.const i32x4 3 2 1 0))) + (func (export "i32x4.max_s_with_const_4") (result v128) (i32x4.max_s (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295) (v128.const i32x4 4294967295 1073741824 2147483647 -2147483648))) + (func (export "i32x4.max_s_with_const_5") (result v128) (i32x4.max_s (v128.const i32x4 0 1 2 3) (v128.const i32x4 3 2 1 0))) + (func (export "i32x4.max_u_with_const_6") (result v128) (i32x4.max_u (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295) (v128.const i32x4 4294967295 1073741824 2147483647 -2147483648))) + (func (export "i32x4.max_u_with_const_7") (result v128) (i32x4.max_u (v128.const i32x4 0 1 2 3) (v128.const i32x4 3 2 1 0))) + (func (export "i32x4.abs_with_const_8") (result v128) (i32x4.abs (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295))) + (func (export "i32x4.min_s_with_const_9") (param v128) (result v128) (i32x4.min_s (local.get 0) (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295))) + (func (export "i32x4.min_s_with_const_10") (param v128) (result v128) (i32x4.min_s (local.get 0) (v128.const i32x4 0 1 2 3))) + (func (export "i32x4.min_u_with_const_11") (param v128) (result v128) (i32x4.min_u (local.get 0) (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295))) + (func (export "i32x4.min_u_with_const_12") (param v128) (result v128) (i32x4.min_u (local.get 0) (v128.const i32x4 0 1 2 3))) + (func (export "i32x4.max_s_with_const_13") (param v128) (result v128) (i32x4.max_s (local.get 0) (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295))) + (func (export "i32x4.max_s_with_const_14") (param v128) (result v128) (i32x4.max_s (local.get 0) (v128.const i32x4 0 1 2 3))) + (func (export "i32x4.max_u_with_const_15") (param v128) (result v128) (i32x4.max_u (local.get 0) (v128.const i32x4 -2147483648 2147483647 1073741824 4294967295))) + (func (export "i32x4.max_u_with_const_16") (param v128) (result v128) (i32x4.max_u (local.get 0) (v128.const i32x4 0 1 2 3))) +)`); + +// ./test/core/simd/simd_i32x4_arith2.wast:28 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:31 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:34 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:37 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:40 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:43 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:46 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:49 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:52 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:55 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x7b, 0x7b, 0x7b, 0x7b]), + i32x4([0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i32x4([0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:58 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x80, 0x80, 0x80, 0x80]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:61 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:64 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:67 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:70 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:73 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:76 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:79 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:82 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:85 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:88 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x7b, 0x7b, 0x7b, 0x7b]), + i32x4([0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i32x4([0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:91 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x80, 0x80, 0x80, 0x80]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:94 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:97 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:100 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:103 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:106 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:109 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:112 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:115 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:118 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:121 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x7b, 0x7b, 0x7b, 0x7b]), + i32x4([0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i32x4([0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:124 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x80, 0x80, 0x80, 0x80]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:127 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:130 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:133 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:136 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:139 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:142 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:145 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:148 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:151 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:154 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x7b, 0x7b, 0x7b, 0x7b]), + i32x4([0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [i32x4([0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:157 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x80, 0x80, 0x80, 0x80]), + i32x4([0x80, 0x80, 0x80, 0x80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:160 +assert_return( + () => invoke($0, `i32x4.abs`, [i32x4([0x1, 0x1, 0x1, 0x1])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:162 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:164 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:166 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:168 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:170 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:172 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:174 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:176 +assert_return( + () => invoke($0, `i32x4.abs`, [i32x4([0x7b, 0x7b, 0x7b, 0x7b])]), + [i32x4([0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:178 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0xffffff85, 0xffffff85, 0xffffff85, 0xffffff85]), + ]), + [i32x4([0x7b, 0x7b, 0x7b, 0x7b])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:180 +assert_return( + () => invoke($0, `i32x4.abs`, [i32x4([0x80, 0x80, 0x80, 0x80])]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:182 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0xffffff80, 0xffffff80, 0xffffff80, 0xffffff80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:184 +assert_return( + () => invoke($0, `i32x4.abs`, [i32x4([0x80, 0x80, 0x80, 0x80])]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:186 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0xffffff80, 0xffffff80, 0xffffff80, 0xffffff80]), + ]), + [i32x4([0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:190 +assert_return( + () => invoke($0, `i32x4.min_s_with_const_0`, []), + [i32x4([0x80000000, 0x40000000, 0x40000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:191 +assert_return(() => invoke($0, `i32x4.min_s_with_const_1`, []), [i32x4([0x0, 0x1, 0x1, 0x0])]); + +// ./test/core/simd/simd_i32x4_arith2.wast:192 +assert_return( + () => invoke($0, `i32x4.min_u_with_const_2`, []), + [i32x4([0x80000000, 0x40000000, 0x40000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:193 +assert_return(() => invoke($0, `i32x4.min_u_with_const_3`, []), [i32x4([0x0, 0x1, 0x1, 0x0])]); + +// ./test/core/simd/simd_i32x4_arith2.wast:194 +assert_return( + () => invoke($0, `i32x4.max_s_with_const_4`, []), + [i32x4([0xffffffff, 0x7fffffff, 0x7fffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:195 +assert_return(() => invoke($0, `i32x4.max_s_with_const_5`, []), [i32x4([0x3, 0x2, 0x2, 0x3])]); + +// ./test/core/simd/simd_i32x4_arith2.wast:196 +assert_return( + () => invoke($0, `i32x4.max_u_with_const_6`, []), + [i32x4([0xffffffff, 0x7fffffff, 0x7fffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:197 +assert_return(() => invoke($0, `i32x4.max_u_with_const_7`, []), [i32x4([0x3, 0x2, 0x2, 0x3])]); + +// ./test/core/simd/simd_i32x4_arith2.wast:198 +assert_return( + () => invoke($0, `i32x4.abs_with_const_8`, []), + [i32x4([0x80000000, 0x7fffffff, 0x40000000, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:201 +assert_return( + () => invoke($0, `i32x4.min_s_with_const_9`, [ + i32x4([0xffffffff, 0x40000000, 0x7fffffff, 0x80000000]), + ]), + [i32x4([0x80000000, 0x40000000, 0x40000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:203 +assert_return( + () => invoke($0, `i32x4.min_s_with_const_10`, [i32x4([0x3, 0x2, 0x1, 0x0])]), + [i32x4([0x0, 0x1, 0x1, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:205 +assert_return( + () => invoke($0, `i32x4.min_u_with_const_11`, [ + i32x4([0xffffffff, 0x40000000, 0x7fffffff, 0x80000000]), + ]), + [i32x4([0x80000000, 0x40000000, 0x40000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:207 +assert_return( + () => invoke($0, `i32x4.min_u_with_const_12`, [i32x4([0x3, 0x2, 0x1, 0x0])]), + [i32x4([0x0, 0x1, 0x1, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:209 +assert_return( + () => invoke($0, `i32x4.max_s_with_const_13`, [ + i32x4([0xffffffff, 0x40000000, 0x7fffffff, 0x80000000]), + ]), + [i32x4([0xffffffff, 0x7fffffff, 0x7fffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:211 +assert_return( + () => invoke($0, `i32x4.max_s_with_const_14`, [i32x4([0x3, 0x2, 0x1, 0x0])]), + [i32x4([0x3, 0x2, 0x2, 0x3])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:213 +assert_return( + () => invoke($0, `i32x4.max_u_with_const_15`, [ + i32x4([0xffffffff, 0x40000000, 0x7fffffff, 0x80000000]), + ]), + [i32x4([0xffffffff, 0x7fffffff, 0x7fffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:215 +assert_return( + () => invoke($0, `i32x4.max_u_with_const_16`, [i32x4([0x3, 0x2, 0x1, 0x0])]), + [i32x4([0x3, 0x2, 0x2, 0x3])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:219 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x80000000, 0x7fffffff, 0x40000000, 0xffffffff]), + i32x4([0xffffffff, 0x40000000, 0x7fffffff, 0x80000000]), + ]), + [i32x4([0x80000000, 0x40000000, 0x40000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:222 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x0, 0x1, 0x2, 0x80]), + i32x4([0x0, 0x2, 0x1, 0x80]), + ]), + [i32x4([0x0, 0x1, 0x1, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:225 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x80000000, 0x7fffffff, 0x40000000, 0xffffffff]), + i32x4([0xffffffff, 0x40000000, 0x7fffffff, 0x80000000]), + ]), + [i32x4([0x80000000, 0x40000000, 0x40000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:228 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x0, 0x1, 0x2, 0x80]), + i32x4([0x0, 0x2, 0x1, 0x80]), + ]), + [i32x4([0x0, 0x1, 0x1, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:231 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x80000000, 0x7fffffff, 0x40000000, 0xffffffff]), + i32x4([0xffffffff, 0x40000000, 0x7fffffff, 0x80000000]), + ]), + [i32x4([0xffffffff, 0x7fffffff, 0x7fffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:234 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x0, 0x1, 0x2, 0x80]), + i32x4([0x0, 0x2, 0x1, 0x80]), + ]), + [i32x4([0x0, 0x2, 0x2, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:237 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x80000000, 0x7fffffff, 0x40000000, 0xffffffff]), + i32x4([0xffffffff, 0x40000000, 0x7fffffff, 0x80000000]), + ]), + [i32x4([0xffffffff, 0x7fffffff, 0x7fffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:240 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x0, 0x1, 0x2, 0x80]), + i32x4([0x0, 0x2, 0x1, 0x80]), + ]), + [i32x4([0x0, 0x2, 0x2, 0x80])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:243 +assert_return( + () => invoke($0, `i32x4.abs`, [ + i32x4([0x80000000, 0x7fffffff, 0x40000000, 0xffffffff]), + ]), + [i32x4([0x80000000, 0x7fffffff, 0x40000000, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:247 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:250 +assert_return( + () => invoke($0, `i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:253 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:256 +assert_return( + () => invoke($0, `i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:259 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:262 +assert_return( + () => invoke($0, `i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:265 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:268 +assert_return( + () => invoke($0, `i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:271 +assert_return( + () => invoke($0, `i32x4.abs`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:273 +assert_return( + () => invoke($0, `i32x4.abs`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:275 +assert_return( + () => invoke($0, `i32x4.abs`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:277 +assert_return( + () => invoke($0, `i32x4.abs`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:281 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f32x4.min_s (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:282 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f32x4.min_u (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:283 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f32x4.max_s (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:284 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f32x4.max_u (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:285 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.min_s (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:286 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.min_u (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:287 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.max_s (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:288 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.max_u (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:289 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f64x2.min_s (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:290 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f64x2.min_u (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:291 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f64x2.max_s (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:292 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f64x2.max_u (v128.const i32x4 0 0 0 0) (v128.const i32x4 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:295 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.min_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:296 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.min_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:297 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.max_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:298 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.max_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:299 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.abs (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:303 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.min_s-1st-arg-empty (result v128) + (i32x4.min_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:311 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.min_s-arg-empty (result v128) + (i32x4.min_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:319 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.min_u-1st-arg-empty (result v128) + (i32x4.min_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:327 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.min_u-arg-empty (result v128) + (i32x4.min_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:335 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.max_s-1st-arg-empty (result v128) + (i32x4.max_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:343 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.max_s-arg-empty (result v128) + (i32x4.max_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:351 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.max_u-1st-arg-empty (result v128) + (i32x4.max_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:359 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.max_u-arg-empty (result v128) + (i32x4.max_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:367 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.abs-arg-empty (result v128) + (i32x4.abs) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_arith2.wast:377 +let $1 = instantiate(`(module + (func (export "i32x4.min_s-i32x4.max_u") (param v128 v128 v128) (result v128) (i32x4.min_s (i32x4.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.min_s-i32x4.max_s") (param v128 v128 v128) (result v128) (i32x4.min_s (i32x4.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.min_s-i32x4.min_u") (param v128 v128 v128) (result v128) (i32x4.min_s (i32x4.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.min_s-i32x4.min_s") (param v128 v128 v128) (result v128) (i32x4.min_s (i32x4.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.min_s-i32x4.abs") (param v128 v128) (result v128) (i32x4.min_s (i32x4.abs (local.get 0))(local.get 1))) + (func (export "i32x4.abs-i32x4.min_s") (param v128 v128) (result v128) (i32x4.abs (i32x4.min_s (local.get 0) (local.get 1)))) + (func (export "i32x4.min_u-i32x4.max_u") (param v128 v128 v128) (result v128) (i32x4.min_u (i32x4.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.min_u-i32x4.max_s") (param v128 v128 v128) (result v128) (i32x4.min_u (i32x4.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.min_u-i32x4.min_u") (param v128 v128 v128) (result v128) (i32x4.min_u (i32x4.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.min_u-i32x4.min_s") (param v128 v128 v128) (result v128) (i32x4.min_u (i32x4.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.min_u-i32x4.abs") (param v128 v128) (result v128) (i32x4.min_u (i32x4.abs (local.get 0))(local.get 1))) + (func (export "i32x4.abs-i32x4.min_u") (param v128 v128) (result v128) (i32x4.abs (i32x4.min_u (local.get 0) (local.get 1)))) + (func (export "i32x4.max_s-i32x4.max_u") (param v128 v128 v128) (result v128) (i32x4.max_s (i32x4.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.max_s-i32x4.max_s") (param v128 v128 v128) (result v128) (i32x4.max_s (i32x4.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.max_s-i32x4.min_u") (param v128 v128 v128) (result v128) (i32x4.max_s (i32x4.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.max_s-i32x4.min_s") (param v128 v128 v128) (result v128) (i32x4.max_s (i32x4.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.max_s-i32x4.abs") (param v128 v128) (result v128) (i32x4.max_s (i32x4.abs (local.get 0))(local.get 1))) + (func (export "i32x4.abs-i32x4.max_s") (param v128 v128) (result v128) (i32x4.abs (i32x4.max_s (local.get 0) (local.get 1)))) + (func (export "i32x4.max_u-i32x4.max_u") (param v128 v128 v128) (result v128) (i32x4.max_u (i32x4.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.max_u-i32x4.max_s") (param v128 v128 v128) (result v128) (i32x4.max_u (i32x4.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.max_u-i32x4.min_u") (param v128 v128 v128) (result v128) (i32x4.max_u (i32x4.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.max_u-i32x4.min_s") (param v128 v128 v128) (result v128) (i32x4.max_u (i32x4.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i32x4.max_u-i32x4.abs") (param v128 v128) (result v128) (i32x4.max_u (i32x4.abs (local.get 0))(local.get 1))) + (func (export "i32x4.abs-i32x4.max_u") (param v128 v128) (result v128) (i32x4.abs (i32x4.max_u (local.get 0) (local.get 1)))) + (func (export "i32x4.abs-i32x4.abs") (param v128) (result v128) (i32x4.abs (i32x4.abs (local.get 0)))) +)`); + +// ./test/core/simd/simd_i32x4_arith2.wast:405 +assert_return( + () => invoke($1, `i32x4.min_s-i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:409 +assert_return( + () => invoke($1, `i32x4.min_s-i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:413 +assert_return( + () => invoke($1, `i32x4.min_s-i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:417 +assert_return( + () => invoke($1, `i32x4.min_s-i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:421 +assert_return( + () => invoke($1, `i32x4.min_s-i32x4.abs`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:424 +assert_return( + () => invoke($1, `i32x4.abs-i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:427 +assert_return( + () => invoke($1, `i32x4.min_u-i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:431 +assert_return( + () => invoke($1, `i32x4.min_u-i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:435 +assert_return( + () => invoke($1, `i32x4.min_u-i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:439 +assert_return( + () => invoke($1, `i32x4.min_u-i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:443 +assert_return( + () => invoke($1, `i32x4.min_u-i32x4.abs`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:446 +assert_return( + () => invoke($1, `i32x4.abs-i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:449 +assert_return( + () => invoke($1, `i32x4.max_s-i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:453 +assert_return( + () => invoke($1, `i32x4.max_s-i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:457 +assert_return( + () => invoke($1, `i32x4.max_s-i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:461 +assert_return( + () => invoke($1, `i32x4.max_s-i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:465 +assert_return( + () => invoke($1, `i32x4.max_s-i32x4.abs`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:468 +assert_return( + () => invoke($1, `i32x4.abs-i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:471 +assert_return( + () => invoke($1, `i32x4.max_u-i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:475 +assert_return( + () => invoke($1, `i32x4.max_u-i32x4.max_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:479 +assert_return( + () => invoke($1, `i32x4.max_u-i32x4.min_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:483 +assert_return( + () => invoke($1, `i32x4.max_u-i32x4.min_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x2, 0x2, 0x2, 0x2]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:487 +assert_return( + () => invoke($1, `i32x4.max_u-i32x4.abs`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:490 +assert_return( + () => invoke($1, `i32x4.abs-i32x4.max_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_arith2.wast:493 +assert_return( + () => invoke($1, `i32x4.abs-i32x4.abs`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_cmp.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_cmp.wast.js new file mode 100644 index 0000000000..7e3efca7a3 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_cmp.wast.js @@ -0,0 +1,4369 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i32x4_cmp.wast + +// ./test/core/simd/simd_i32x4_cmp.wast:4 +let $0 = instantiate(`(module + (func (export "eq") (param $$x v128) (param $$y v128) (result v128) (i32x4.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x v128) (param $$y v128) (result v128) (i32x4.ne (local.get $$x) (local.get $$y))) + (func (export "lt_s") (param $$x v128) (param $$y v128) (result v128) (i32x4.lt_s (local.get $$x) (local.get $$y))) + (func (export "lt_u") (param $$x v128) (param $$y v128) (result v128) (i32x4.lt_u (local.get $$x) (local.get $$y))) + (func (export "le_s") (param $$x v128) (param $$y v128) (result v128) (i32x4.le_s (local.get $$x) (local.get $$y))) + (func (export "le_u") (param $$x v128) (param $$y v128) (result v128) (i32x4.le_u (local.get $$x) (local.get $$y))) + (func (export "gt_s") (param $$x v128) (param $$y v128) (result v128) (i32x4.gt_s (local.get $$x) (local.get $$y))) + (func (export "gt_u") (param $$x v128) (param $$y v128) (result v128) (i32x4.gt_u (local.get $$x) (local.get $$y))) + (func (export "ge_s") (param $$x v128) (param $$y v128) (result v128) (i32x4.ge_s (local.get $$x) (local.get $$y))) + (func (export "ge_u") (param $$x v128) (param $$y v128) (result v128) (i32x4.ge_u (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/simd/simd_i32x4_cmp.wast:23 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:26 +assert_return( + () => invoke($0, `eq`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:29 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:32 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:35 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:38 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:41 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:46 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:49 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:52 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:55 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:58 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:63 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:66 +assert_return( + () => invoke($0, `eq`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:69 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:72 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:75 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:78 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:81 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:86 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:89 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:94 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:97 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:100 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:103 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:106 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:111 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:114 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:117 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:120 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:123 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:126 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0xffffffff, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:129 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:134 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:137 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:140 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:143 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:146 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:149 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0xffffffff, 0x0, 0x1, 0xffff]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x0, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:152 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:155 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:158 +assert_return( + () => invoke($0, `eq`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:167 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:170 +assert_return( + () => invoke($0, `ne`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:173 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:176 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:179 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:182 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:185 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:190 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:193 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:196 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:199 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:202 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:207 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:210 +assert_return( + () => invoke($0, `ne`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:213 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:216 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:219 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:222 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:225 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:230 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:233 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:238 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:241 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:244 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:247 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:250 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:255 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:258 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:261 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:264 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:267 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:270 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0x0, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:273 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:278 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:281 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:284 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:287 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:290 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:293 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:296 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:299 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:302 +assert_return( + () => invoke($0, `ne`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:311 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:314 +assert_return( + () => invoke($0, `lt_s`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:317 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:320 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:323 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:326 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:329 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:334 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:337 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:340 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:343 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:346 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:351 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:354 +assert_return( + () => invoke($0, `lt_s`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:357 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:360 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:363 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:366 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:369 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:374 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:377 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:382 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:385 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:388 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0x0, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:391 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:394 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:399 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:402 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:405 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:408 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:411 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:414 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:417 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:422 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:425 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:428 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:431 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:434 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:437 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:440 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:443 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:446 +assert_return( + () => invoke($0, `lt_s`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + i32x4([0x90abcdf0, 0x90abcdf0, 0x90abcdf0, 0x90abcdf0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:455 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:458 +assert_return( + () => invoke($0, `lt_u`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:461 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:464 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:467 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:470 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:473 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:478 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:481 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:484 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:487 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:490 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:495 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:498 +assert_return( + () => invoke($0, `lt_u`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:501 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:504 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:507 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:510 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:513 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:518 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:521 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:526 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:529 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:532 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:535 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:538 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:543 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:546 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:549 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:552 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:555 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:558 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:561 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:566 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:569 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:572 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:575 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:578 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:581 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:584 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:587 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:590 +assert_return( + () => invoke($0, `lt_u`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + i32x4([0x90abcdf0, 0x90abcdf0, 0x90abcdf0, 0x90abcdf0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:599 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:602 +assert_return( + () => invoke($0, `le_s`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:605 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:608 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:611 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:614 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:617 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:622 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:625 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:628 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:631 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:634 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:639 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:642 +assert_return( + () => invoke($0, `le_s`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:645 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:648 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:651 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:654 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:657 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:662 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:665 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:670 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:673 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:676 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0x0, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:679 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:682 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:687 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:690 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:693 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:696 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:699 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:702 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:705 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:710 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:713 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:716 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:719 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:722 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:725 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:728 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:731 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:734 +assert_return( + () => invoke($0, `le_s`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:743 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:746 +assert_return( + () => invoke($0, `le_u`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:749 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:752 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:755 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:758 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:761 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:766 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:769 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:772 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:775 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:778 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:783 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:786 +assert_return( + () => invoke($0, `le_u`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:789 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:792 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:795 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:798 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:801 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:806 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:809 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:814 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:817 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:820 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:823 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:826 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:831 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:834 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:837 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:840 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:843 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:846 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:849 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:854 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:857 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:860 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:863 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:866 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:869 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:872 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:875 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:878 +assert_return( + () => invoke($0, `le_u`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:887 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:890 +assert_return( + () => invoke($0, `gt_s`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:893 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:896 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:899 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:902 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:905 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:910 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:913 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:916 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:919 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:922 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:927 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:930 +assert_return( + () => invoke($0, `gt_s`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:933 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:936 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:939 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:942 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:945 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:950 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:953 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:958 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:961 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:964 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:967 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:970 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:975 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:978 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:981 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:984 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:987 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:990 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:993 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:998 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1001 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1004 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1007 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1010 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1013 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xffff, 0x0, 0x1, 0x8000]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x8000, 0x8000]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1016 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1019 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1022 +assert_return( + () => invoke($0, `gt_s`, [ + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + i32x4([0x90abcdef, 0x90abcdef, 0x90abcdef, 0x90abcdef]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1031 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1034 +assert_return( + () => invoke($0, `gt_u`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1037 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1040 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1043 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1046 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1049 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1054 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1057 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1060 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1063 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1066 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1071 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1074 +assert_return( + () => invoke($0, `gt_u`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1077 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1080 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1083 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1086 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1089 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1094 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1097 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1102 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1105 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1108 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1111 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1114 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1119 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1122 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1125 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1128 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1131 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1134 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1137 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1142 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1145 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1148 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1151 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1154 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1157 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1160 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1163 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1166 +assert_return( + () => invoke($0, `gt_u`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1175 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1178 +assert_return( + () => invoke($0, `ge_s`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1181 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1184 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1187 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1190 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1193 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1198 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1201 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1204 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1207 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1210 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1215 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1218 +assert_return( + () => invoke($0, `ge_s`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1221 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1224 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1227 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1230 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1233 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1238 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1241 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1246 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1249 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1252 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1255 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1258 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1263 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1266 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1269 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1272 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1275 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1278 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1281 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x55555555, 0x55555555, 0x55555555, 0x55555555]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1286 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1289 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1292 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1295 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1298 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1301 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xffff, 0x0, 0x1, 0x8000]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x8000, 0x8000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1304 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1307 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1310 +assert_return( + () => invoke($0, `ge_s`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1319 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1322 +assert_return( + () => invoke($0, `ge_u`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1325 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1328 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1331 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1334 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1337 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + i32x4([0x3020100, 0x11100904, 0x1a0b0a12, 0xffabaa1b]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1342 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1345 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1348 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1351 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1354 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1359 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1362 +assert_return( + () => invoke($0, `ge_u`, [i32x4([0x0, 0x0, 0x0, 0x0]), i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1365 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1368 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1371 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1374 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1377 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + i32x4([0x80000001, 0xffffffff, 0x0, 0xffffffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1382 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xc3000000, 0xc2fe0000, 0xbf800000, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1385 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x3f800000, 0x42fe0000, 0x43000000, 0x437f0000]), + f32x4([1, 127, 128, 255]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1390 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f]), + i32x4([0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0, 0xf0f0f0f0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1393 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1396 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x2030001, 0x10110409, 0xb1a120a, 0xabff1baa]), + i32x4([0xaa1bffab, 0xa121a0b, 0x9041110, 0x1000302]), + ]), + [i32x4([0x0, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1399 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x80018000, 0x80038002, 0x80058004, 0x80078006]), + i32x4([0x80078006, 0x80058004, 0x80038002, 0x80018000]), + ]), + [i32x4([0x0, 0x0, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1402 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x80000000, 0x7fffffff, 0x0, 0xffffffff]), + i32x4([0x80000000, 0x80000001, 0xffffffff, 0x0]), + ]), + [i32x4([0xffffffff, 0x0, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1407 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1410 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1413 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1416 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1419 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1422 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xff80ff80, 0x0, 0x1, 0xffffffff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1425 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1430 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1433 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1436 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1439 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1442 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1445 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + i16x8([0xffff, 0xffff, 0x0, 0x0, 0x1, 0x1, 0x8000, 0x8000]), + ]), + [i32x4([0x0, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1448 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + i16x8([0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1451 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1454 +assert_return( + () => invoke($0, `ge_u`, [ + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1461 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.eq (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1462 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.ge_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1463 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.ge_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1464 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.gt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1465 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.gt_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1466 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.le_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1467 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.le_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1468 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.lt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1469 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.lt_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1470 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.ne (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1475 +let $1 = instantiate(`(module (memory 1) + (func (export "eq-in-block") + (block + (drop + (block (result v128) + (i32x4.eq + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "ne-in-block") + (block + (drop + (block (result v128) + (i32x4.ne + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "lt_s-in-block") + (block + (drop + (block (result v128) + (i32x4.lt_s + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "le_u-in-block") + (block + (drop + (block (result v128) + (i32x4.le_u + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "gt_u-in-block") + (block + (drop + (block (result v128) + (i32x4.gt_u + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "ge_s-in-block") + (block + (drop + (block (result v128) + (i32x4.ge_s + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "nested-eq") + (drop + (i32x4.eq + (i32x4.eq + (i32x4.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i32x4.eq + (i32x4.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-ne") + (drop + (i32x4.ne + (i32x4.ne + (i32x4.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i32x4.ne + (i32x4.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-lt_s") + (drop + (i32x4.lt_s + (i32x4.lt_s + (i32x4.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.lt_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i32x4.lt_s + (i32x4.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.lt_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-le_u") + (drop + (i32x4.le_u + (i32x4.le_u + (i32x4.le_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i32x4.le_u + (i32x4.le_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-gt_u") + (drop + (i32x4.gt_u + (i32x4.gt_u + (i32x4.gt_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.gt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i32x4.gt_u + (i32x4.gt_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.gt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-ge_s") + (drop + (i32x4.ge_s + (i32x4.ge_s + (i32x4.ge_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.ge_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i32x4.ge_s + (i32x4.ge_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.ge_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "as-param") + (drop + (i32x4.ge_u + (i32x4.eq + (i32x4.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i32x4.ne + (i32x4.gt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i32x4.lt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) +)`); + +// ./test/core/simd/simd_i32x4_cmp.wast:1731 +assert_return(() => invoke($1, `eq-in-block`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1732 +assert_return(() => invoke($1, `ne-in-block`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1733 +assert_return(() => invoke($1, `lt_s-in-block`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1734 +assert_return(() => invoke($1, `le_u-in-block`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1735 +assert_return(() => invoke($1, `gt_u-in-block`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1736 +assert_return(() => invoke($1, `ge_s-in-block`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1737 +assert_return(() => invoke($1, `nested-eq`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1738 +assert_return(() => invoke($1, `nested-ne`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1739 +assert_return(() => invoke($1, `nested-lt_s`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1740 +assert_return(() => invoke($1, `nested-le_u`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1741 +assert_return(() => invoke($1, `nested-gt_u`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1742 +assert_return(() => invoke($1, `nested-ge_s`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1743 +assert_return(() => invoke($1, `as-param`, []), []); + +// ./test/core/simd/simd_i32x4_cmp.wast:1748 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.eq-1st-arg-empty (result v128) + (i32x4.eq (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1756 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.eq-arg-empty (result v128) + (i32x4.eq) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1764 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.ne-1st-arg-empty (result v128) + (i32x4.ne (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1772 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.ne-arg-empty (result v128) + (i32x4.ne) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1780 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.lt_s-1st-arg-empty (result v128) + (i32x4.lt_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1788 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.lt_s-arg-empty (result v128) + (i32x4.lt_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1796 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.lt_u-1st-arg-empty (result v128) + (i32x4.lt_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1804 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.lt_u-arg-empty (result v128) + (i32x4.lt_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1812 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.le_s-1st-arg-empty (result v128) + (i32x4.le_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1820 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.le_s-arg-empty (result v128) + (i32x4.le_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1828 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.le_u-1st-arg-empty (result v128) + (i32x4.le_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1836 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.le_u-arg-empty (result v128) + (i32x4.le_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1844 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.gt_s-1st-arg-empty (result v128) + (i32x4.gt_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1852 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.gt_s-arg-empty (result v128) + (i32x4.gt_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1860 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.gt_u-1st-arg-empty (result v128) + (i32x4.gt_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1868 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.gt_u-arg-empty (result v128) + (i32x4.gt_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1876 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.ge_s-1st-arg-empty (result v128) + (i32x4.ge_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1884 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.ge_s-arg-empty (result v128) + (i32x4.ge_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1892 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.ge_u-1st-arg-empty (result v128) + (i32x4.ge_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1900 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.ge_u-arg-empty (result v128) + (i32x4.ge_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1910 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.eq (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1911 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.ne (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1912 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.lt_s (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1913 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.lt_u (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1914 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.le_s (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1915 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.le_u (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1916 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.gt_s (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1917 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.gt_u (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1918 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.ge_s (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i32x4_cmp.wast:1919 +assert_malformed( + () => instantiate(`(memory 1) (func (param $$x v128) (param $$y v128) (result v128) (i4x32.ge_u (local.get $$x) (local.get $$y))) `), + `unknown operator`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_dot_i16x8.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_dot_i16x8.wast.js new file mode 100644 index 0000000000..be80d0d2e8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_dot_i16x8.wast.js @@ -0,0 +1,283 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:4 +let $0 = instantiate(`(module + (func (export "i32x4.dot_i16x8_s") (param v128 v128) (result v128) (i32x4.dot_i16x8_s (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:10 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:13 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:16 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:19 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:22 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:25 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:28 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0x1fff8000, 0x1fff8000, 0x1fff8000, 0x1fff8000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:31 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0x20000000, 0x20000000, 0x20000000, 0x20000000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:34 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x1fff8000, 0x1fff8000, 0x1fff8000, 0x1fff8000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:37 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x20000000, 0x20000000, 0x20000000, 0x20000000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:40 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x20008000, 0x20008000, 0x20008000, 0x20008000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:43 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xfffa, 0xfffa, 0xfffa, 0xfffa])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:46 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xfffc, 0xfffc, 0xfffc, 0xfffc])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:49 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffff0000, 0xffff0000, 0xffff0000, 0xffff0000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:52 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffc, 0xfffc, 0xfffc, 0xfffc])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:55 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:58 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x10000, 0x10000, 0x10000, 0x10000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:61 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7ffe0002, 0x7ffe0002, 0x7ffe0002, 0x7ffe0002])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:64 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:67 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0x7fff0000, 0x7fff0000, 0x7fff0000, 0x7fff0000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:70 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:73 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:76 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:79 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0xffff0002, 0xffff0002, 0xffff0002, 0xffff0002])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:82 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x10000, 0x10000, 0x10000, 0x10000])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:85 +assert_return( + () => invoke($0, `i32x4.dot_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:90 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.dot_i16x8_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:94 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.dot_i16x8_s-1st-arg-empty (result v128) + (i32x4.dot_i16x8_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_dot_i16x8.wast:102 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.dot_i16x8_s-arg-empty (result v128) + (i32x4.dot_i16x8_s) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_extadd_pairwise_i16x8.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_extadd_pairwise_i16x8.wast.js new file mode 100644 index 0000000000..910ae3c5b1 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_extadd_pairwise_i16x8.wast.js @@ -0,0 +1,184 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:4 +let $0 = instantiate(`(module + (func (export "i32x4.extadd_pairwise_i16x8_s") (param v128) (result v128) (i32x4.extadd_pairwise_i16x8_s (local.get 0))) + (func (export "i32x4.extadd_pairwise_i16x8_u") (param v128) (result v128) (i32x4.extadd_pairwise_i16x8_u (local.get 0))) +)`); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:11 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:13 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:15 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:17 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + ]), + [i32x4([0xfffc, 0xfffc, 0xfffc, 0xfffc])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:19 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0xffff0002, 0xffff0002, 0xffff0002, 0xffff0002])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:21 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffff0000, 0xffff0000, 0xffff0000, 0xffff0000])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:23 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:25 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:29 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:31 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:33 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1fffe, 0x1fffe, 0x1fffe, 0x1fffe])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:35 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_u`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + ]), + [i32x4([0xfffc, 0xfffc, 0xfffc, 0xfffc])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:37 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_u`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0x10002, 0x10002, 0x10002, 0x10002])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:39 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x10000, 0x10000, 0x10000, 0x10000])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:41 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0xfffe, 0xfffe, 0xfffe, 0xfffe])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:43 +assert_return( + () => invoke($0, `i32x4.extadd_pairwise_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1fffe, 0x1fffe, 0x1fffe, 0x1fffe])], +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:47 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extadd_pairwise_i16x8_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:48 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extadd_pairwise_i16x8_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:52 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extadd_pairwise_i16x8_s-arg-empty (result v128) + (i32x4.extadd_pairwise_i16x8_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extadd_pairwise_i16x8.wast:60 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extadd_pairwise_i16x8_u-arg-empty (result v128) + (i32x4.extadd_pairwise_i16x8_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_extmul_i16x8.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_extmul_i16x8.wast.js new file mode 100644 index 0000000000..8fc1d05e97 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_extmul_i16x8.wast.js @@ -0,0 +1,1066 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:4 +let $0 = instantiate(`(module + (func (export "i32x4.extmul_low_i16x8_s") (param v128 v128) (result v128) (i32x4.extmul_low_i16x8_s (local.get 0) (local.get 1))) + (func (export "i32x4.extmul_high_i16x8_s") (param v128 v128) (result v128) (i32x4.extmul_high_i16x8_s (local.get 0) (local.get 1))) + (func (export "i32x4.extmul_low_i16x8_u") (param v128 v128) (result v128) (i32x4.extmul_low_i16x8_u (local.get 0) (local.get 1))) + (func (export "i32x4.extmul_high_i16x8_u") (param v128 v128) (result v128) (i32x4.extmul_high_i16x8_u (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:13 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:16 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:19 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:22 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:25 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:28 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:31 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0xfffc000, 0xfffc000, 0xfffc000, 0xfffc000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:34 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0x10000000, 0x10000000, 0x10000000, 0x10000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:37 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0xfffc000, 0xfffc000, 0xfffc000, 0xfffc000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:40 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x10000000, 0x10000000, 0x10000000, 0x10000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:43 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x10004000, 0x10004000, 0x10004000, 0x10004000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:46 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:49 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:52 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:55 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:58 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:61 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:64 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x3fff0001, 0x3fff0001, 0x3fff0001, 0x3fff0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:67 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:70 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0x3fff8000, 0x3fff8000, 0x3fff8000, 0x3fff8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:73 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:76 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:79 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:82 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0xffff8001, 0xffff8001, 0xffff8001, 0xffff8001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:85 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:88 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:93 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:96 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:99 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:102 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:105 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:108 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:111 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0xfffc000, 0xfffc000, 0xfffc000, 0xfffc000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:114 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0x10000000, 0x10000000, 0x10000000, 0x10000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:117 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0xfffc000, 0xfffc000, 0xfffc000, 0xfffc000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:120 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x10000000, 0x10000000, 0x10000000, 0x10000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:123 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x10004000, 0x10004000, 0x10004000, 0x10004000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:126 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:129 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:132 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:135 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:138 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:141 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:144 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x3fff0001, 0x3fff0001, 0x3fff0001, 0x3fff0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:147 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:150 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0x3fff8000, 0x3fff8000, 0x3fff8000, 0x3fff8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:153 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:156 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:159 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:162 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0xffff8001, 0xffff8001, 0xffff8001, 0xffff8001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:165 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:168 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:173 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:176 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:179 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:182 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:185 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:188 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffe0001, 0xfffe0001, 0xfffe0001, 0xfffe0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:191 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0xfffc000, 0xfffc000, 0xfffc000, 0xfffc000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:194 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0x10000000, 0x10000000, 0x10000000, 0x10000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:197 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x9000c000, 0x9000c000, 0x9000c000, 0x9000c000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:200 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x90000000, 0x90000000, 0x90000000, 0x90000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:203 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x8fff4000, 0x8fff4000, 0x8fff4000, 0x8fff4000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:206 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:209 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:212 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:215 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x80017ffe, 0x80017ffe, 0x80017ffe, 0x80017ffe])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:218 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x80007fff, 0x80007fff, 0x80007fff, 0x80007fff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:221 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x7fff8000, 0x7fff8000, 0x7fff8000, 0x7fff8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:224 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x3fff0001, 0x3fff0001, 0x3fff0001, 0x3fff0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:227 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:230 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0x40008000, 0x40008000, 0x40008000, 0x40008000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:233 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:236 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:239 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffe0001, 0xfffe0001, 0xfffe0001, 0xfffe0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:242 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7ffe8001, 0x7ffe8001, 0x7ffe8001, 0x7ffe8001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:245 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x7fff8000, 0x7fff8000, 0x7fff8000, 0x7fff8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:248 +assert_return( + () => invoke($0, `i32x4.extmul_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffe0001, 0xfffe0001, 0xfffe0001, 0xfffe0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:253 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:256 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:259 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:262 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:265 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:268 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffe0001, 0xfffe0001, 0xfffe0001, 0xfffe0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:271 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff, 0x3fff]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0xfffc000, 0xfffc000, 0xfffc000, 0xfffc000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:274 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + i16x8([0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000]), + ]), + [i32x4([0x10000000, 0x10000000, 0x10000000, 0x10000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:277 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001, 0xc001]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x9000c000, 0x9000c000, 0x9000c000, 0x9000c000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:280 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x90000000, 0x90000000, 0x90000000, 0x90000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:283 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff, 0xbfff]), + i16x8([0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000, 0xc000]), + ]), + [i32x4([0x8fff4000, 0x8fff4000, 0x8fff4000, 0x8fff4000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:286 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffd, 0x7ffd, 0x7ffd, 0x7ffd])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:289 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:292 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:295 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002, 0x8002]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x80017ffe, 0x80017ffe, 0x80017ffe, 0x80017ffe])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:298 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x80007fff, 0x80007fff, 0x80007fff, 0x80007fff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:301 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x7fff8000, 0x7fff8000, 0x7fff8000, 0x7fff8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:304 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x3fff0001, 0x3fff0001, 0x3fff0001, 0x3fff0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:307 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:310 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0x40008000, 0x40008000, 0x40008000, 0x40008000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:313 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:316 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:319 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffe0001, 0xfffe0001, 0xfffe0001, 0xfffe0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:322 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7ffe8001, 0x7ffe8001, 0x7ffe8001, 0x7ffe8001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:325 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x7fff8000, 0x7fff8000, 0x7fff8000, 0x7fff8000])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:328 +assert_return( + () => invoke($0, `i32x4.extmul_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xfffe0001, 0xfffe0001, 0xfffe0001, 0xfffe0001])], +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:333 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extmul_low_i16x8_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:334 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extmul_high_i16x8_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:335 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extmul_low_i16x8_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:336 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extmul_high_i16x8_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:340 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extmul_low_i16x8_s-1st-arg-empty (result v128) + (i32x4.extmul_low_i16x8_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:348 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extmul_low_i16x8_s-arg-empty (result v128) + (i32x4.extmul_low_i16x8_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:356 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extmul_high_i16x8_s-1st-arg-empty (result v128) + (i32x4.extmul_high_i16x8_s (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:364 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extmul_high_i16x8_s-arg-empty (result v128) + (i32x4.extmul_high_i16x8_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:372 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extmul_low_i16x8_u-1st-arg-empty (result v128) + (i32x4.extmul_low_i16x8_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:380 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extmul_low_i16x8_u-arg-empty (result v128) + (i32x4.extmul_low_i16x8_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:388 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extmul_high_i16x8_u-1st-arg-empty (result v128) + (i32x4.extmul_high_i16x8_u (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_extmul_i16x8.wast:396 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extmul_high_i16x8_u-arg-empty (result v128) + (i32x4.extmul_high_i16x8_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_trunc_sat_f32x4.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_trunc_sat_f32x4.wast.js new file mode 100644 index 0000000000..bc24976ff9 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_trunc_sat_f32x4.wast.js @@ -0,0 +1,1016 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:3 +let $0 = instantiate(`(module + (func (export "i32x4.trunc_sat_f32x4_s") (param v128) (result v128) (i32x4.trunc_sat_f32x4_s (local.get 0))) + (func (export "i32x4.trunc_sat_f32x4_u") (param v128) (result v128) (i32x4.trunc_sat_f32x4_u (local.get 0))) +)`); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:10 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:12 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:14 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([1.5, 1.5, 1.5, 1.5])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:16 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-1.5, -1.5, -1.5, -1.5])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:18 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([1.9, 1.9, 1.9, 1.9])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:20 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([2, 2, 2, 2])]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:22 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-1.9, -1.9, -1.9, -1.9])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:24 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-2, -2, -2, -2])]), + [i32x4([0xfffffffe, 0xfffffffe, 0xfffffffe, 0xfffffffe])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:26 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([2147483500, 2147483500, 2147483500, 2147483500]), + ]), + [i32x4([0x7fffff80, 0x7fffff80, 0x7fffff80, 0x7fffff80])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:28 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([-2147483500, -2147483500, -2147483500, -2147483500]), + ]), + [i32x4([0x80000080, 0x80000080, 0x80000080, 0x80000080])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:30 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([2147483600, 2147483600, 2147483600, 2147483600]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:32 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([-2147483600, -2147483600, -2147483600, -2147483600]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:34 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([4294967300, 4294967300, 4294967300, 4294967300]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:36 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([-4294967300, -4294967300, -4294967300, -4294967300]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:38 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([2147483600, 2147483600, 2147483600, 2147483600]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:40 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([-2147483600, -2147483600, -2147483600, -2147483600]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:42 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([4294967300, 4294967300, 4294967300, 4294967300]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:44 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([4294967300, 4294967300, 4294967300, 4294967300]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:46 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([4294967300, 4294967300, 4294967300, 4294967300]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:48 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:50 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:52 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:54 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:56 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:58 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:60 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([1, 1, 1, 1])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:62 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-1, -1, -1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:64 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([1.1, 1.1, 1.1, 1.1])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:66 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-1.1, -1.1, -1.1, -1.1])]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:68 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x6, 0x6, 0x6, 0x6])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:70 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xfffffffa, 0xfffffffa, 0xfffffffa, 0xfffffffa])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:72 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:74 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:76 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([0.9, 0.9, 0.9, 0.9])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:78 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-0.9, -0.9, -0.9, -0.9])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:80 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([0.99999994, 0.99999994, 0.99999994, 0.99999994]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:82 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([-0.99999994, -0.99999994, -0.99999994, -0.99999994]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:84 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x6, 0x6, 0x6, 0x6])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:86 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0xfffffffa, 0xfffffffa, 0xfffffffa, 0xfffffffa])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:88 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:90 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:92 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:94 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:96 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:98 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:100 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + bytes('v128', [ + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:102 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + bytes('v128', [ + 0x44, + 0x44, + 0xc4, + 0xff, + 0x44, + 0x44, + 0xc4, + 0xff, + 0x44, + 0x44, + 0xc4, + 0xff, + 0x44, + 0x44, + 0xc4, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:104 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([42, 42, 42, 42])]), + [i32x4([0x2a, 0x2a, 0x2a, 0x2a])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:106 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [f32x4([-42, -42, -42, -42])]), + [i32x4([0xffffffd6, 0xffffffd6, 0xffffffd6, 0xffffffd6])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:108 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x75bcd18, 0x75bcd18, 0x75bcd18, 0x75bcd18])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:110 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_s`, [ + f32x4([1234568000, 1234568000, 1234568000, 1234568000]), + ]), + [i32x4([0x49960300, 0x49960300, 0x49960300, 0x49960300])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:114 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([0, 0, 0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:116 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-0, -0, -0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:118 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([1.5, 1.5, 1.5, 1.5])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:120 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-1.5, -1.5, -1.5, -1.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:122 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([1.9, 1.9, 1.9, 1.9])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:124 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([2, 2, 2, 2])]), + [i32x4([0x2, 0x2, 0x2, 0x2])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:126 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-1.9, -1.9, -1.9, -1.9])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:128 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-2, -2, -2, -2])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:130 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([2147483500, 2147483500, 2147483500, 2147483500]), + ]), + [i32x4([0x7fffff80, 0x7fffff80, 0x7fffff80, 0x7fffff80])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:132 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([-2147483500, -2147483500, -2147483500, -2147483500]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:134 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([2147483600, 2147483600, 2147483600, 2147483600]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:136 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([-2147483600, -2147483600, -2147483600, -2147483600]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:138 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([4294967300, 4294967300, 4294967300, 4294967300]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:140 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([-4294967300, -4294967300, -4294967300, -4294967300]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:142 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([2147483600, 2147483600, 2147483600, 2147483600]), + ]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:144 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([-2147483600, -2147483600, -2147483600, -2147483600]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:146 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([4294967300, 4294967300, 4294967300, 4294967300]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:148 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([4294967300, 4294967300, 4294967300, 4294967300]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:150 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([4294967300, 4294967300, 4294967300, 4294967300]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:152 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([ + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + 0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:154 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([ + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + -0.000000000000000000000000000000000000000000001, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:156 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([ + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + 0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:158 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([ + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + -0.000000000000000000000000000000000000011754944, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:160 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([0.5, 0.5, 0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:162 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-0.5, -0.5, -0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:164 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([1, 1, 1, 1])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:166 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-1, -1, -1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:168 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([1.1, 1.1, 1.1, 1.1])]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:170 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-1.1, -1.1, -1.1, -1.1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:172 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x6, 0x6, 0x6, 0x6])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:174 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:176 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:178 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:180 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([0.9, 0.9, 0.9, 0.9])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:182 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-0.9, -0.9, -0.9, -0.9])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:184 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([0.99999994, 0.99999994, 0.99999994, 0.99999994]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:186 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([-0.99999994, -0.99999994, -0.99999994, -0.99999994]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:188 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([6.2831855, 6.2831855, 6.2831855, 6.2831855]), + ]), + [i32x4([0x6, 0x6, 0x6, 0x6])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:190 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([-6.2831855, -6.2831855, -6.2831855, -6.2831855]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:192 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([ + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + 340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:194 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([ + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + -340282350000000000000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:196 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:198 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:200 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:202 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:204 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + bytes('v128', [ + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0x7f, + 0x44, + 0x44, + 0xc4, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:206 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + bytes('v128', [ + 0x44, + 0x44, + 0xc4, + 0xff, + 0x44, + 0x44, + 0xc4, + 0xff, + 0x44, + 0x44, + 0xc4, + 0xff, + 0x44, + 0x44, + 0xc4, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:208 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([42, 42, 42, 42])]), + [i32x4([0x2a, 0x2a, 0x2a, 0x2a])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:210 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [f32x4([-42, -42, -42, -42])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:212 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([123456790, 123456790, 123456790, 123456790]), + ]), + [i32x4([0x75bcd18, 0x75bcd18, 0x75bcd18, 0x75bcd18])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:214 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f32x4_u`, [ + f32x4([1234568000, 1234568000, 1234568000, 1234568000]), + ]), + [i32x4([0x49960300, 0x49960300, 0x49960300, 0x49960300])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:218 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.trunc_sat_f32x4_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:219 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.trunc_sat_f32x4_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:223 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.trunc_sat_f32x4_s-arg-empty (result v128) + (i32x4.trunc_sat_f32x4_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f32x4.wast:231 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.trunc_sat_f32x4_u-arg-empty (result v128) + (i32x4.trunc_sat_f32x4_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_trunc_sat_f64x2.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_trunc_sat_f64x2.wast.js new file mode 100644 index 0000000000..72cf5568a8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i32x4_trunc_sat_f64x2.wast.js @@ -0,0 +1,940 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:3 +let $0 = instantiate(`(module + (func (export "i32x4.trunc_sat_f64x2_s_zero") (param v128) (result v128) (i32x4.trunc_sat_f64x2_s_zero (local.get 0))) + (func (export "i32x4.trunc_sat_f64x2_u_zero") (param v128) (result v128) (i32x4.trunc_sat_f64x2_u_zero (local.get 0))) +)`); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:10 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:12 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:14 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([1.5, 1.5])]), + [i32x4([0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:16 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-1.5, -1.5])]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:18 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([1.9, 1.9])]), + [i32x4([0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:20 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([2, 2])]), + [i32x4([0x2, 0x2, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:22 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-1.9, -1.9])]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:24 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-2, -2])]), + [i32x4([0xfffffffe, 0xfffffffe, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:26 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([2147483520, 2147483520])]), + [i32x4([0x7fffff80, 0x7fffff80, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:28 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-2147483520, -2147483520])]), + [i32x4([0x80000080, 0x80000080, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:30 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([2147483648, 2147483648])]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:32 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-2147483648, -2147483648])]), + [i32x4([0x80000000, 0x80000000, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:34 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([4294967294, 4294967294])]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:36 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-4294967294, -4294967294])]), + [i32x4([0x80000000, 0x80000000, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:38 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([2147483647, 2147483647])]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:40 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-2147483647, -2147483647])]), + [i32x4([0x80000001, 0x80000001, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:42 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([4294967294, 4294967294])]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:44 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([4294967295, 4294967295])]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:46 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([4294967296, 4294967296])]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:48 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000000000001401298464324817, + 0.000000000000000000000000000000000000000000001401298464324817, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:50 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000000000001401298464324817, + -0.000000000000000000000000000000000000000000001401298464324817, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:52 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000011754943508222875, + 0.000000000000000000000000000000000000011754943508222875, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:54 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000011754943508222875, + -0.000000000000000000000000000000000000011754943508222875, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:56 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:58 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:60 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([1, 1])]), + [i32x4([0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:62 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-1, -1])]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:64 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([1.100000023841858, 1.100000023841858]), + ]), + [i32x4([0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:66 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([-1.100000023841858, -1.100000023841858]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:68 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([6.2831854820251465, 6.2831854820251465]), + ]), + [i32x4([0x6, 0x6, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:70 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([-6.2831854820251465, -6.2831854820251465]), + ]), + [i32x4([0xfffffffa, 0xfffffffa, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:72 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([ + 340282346638528860000000000000000000000, + 340282346638528860000000000000000000000, + ]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:74 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([ + -340282346638528860000000000000000000000, + -340282346638528860000000000000000000000, + ]), + ]), + [i32x4([0x80000000, 0x80000000, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:76 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([0.8999999761581421, 0.8999999761581421]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:78 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([-0.8999999761581421, -0.8999999761581421]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:80 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([0.9999999403953552, 0.9999999403953552]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:82 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([-0.9999999403953552, -0.9999999403953552]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:84 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([6.2831854820251465, 6.2831854820251465]), + ]), + [i32x4([0x6, 0x6, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:86 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([-6.2831854820251465, -6.2831854820251465]), + ]), + [i32x4([0xfffffffa, 0xfffffffa, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:88 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([ + 340282346638528860000000000000000000000, + 340282346638528860000000000000000000000, + ]), + ]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:90 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + f64x2([ + -340282346638528860000000000000000000000, + -340282346638528860000000000000000000000, + ]), + ]), + [i32x4([0x80000000, 0x80000000, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:92 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([Infinity, Infinity])]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:94 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-Infinity, -Infinity])]), + [i32x4([0x80000000, 0x80000000, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:96 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:98 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:100 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + bytes('v128', [ + 0x44, + 0x44, + 0x44, + 0x0, + 0x0, + 0x0, + 0xf0, + 0x7f, + 0x44, + 0x44, + 0x44, + 0x0, + 0x0, + 0x0, + 0xf0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:102 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [ + bytes('v128', [ + 0x44, + 0x44, + 0x44, + 0x0, + 0x0, + 0x0, + 0xf0, + 0xff, + 0x44, + 0x44, + 0x44, + 0x0, + 0x0, + 0x0, + 0xf0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:104 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([42, 42])]), + [i32x4([0x2a, 0x2a, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:106 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([-42, -42])]), + [i32x4([0xffffffd6, 0xffffffd6, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:108 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([123456792, 123456792])]), + [i32x4([0x75bcd18, 0x75bcd18, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:110 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_s_zero`, [f64x2([1234567890, 1234567890])]), + [i32x4([0x499602d2, 0x499602d2, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:114 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([0, 0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:116 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-0, -0])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:118 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([1.5, 1.5])]), + [i32x4([0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:120 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-1.5, -1.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:122 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([1.9, 1.9])]), + [i32x4([0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:124 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([2, 2])]), + [i32x4([0x2, 0x2, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:126 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-1.9, -1.9])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:128 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-2, -2])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:130 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([2147483520, 2147483520])]), + [i32x4([0x7fffff80, 0x7fffff80, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:132 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-2147483520, -2147483520])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:134 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([2147483648, 2147483648])]), + [i32x4([0x80000000, 0x80000000, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:136 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-2147483648, -2147483648])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:138 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([4294967294, 4294967294])]), + [i32x4([0xfffffffe, 0xfffffffe, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:140 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-4294967294, -4294967294])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:142 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([2147483647, 2147483647])]), + [i32x4([0x7fffffff, 0x7fffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:144 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-2147483647, -2147483647])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:146 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([4294967294, 4294967294])]), + [i32x4([0xfffffffe, 0xfffffffe, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:148 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([4294967295, 4294967295])]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:150 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([4294967296, 4294967296])]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:152 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000000000001401298464324817, + 0.000000000000000000000000000000000000000000001401298464324817, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:154 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000000000001401298464324817, + -0.000000000000000000000000000000000000000000001401298464324817, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:156 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([ + 0.000000000000000000000000000000000000011754943508222875, + 0.000000000000000000000000000000000000011754943508222875, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:158 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([ + -0.000000000000000000000000000000000000011754943508222875, + -0.000000000000000000000000000000000000011754943508222875, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:160 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([0.5, 0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:162 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-0.5, -0.5])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:164 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([1, 1])]), + [i32x4([0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:166 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-1, -1])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:168 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([1.100000023841858, 1.100000023841858]), + ]), + [i32x4([0x1, 0x1, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:170 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([-1.100000023841858, -1.100000023841858]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:172 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([6.2831854820251465, 6.2831854820251465]), + ]), + [i32x4([0x6, 0x6, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:174 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([-6.2831854820251465, -6.2831854820251465]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:176 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([ + 340282346638528860000000000000000000000, + 340282346638528860000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:178 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([ + -340282346638528860000000000000000000000, + -340282346638528860000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:180 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([0.8999999761581421, 0.8999999761581421]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:182 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([-0.8999999761581421, -0.8999999761581421]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:184 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([0.9999999403953552, 0.9999999403953552]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:186 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([-0.9999999403953552, -0.9999999403953552]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:188 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([6.2831854820251465, 6.2831854820251465]), + ]), + [i32x4([0x6, 0x6, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:190 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([-6.2831854820251465, -6.2831854820251465]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:192 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([ + 340282346638528860000000000000000000000, + 340282346638528860000000000000000000000, + ]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:194 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + f64x2([ + -340282346638528860000000000000000000000, + -340282346638528860000000000000000000000, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:196 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([Infinity, Infinity])]), + [i32x4([0xffffffff, 0xffffffff, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:198 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-Infinity, -Infinity])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:200 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:202 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:204 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + bytes('v128', [ + 0x44, + 0x44, + 0x44, + 0x0, + 0x0, + 0x0, + 0xf0, + 0x7f, + 0x44, + 0x44, + 0x44, + 0x0, + 0x0, + 0x0, + 0xf0, + 0x7f, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:206 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [ + bytes('v128', [ + 0x44, + 0x44, + 0x44, + 0x0, + 0x0, + 0x0, + 0xf0, + 0xff, + 0x44, + 0x44, + 0x44, + 0x0, + 0x0, + 0x0, + 0xf0, + 0xff, + ]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:208 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([42, 42])]), + [i32x4([0x2a, 0x2a, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:210 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([-42, -42])]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:212 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([123456792, 123456792])]), + [i32x4([0x75bcd18, 0x75bcd18, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:214 +assert_return( + () => invoke($0, `i32x4.trunc_sat_f64x2_u_zero`, [f64x2([1234567890, 1234567890])]), + [i32x4([0x499602d2, 0x499602d2, 0x0, 0x0])], +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:218 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.trunc_sat_f64x2_s_zero (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:219 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.trunc_sat_f64x2_u_zero (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:223 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.trunc_sat_f64x2_s_zero-arg-empty (result v128) + (i32x4.trunc_sat_f64x2_s_zero) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i32x4_trunc_sat_f64x2.wast:231 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.trunc_sat_f64x2_u_zero-arg-empty (result v128) + (i32x4.trunc_sat_f64x2_u_zero) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_arith.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_arith.wast.js new file mode 100644 index 0000000000..90ad748a42 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_arith.wast.js @@ -0,0 +1,1753 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i64x2_arith.wast + +// ./test/core/simd/simd_i64x2_arith.wast:4 +let $0 = instantiate(`(module + (func (export "i64x2.add") (param v128 v128) (result v128) (i64x2.add (local.get 0) (local.get 1))) + (func (export "i64x2.sub") (param v128 v128) (result v128) (i64x2.sub (local.get 0) (local.get 1))) + (func (export "i64x2.mul") (param v128 v128) (result v128) (i64x2.mul (local.get 0) (local.get 1))) + (func (export "i64x2.neg") (param v128) (result v128) (i64x2.neg (local.get 0))) +)`); + +// ./test/core/simd/simd_i64x2_arith.wast:13 +assert_return( + () => invoke($0, `i64x2.add`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:16 +assert_return( + () => invoke($0, `i64x2.add`, [i64x2([0x0n, 0x0n]), i64x2([0x1n, 0x1n])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:19 +assert_return( + () => invoke($0, `i64x2.add`, [i64x2([0x1n, 0x1n]), i64x2([0x1n, 0x1n])]), + [i64x2([0x2n, 0x2n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:22 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x0n, 0x0n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:25 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x1n, 0x1n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:28 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xfffffffffffffffen, 0xfffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:31 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x3fffffffffffffffn, 0x3fffffffffffffffn]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:34 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x4000000000000000n, 0x4000000000000000n]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:37 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xc000000000000001n, 0xc000000000000001n]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:40 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:43 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xbfffffffffffffffn, 0xbfffffffffffffffn]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:46 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7ffffffffffffffdn, 0x7ffffffffffffffdn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:49 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:52 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:55 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000002n, 0x8000000000000002n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:58 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000001n, 0x8000000000000001n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:61 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:64 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + ]), + [i64x2([0xfffffffffffffffen, 0xfffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:67 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:70 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000001n, 0x8000000000000001n]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:73 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x0n, 0x0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:76 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:79 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xfffffffffffffffen, 0xfffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:82 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + ]), + [i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:85 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:88 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xfffffffffffffffen, 0xfffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:91 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x3fffffffffffffffn, 0x3fffffffffffffffn]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:94 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x4000000000000000n, 0x4000000000000000n]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:97 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xc000000000000001n, 0xc000000000000001n]), + i64x2([0xfbfffffff0000001n, 0xfbfffffff0000001n]), + ]), + [i64x2([0xbbfffffff0000002n, 0xbbfffffff0000002n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:100 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xfc00000000000000n, 0xfc00000000000000n]), + ]), + [i64x2([0xbc00000000000000n, 0xbc00000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:103 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xfbffffffffffffffn, 0xfbffffffffffffffn]), + ]), + [i64x2([0xbbffffffffffffffn, 0xbbffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:106 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x7ffffffffffffffn, 0x7ffffffffffffffn]), + ]), + [i64x2([0x87fffffffffffffen, 0x87fffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:109 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:112 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:115 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:118 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:121 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:124 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xfffffffffffffffen, 0xfffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:127 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:130 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x1n, 0x1n]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:133 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i16x8([0x0, 0x0, 0x0, 0x8000, 0x0, 0x0, 0x0, 0x8000]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:136 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x1n, 0x1n]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:139 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i32x4([0x0, 0x80000000, 0x0, 0x80000000]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:142 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x1n, 0x1n]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:145 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + f64x2([0, 0]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:148 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:151 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + f64x2([1, 1]), + ]), + [i64x2([0xbff0000000000000n, 0xbff0000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:154 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + f64x2([-1, -1]), + ]), + [i64x2([0x3ff0000000000000n, 0x3ff0000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:157 +assert_return( + () => invoke($0, `i64x2.add`, [i64x2([0x1n, 0x1n]), f64x2([Infinity, Infinity])]), + [i64x2([0x7ff0000000000001n, 0x7ff0000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:160 +assert_return( + () => invoke($0, `i64x2.add`, [i64x2([0x1n, 0x1n]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xfff0000000000001n, 0xfff0000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:163 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x1n, 0x1n]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x7ff8000000000001n, 0x7ff8000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:166 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x0n, 0x1n]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:169 +assert_return( + () => invoke($0, `i64x2.add`, [i64x2([0x0n, 0x1n]), i64x2([0x0n, 0x2n])]), + [i64x2([0x0n, 0x3n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:172 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x112210f47de98115n, 0x112210f47de98115n]), + i64x2([0x112210f47de98115n, 0x112210f47de98115n]), + ]), + [i64x2([0x224421e8fbd3022an, 0x224421e8fbd3022an])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:175 +assert_return( + () => invoke($0, `i64x2.add`, [ + i64x2([0x1234567890abcdefn, 0x1234567890abcdefn]), + i64x2([0x90abcdef12345678n, 0x90abcdef12345678n]), + ]), + [i64x2([0xa2e02467a2e02467n, 0xa2e02467a2e02467n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:180 +assert_return( + () => invoke($0, `i64x2.sub`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:183 +assert_return( + () => invoke($0, `i64x2.sub`, [i64x2([0x0n, 0x0n]), i64x2([0x1n, 0x1n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:186 +assert_return( + () => invoke($0, `i64x2.sub`, [i64x2([0x1n, 0x1n]), i64x2([0x1n, 0x1n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:189 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x0n, 0x0n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:192 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x1n, 0x1n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x2n, 0x2n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:195 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:198 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x3fffffffffffffffn, 0x3fffffffffffffffn]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:201 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x4000000000000000n, 0x4000000000000000n]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:204 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xc000000000000001n, 0xc000000000000001n]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:207 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:210 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xbfffffffffffffffn, 0xbfffffffffffffffn]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:213 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7ffffffffffffffdn, 0x7ffffffffffffffdn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7ffffffffffffffcn, 0x7ffffffffffffffcn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:216 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7ffffffffffffffdn, 0x7ffffffffffffffdn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:219 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:222 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000002n, 0x8000000000000002n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x8000000000000003n, 0x8000000000000003n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:225 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000001n, 0x8000000000000001n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x8000000000000002n, 0x8000000000000002n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:228 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:231 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:234 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:237 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000001n, 0x8000000000000001n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:240 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x0n, 0x0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:243 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0xfffffffffffffffen, 0xfffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:246 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:249 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:252 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:255 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:258 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x3fffffffffffffffn, 0x3fffffffffffffffn]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:261 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x4000000000000000n, 0x4000000000000000n]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:264 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xc000000000000001n, 0xc000000000000001n]), + i64x2([0xfbfffffff0000001n, 0xfbfffffff0000001n]), + ]), + [i64x2([0xc400000010000000n, 0xc400000010000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:267 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xfc00000000000000n, 0xfc00000000000000n]), + ]), + [i64x2([0xc400000000000000n, 0xc400000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:270 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xfbffffffffffffffn, 0xfbffffffffffffffn]), + ]), + [i64x2([0xc400000000000001n, 0xc400000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:273 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x7ffffffffffffffn, 0x7ffffffffffffffn]), + ]), + [i64x2([0x7800000000000000n, 0x7800000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:276 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:279 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:282 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:285 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:288 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0xfffffffffffffffen, 0xfffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:291 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:294 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:297 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x1n, 0x1n]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i64x2([0x2n, 0x2n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:300 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i16x8([0x0, 0x0, 0x0, 0x8000, 0x0, 0x0, 0x0, 0x8000]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:303 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x1n, 0x1n]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i64x2([0x2n, 0x2n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:306 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i32x4([0x0, 0x80000000, 0x0, 0x80000000]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:309 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x1n, 0x1n]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x2n, 0x2n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:312 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + f64x2([0, 0]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:315 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + f64x2([-0, -0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:318 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + f64x2([1, 1]), + ]), + [i64x2([0x4010000000000000n, 0x4010000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:321 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + f64x2([-1, -1]), + ]), + [i64x2([0xc010000000000000n, 0xc010000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:324 +assert_return( + () => invoke($0, `i64x2.sub`, [i64x2([0x1n, 0x1n]), f64x2([Infinity, Infinity])]), + [i64x2([0x8010000000000001n, 0x8010000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:327 +assert_return( + () => invoke($0, `i64x2.sub`, [i64x2([0x1n, 0x1n]), f64x2([-Infinity, -Infinity])]), + [i64x2([0x10000000000001n, 0x10000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:330 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x1n, 0x1n]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x8008000000000001n, 0x8008000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:333 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x0n, 0x1n]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x2n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:336 +assert_return( + () => invoke($0, `i64x2.sub`, [i64x2([0x0n, 0x1n]), i64x2([0x0n, 0x2n])]), + [i64x2([0x0n, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:339 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x2c9c7076ed2f8115n, 0x2c9c7076ed2f8115n]), + i64x2([0x112210f47de98115n, 0x112210f47de98115n]), + ]), + [i64x2([0x1b7a5f826f460000n, 0x1b7a5f826f460000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:342 +assert_return( + () => invoke($0, `i64x2.sub`, [ + i64x2([0x90abcdef87654321n, 0x90abcdef87654321n]), + i64x2([0x1234567890abcdefn, 0x1234567890abcdefn]), + ]), + [i64x2([0x7e777776f6b97532n, 0x7e777776f6b97532n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:347 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:350 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x0n, 0x0n]), i64x2([0x1n, 0x1n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:353 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x1n, 0x1n]), i64x2([0x1n, 0x1n])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:356 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x0n, 0x0n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:359 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x1n, 0x1n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:362 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:365 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x3fffffffffffffffn, 0x3fffffffffffffffn]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0xc000000000000000n, 0xc000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:368 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x4000000000000000n, 0x4000000000000000n]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:371 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xc000000000000001n, 0xc000000000000001n]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0xc000000000000000n, 0xc000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:374 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:377 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xbfffffffffffffffn, 0xbfffffffffffffffn]), + i64x2([0xc000000000000000n, 0xc000000000000000n]), + ]), + [i64x2([0x4000000000000000n, 0x4000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:380 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x7ffffffffffffffdn, 0x7ffffffffffffffdn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7ffffffffffffffdn, 0x7ffffffffffffffdn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:383 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:386 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:389 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000002n, 0x8000000000000002n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:392 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000001n, 0x8000000000000001n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:395 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:398 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:401 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:404 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000001n, 0x8000000000000001n]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:407 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x0n, 0x0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:410 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:413 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:416 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + ]), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:419 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:422 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:425 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x3fffffffffffffffn, 0x3fffffffffffffffn]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0xc000000000000000n, 0xc000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:428 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x4000000000000000n, 0x4000000000000000n]), + i64x2([0x4000000000000000n, 0x4000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:431 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xc000000000000001n, 0xc000000000000001n]), + i64x2([0xfbfffffff0000001n, 0xfbfffffff0000001n]), + ]), + [i64x2([0xbbfffffff0000001n, 0xbbfffffff0000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:434 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xfc00000000000000n, 0xfc00000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:437 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xc000000000000000n, 0xc000000000000000n]), + i64x2([0xfbffffffffffffffn, 0xfbffffffffffffffn]), + ]), + [i64x2([0x4000000000000000n, 0x4000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:440 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x7ffffffffffffffn, 0x7ffffffffffffffn]), + ]), + [i64x2([0x7800000000000001n, 0x7800000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:443 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:446 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:449 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:452 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i64x2([0x8000000000000000n, 0x8000000000000000n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:455 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x1n, 0x1n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:458 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:461 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:464 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:467 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i16x8([0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x2]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:470 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:473 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x8000000000000000n, 0x8000000000000000n]), + i32x4([0x0, 0x2, 0x0, 0x2]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:476 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:479 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x80000000n, 0x80000000n]), f64x2([0, 0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:482 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x80000000n, 0x80000000n]), f64x2([-0, -0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:485 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x80000000n, 0x80000000n]), f64x2([1, 1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:488 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x80000000n, 0x80000000n]), f64x2([-1, -1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:491 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x1n, 0x1n]), f64x2([Infinity, Infinity])]), + [i64x2([0x7ff0000000000000n, 0x7ff0000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:494 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x1n, 0x1n]), f64x2([-Infinity, -Infinity])]), + [i64x2([0xfff0000000000000n, 0xfff0000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:497 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x1n, 0x1n]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [i64x2([0x7ff8000000000000n, 0x7ff8000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:500 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x0n, 0x1n]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:503 +assert_return( + () => invoke($0, `i64x2.mul`, [i64x2([0x0n, 0x1n]), i64x2([0x0n, 0x2n])]), + [i64x2([0x0n, 0x2n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:506 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x112210f47de98115n, 0x112210f47de98115n]), + i64x2([0x112210f47de98115n, 0x112210f47de98115n]), + ]), + [i64x2([0x86c28d12bb502bb9n, 0x86c28d12bb502bb9n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:509 +assert_return( + () => invoke($0, `i64x2.mul`, [ + i64x2([0x1234567890abcdefn, 0x1234567890abcdefn]), + i64x2([0x90abcdef87654321n, 0x90abcdef87654321n]), + ]), + [i64x2([0x602f05e9e55618cfn, 0x602f05e9e55618cfn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:514 +assert_return(() => invoke($0, `i64x2.neg`, [i64x2([0x0n, 0x0n])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_i64x2_arith.wast:516 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x1n, 0x1n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:518 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:520 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x7ffffffffffffffen, 0x7ffffffffffffffen])]), + [i64x2([0x8000000000000002n, 0x8000000000000002n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:522 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x8000000000000001n, 0x8000000000000001n])]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:524 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x8000000000000000n, 0x8000000000000000n])]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:526 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])]), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:528 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:530 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x1n, 0x1n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:532 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:534 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x8000000000000000n, 0x8000000000000000n])]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:536 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x8000000000000001n, 0x8000000000000001n])]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:538 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])]), + [i64x2([0x8000000000000001n, 0x8000000000000001n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:540 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0x8000000000000000n, 0x8000000000000000n])]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:542 +assert_return( + () => invoke($0, `i64x2.neg`, [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:546 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.neg (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:547 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.add (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:548 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.sub (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:549 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.mul (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:553 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.neg-arg-empty (result v128) + (i64x2.neg) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:561 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.add-1st-arg-empty (result v128) + (i64x2.add (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:569 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.add-arg-empty (result v128) + (i64x2.add) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:577 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.sub-1st-arg-empty (result v128) + (i64x2.sub (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:585 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.sub-arg-empty (result v128) + (i64x2.sub) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:593 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.mul-1st-arg-empty (result v128) + (i64x2.mul (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:601 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.mul-arg-empty (result v128) + (i64x2.mul) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith.wast:611 +let $1 = instantiate(`(module + (func (export "add-sub") (param v128 v128 v128) (result v128) + (i64x2.add (i64x2.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-add") (param v128 v128 v128) (result v128) + (i64x2.mul (i64x2.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "mul-sub") (param v128 v128 v128) (result v128) + (i64x2.mul (i64x2.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "sub-add") (param v128 v128 v128) (result v128) + (i64x2.sub (i64x2.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "add-neg") (param v128 v128) (result v128) + (i64x2.add (i64x2.neg (local.get 0)) (local.get 1))) + (func (export "mul-neg") (param v128 v128) (result v128) + (i64x2.mul (i64x2.neg (local.get 0)) (local.get 1))) + (func (export "sub-neg") (param v128 v128) (result v128) + (i64x2.sub (i64x2.neg (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_i64x2_arith.wast:628 +assert_return( + () => invoke($1, `add-sub`, [ + i64x2([0x0n, 0x1n]), + i64x2([0x0n, 0x2n]), + i64x2([0x0n, 0x2n]), + ]), + [i64x2([0x0n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:632 +assert_return( + () => invoke($1, `mul-add`, [ + i64x2([0x0n, 0x1n]), + i64x2([0x0n, 0x1n]), + i64x2([0x2n, 0x2n]), + ]), + [i64x2([0x0n, 0x4n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:636 +assert_return( + () => invoke($1, `mul-sub`, [ + i64x2([0x0n, 0x2n]), + i64x2([0x0n, 0x1n]), + i64x2([0x0n, 0x1n]), + ]), + [i64x2([0x0n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:640 +assert_return( + () => invoke($1, `sub-add`, [ + i64x2([0x0n, 0x1n]), + i64x2([0x0n, 0x2n]), + i64x2([0x0n, 0x2n]), + ]), + [i64x2([0x0n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:644 +assert_return( + () => invoke($1, `add-neg`, [i64x2([0x0n, 0x1n]), i64x2([0x0n, 0x1n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:647 +assert_return( + () => invoke($1, `mul-neg`, [i64x2([0x0n, 0x1n]), i64x2([0x2n, 0x2n])]), + [i64x2([0x0n, 0xfffffffffffffffen])], +); + +// ./test/core/simd/simd_i64x2_arith.wast:650 +assert_return( + () => invoke($1, `sub-neg`, [i64x2([0x0n, 0x1n]), i64x2([0x0n, 0x1n])]), + [i64x2([0x0n, 0xfffffffffffffffen])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_arith2.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_arith2.wast.js new file mode 100644 index 0000000000..208a463b94 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_arith2.wast.js @@ -0,0 +1,149 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i64x2_arith2.wast + +// ./test/core/simd/simd_i64x2_arith2.wast:3 +let $0 = instantiate(`(module + (func (export "i64x2.abs") (param v128) (result v128) (i64x2.abs (local.get 0))) + (func (export "i64x2.abs_with_const_0") (result v128) (i64x2.abs (v128.const i64x2 -9223372036854775808 9223372036854775807))) +)`); + +// ./test/core/simd/simd_i64x2_arith2.wast:8 +assert_return(() => invoke($0, `i64x2.abs`, [i64x2([0x1n, 0x1n])]), [i64x2([0x1n, 0x1n])]); + +// ./test/core/simd/simd_i64x2_arith2.wast:10 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:12 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:14 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:16 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0x8000000000000000n, 0x8000000000000000n])]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:18 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0x8000000000000000n, 0x8000000000000000n])]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:20 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0x8000000000000000n, 0x8000000000000000n])]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:22 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0x8000000000000000n, 0x8000000000000000n])]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:24 +assert_return(() => invoke($0, `i64x2.abs`, [i64x2([0x7bn, 0x7bn])]), [i64x2([0x7bn, 0x7bn])]); + +// ./test/core/simd/simd_i64x2_arith2.wast:26 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0xffffffffffffff85n, 0xffffffffffffff85n])]), + [i64x2([0x7bn, 0x7bn])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:28 +assert_return(() => invoke($0, `i64x2.abs`, [i64x2([0x80n, 0x80n])]), [i64x2([0x80n, 0x80n])]); + +// ./test/core/simd/simd_i64x2_arith2.wast:30 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0xffffffffffffff80n, 0xffffffffffffff80n])]), + [i64x2([0x80n, 0x80n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:32 +assert_return(() => invoke($0, `i64x2.abs`, [i64x2([0x80n, 0x80n])]), [i64x2([0x80n, 0x80n])]); + +// ./test/core/simd/simd_i64x2_arith2.wast:34 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0xffffffffffffff80n, 0xffffffffffffff80n])]), + [i64x2([0x80n, 0x80n])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:38 +assert_return( + () => invoke($0, `i64x2.abs_with_const_0`, []), + [i64x2([0x8000000000000000n, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:43 +assert_return( + () => invoke($0, `i64x2.abs`, [i64x2([0x8000000000000000n, 0x7fffffffffffffffn])]), + [i64x2([0x8000000000000000n, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_arith2.wast:47 +assert_return(() => invoke($0, `i64x2.abs`, [i64x2([0x0n, 0x0n])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_i64x2_arith2.wast:49 +assert_return(() => invoke($0, `i64x2.abs`, [i64x2([0x0n, 0x0n])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_i64x2_arith2.wast:51 +assert_return(() => invoke($0, `i64x2.abs`, [i64x2([0x0n, 0x0n])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_i64x2_arith2.wast:53 +assert_return(() => invoke($0, `i64x2.abs`, [i64x2([0x0n, 0x0n])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_i64x2_arith2.wast:59 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.abs (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith2.wast:63 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.abs-arg-empty (result v128) + (i64x2.abs) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_arith2.wast:73 +let $1 = instantiate(`(module + (func (export "i64x2.abs-i64x2.abs") (param v128) (result v128) (i64x2.abs (i64x2.abs (local.get 0)))) +)`); + +// ./test/core/simd/simd_i64x2_arith2.wast:77 +assert_return( + () => invoke($1, `i64x2.abs-i64x2.abs`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x1n, 0x1n])], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_cmp.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_cmp.wast.js new file mode 100644 index 0000000000..9e346fa8b3 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_cmp.wast.js @@ -0,0 +1,980 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i64x2_cmp.wast + +// ./test/core/simd/simd_i64x2_cmp.wast:4 +let $0 = instantiate(`(module + (func (export "eq") (param $$x v128) (param $$y v128) (result v128) (i64x2.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x v128) (param $$y v128) (result v128) (i64x2.ne (local.get $$x) (local.get $$y))) + (func (export "lt_s") (param $$x v128) (param $$y v128) (result v128) (i64x2.lt_s (local.get $$x) (local.get $$y))) + (func (export "le_s") (param $$x v128) (param $$y v128) (result v128) (i64x2.le_s (local.get $$x) (local.get $$y))) + (func (export "gt_s") (param $$x v128) (param $$y v128) (result v128) (i64x2.gt_s (local.get $$x) (local.get $$y))) + (func (export "ge_s") (param $$x v128) (param $$y v128) (result v128) (i64x2.ge_s (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/simd/simd_i64x2_cmp.wast:17 +assert_return( + () => invoke($0, `eq`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:20 +assert_return( + () => invoke($0, `eq`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:23 +assert_return( + () => invoke($0, `eq`, [ + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:26 +assert_return( + () => invoke($0, `eq`, [ + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:29 +assert_return( + () => invoke($0, `eq`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:32 +assert_return( + () => invoke($0, `eq`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:35 +assert_return( + () => invoke($0, `eq`, [ + i64x2([0x3020100n, 0x11100904n]), + i64x2([0x3020100n, 0x11100904n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:38 +assert_return( + () => invoke($0, `eq`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xfffffffffffffffn, 0xfffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:41 +assert_return(() => invoke($0, `eq`, [i64x2([0x1n, 0x1n]), i64x2([0x2n, 0x2n])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_i64x2_cmp.wast:50 +assert_return( + () => invoke($0, `ne`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:53 +assert_return(() => invoke($0, `ne`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_i64x2_cmp.wast:56 +assert_return( + () => invoke($0, `ne`, [ + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:59 +assert_return( + () => invoke($0, `ne`, [ + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:62 +assert_return( + () => invoke($0, `ne`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:65 +assert_return( + () => invoke($0, `ne`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:68 +assert_return( + () => invoke($0, `ne`, [ + i64x2([0x3020100n, 0x11100904n]), + i64x2([0x3020100n, 0x11100904n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:77 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:80 +assert_return( + () => invoke($0, `lt_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:83 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:86 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:89 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:92 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:95 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0x302010011100904n, 0x1a0b0a12ffabaa1bn]), + i64x2([0x302010011100904n, 0x1a0b0a12ffabaa1bn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:100 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:103 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:106 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0x8080808080808080n, 0x8080808080808080n]), + i64x2([0x8080808080808080n, 0x8080808080808080n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:109 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0x8080808080808080n, 0x8080808080808080n]), + i64x2([0x8080808080808080n, 0x8080808080808080n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:112 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0x8382818000fffefdn, 0x7f020100fffefd80n]), + i64x2([0x8382818000fffefdn, 0x7f020100fffefd80n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:117 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:120 +assert_return( + () => invoke($0, `lt_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:123 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:126 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:129 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:132 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:135 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0x8000000000000001n, 0xffffffffffffffffn]), + i64x2([0x8000000000000001n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:140 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0xc060000000000000n, 0xc05fc00000000000n]), + f64x2([-128, -127]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:143 +assert_return( + () => invoke($0, `lt_s`, [ + i64x2([0x3ff0000000000000n, 0x405fc00000000000n]), + f64x2([1, 127]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:152 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:155 +assert_return( + () => invoke($0, `le_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:158 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:161 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:164 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:167 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:170 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0x302010011100904n, 0x1a0b0a12ffabaa1bn]), + i64x2([0x302010011100904n, 0x1a0b0a12ffabaa1bn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:175 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:178 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:181 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0x8080808080808080n, 0x8080808080808080n]), + i64x2([0x8080808080808080n, 0x8080808080808080n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:184 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0x8080808080808080n, 0x8080808080808080n]), + i64x2([0x8080808080808080n, 0x8080808080808080n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:187 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0x8382818000fffefdn, 0x7f020100fffefd80n]), + i64x2([0x8382818000fffefdn, 0x7f020100fffefd80n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:192 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:195 +assert_return( + () => invoke($0, `le_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0xffffffffffffffffn])]), + [i64x2([0xffffffffffffffffn, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:198 +assert_return( + () => invoke($0, `le_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:201 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:204 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:207 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:210 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:213 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0x8000000000000001n, 0xffffffffffffffffn]), + i64x2([0x8000000000000001n, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:218 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0xc060000000000000n, 0xc05fc00000000000n]), + f64x2([-128, -127]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:221 +assert_return( + () => invoke($0, `le_s`, [ + i64x2([0x3ff0000000000000n, 0x405fc00000000000n]), + f64x2([1, 127]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:230 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:233 +assert_return( + () => invoke($0, `gt_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:236 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:239 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:242 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:245 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:248 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0x302010011100904n, 0x1a0b0a12ffabaa1bn]), + i64x2([0x302010011100904n, 0x1a0b0a12ffabaa1bn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:253 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:256 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:259 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0x8080808080808080n, 0x8080808080808080n]), + i64x2([0x8080808080808080n, 0x8080808080808080n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:262 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0x8080808080808080n, 0x8080808080808080n]), + i64x2([0x8080808080808080n, 0x8080808080808080n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:265 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0x8382818000fffefdn, 0x7f020100fffefd80n]), + i64x2([0x8382818000fffefdn, 0x7f020100fffefd80n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:270 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:273 +assert_return( + () => invoke($0, `gt_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:276 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:279 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:282 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:285 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:288 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0x8000000000000001n, 0xffffffffffffffffn]), + i64x2([0x8000000000000001n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:293 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0xc060000000000000n, 0xc05fc00000000000n]), + f64x2([-128, -127]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:296 +assert_return( + () => invoke($0, `gt_s`, [ + i64x2([0x3ff0000000000000n, 0x405fc00000000000n]), + f64x2([1, 127]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:305 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:308 +assert_return( + () => invoke($0, `ge_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:311 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + i64x2([0xf0f0f0f0f0f0f0f0n, 0xf0f0f0f0f0f0f0f0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:314 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + i64x2([0xf0f0f0f0f0f0f0fn, 0xf0f0f0f0f0f0f0fn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:317 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:320 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:323 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0x302010011100904n, 0x1a0b0a12ffabaa1bn]), + i64x2([0x302010011100904n, 0x1a0b0a12ffabaa1bn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:328 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:331 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:334 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0x8080808080808080n, 0x8080808080808080n]), + i64x2([0x8080808080808080n, 0x8080808080808080n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:337 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0x8080808080808080n, 0x8080808080808080n]), + i64x2([0x8080808080808080n, 0x8080808080808080n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:340 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0x8382818000fffefdn, 0x7f020100fffefd80n]), + i64x2([0x8382818000fffefdn, 0x7f020100fffefd80n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:345 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:348 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0x0n, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:351 +assert_return( + () => invoke($0, `ge_s`, [i64x2([0x0n, 0x0n]), i64x2([0x0n, 0x0n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:354 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:357 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:360 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xffffffffffffffffn, 0x0n]), + i64x2([0xffffffffffffffffn, 0x0n]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:363 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0x0n, 0xffffffffffffffffn]), + i64x2([0x0n, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:366 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0x8000000000000001n, 0xffffffffffffffffn]), + i64x2([0x8000000000000001n, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:371 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0xc060000000000000n, 0xc05fc00000000000n]), + f64x2([-128, -127]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:374 +assert_return( + () => invoke($0, `ge_s`, [ + i64x2([0x3ff0000000000000n, 0x405fc00000000000n]), + f64x2([1, 127]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_cmp.wast:380 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.eq (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:381 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.ne (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:382 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.ge_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:383 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.gt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:384 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.le_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:385 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.lt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:389 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.eq-1st-arg-empty (result v128) + (i64x2.eq (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:397 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.eq-arg-empty (result v128) + (i64x2.eq) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:405 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.ne-1st-arg-empty (result v128) + (i64x2.ne (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_cmp.wast:413 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.ne-arg-empty (result v128) + (i64x2.ne) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_extmul_i32x4.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_extmul_i32x4.wast.js new file mode 100644 index 0000000000..7427c7fd0d --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i64x2_extmul_i32x4.wast.js @@ -0,0 +1,1066 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:4 +let $0 = instantiate(`(module + (func (export "i64x2.extmul_low_i32x4_s") (param v128 v128) (result v128) (i64x2.extmul_low_i32x4_s (local.get 0) (local.get 1))) + (func (export "i64x2.extmul_high_i32x4_s") (param v128 v128) (result v128) (i64x2.extmul_high_i32x4_s (local.get 0) (local.get 1))) + (func (export "i64x2.extmul_low_i32x4_u") (param v128 v128) (result v128) (i64x2.extmul_low_i32x4_u (local.get 0) (local.get 1))) + (func (export "i64x2.extmul_high_i32x4_u") (param v128 v128) (result v128) (i64x2.extmul_high_i32x4_u (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:13 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:16 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:19 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:22 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:25 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:28 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:31 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i64x2([0xfffffffc0000000n, 0xfffffffc0000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:34 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i64x2([0x1000000000000000n, 0x1000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:37 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0xfffffffc0000000n, 0xfffffffc0000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:40 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x1000000000000000n, 0x1000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:43 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x1000000040000000n, 0x1000000040000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:46 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x7ffffffdn, 0x7ffffffdn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:49 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:52 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:55 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:58 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:61 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:64 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x3fffffff00000001n, 0x3fffffff00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:67 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x4000000000000000n, 0x4000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:70 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i64x2([0x3fffffff80000000n, 0x3fffffff80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:73 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:76 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:79 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:82 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0xffffffff80000001n, 0xffffffff80000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:85 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:88 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:93 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:96 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:99 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:102 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:105 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:108 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:111 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i64x2([0xfffffffc0000000n, 0xfffffffc0000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:114 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i64x2([0x1000000000000000n, 0x1000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:117 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0xfffffffc0000000n, 0xfffffffc0000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:120 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x1000000000000000n, 0x1000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:123 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x1000000040000000n, 0x1000000040000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:126 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x7ffffffdn, 0x7ffffffdn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:129 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:132 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:135 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:138 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:141 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:144 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x3fffffff00000001n, 0x3fffffff00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:147 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x4000000000000000n, 0x4000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:150 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i64x2([0x3fffffff80000000n, 0x3fffffff80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:153 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:156 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:159 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:162 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0xffffffff80000001n, 0xffffffff80000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:165 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:168 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:173 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:176 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:179 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:182 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:185 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:188 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xfffffffe00000001n, 0xfffffffe00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:191 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i64x2([0xfffffffc0000000n, 0xfffffffc0000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:194 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i64x2([0x1000000000000000n, 0x1000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:197 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x90000000c0000000n, 0x90000000c0000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:200 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x9000000000000000n, 0x9000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:203 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x8fffffff40000000n, 0x8fffffff40000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:206 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x7ffffffdn, 0x7ffffffdn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:209 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:212 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:215 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x800000017ffffffen, 0x800000017ffffffen])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:218 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x800000007fffffffn, 0x800000007fffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:221 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x7fffffff80000000n, 0x7fffffff80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:224 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x3fffffff00000001n, 0x3fffffff00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:227 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x4000000000000000n, 0x4000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:230 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i64x2([0x4000000080000000n, 0x4000000080000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:233 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:236 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:239 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xfffffffe00000001n, 0xfffffffe00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:242 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7ffffffe80000001n, 0x7ffffffe80000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:245 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x7fffffff80000000n, 0x7fffffff80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:248 +assert_return( + () => invoke($0, `i64x2.extmul_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xfffffffe00000001n, 0xfffffffe00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:253 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:256 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:259 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:262 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:265 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:268 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xfffffffe00000001n, 0xfffffffe00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:271 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i64x2([0xfffffffc0000000n, 0xfffffffc0000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:274 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + i32x4([0x40000000, 0x40000000, 0x40000000, 0x40000000]), + ]), + [i64x2([0x1000000000000000n, 0x1000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:277 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xc0000001, 0xc0000001, 0xc0000001, 0xc0000001]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x90000000c0000000n, 0x90000000c0000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:280 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x9000000000000000n, 0x9000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:283 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xbfffffff, 0xbfffffff, 0xbfffffff, 0xbfffffff]), + i32x4([0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000]), + ]), + [i64x2([0x8fffffff40000000n, 0x8fffffff40000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:286 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x7ffffffd, 0x7ffffffd, 0x7ffffffd, 0x7ffffffd]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x7ffffffdn, 0x7ffffffdn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:289 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7ffffffe, 0x7ffffffe]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:292 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:295 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x80000002, 0x80000002, 0x80000002, 0x80000002]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x800000017ffffffen, 0x800000017ffffffen])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:298 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x800000007fffffffn, 0x800000007fffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:301 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x7fffffff80000000n, 0x7fffffff80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:304 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x3fffffff00000001n, 0x3fffffff00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:307 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x4000000000000000n, 0x4000000000000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:310 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + i32x4([0x80000001, 0x80000001, 0x80000001, 0x80000001]), + ]), + [i64x2([0x4000000080000000n, 0x4000000080000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:313 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:316 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x1, 0x1, 0x1, 0x1]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:319 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xfffffffe00000001n, 0xfffffffe00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:322 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7ffffffe80000001n, 0x7ffffffe80000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:325 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x7fffffff80000000n, 0x7fffffff80000000n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:328 +assert_return( + () => invoke($0, `i64x2.extmul_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xfffffffe00000001n, 0xfffffffe00000001n])], +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:333 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.extmul_low_i32x4_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:334 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.extmul_high_i32x4_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:335 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.extmul_low_i32x4_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:336 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.extmul_high_i32x4_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:340 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extmul_low_i32x4_s-1st-arg-empty (result v128) + (i64x2.extmul_low_i32x4_s (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:348 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extmul_low_i32x4_s-arg-empty (result v128) + (i64x2.extmul_low_i32x4_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:356 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extmul_high_i32x4_s-1st-arg-empty (result v128) + (i64x2.extmul_high_i32x4_s (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:364 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extmul_high_i32x4_s-arg-empty (result v128) + (i64x2.extmul_high_i32x4_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:372 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extmul_low_i32x4_u-1st-arg-empty (result v128) + (i64x2.extmul_low_i32x4_u (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:380 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extmul_low_i32x4_u-arg-empty (result v128) + (i64x2.extmul_low_i32x4_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:388 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extmul_high_i32x4_u-1st-arg-empty (result v128) + (i64x2.extmul_high_i32x4_u (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i64x2_extmul_i32x4.wast:396 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extmul_high_i32x4_u-arg-empty (result v128) + (i64x2.extmul_high_i32x4_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_arith.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_arith.wast.js new file mode 100644 index 0000000000..698420ca4d --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_arith.wast.js @@ -0,0 +1,1457 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i8x16_arith.wast + +// ./test/core/simd/simd_i8x16_arith.wast:4 +let $0 = instantiate(`(module + (func (export "i8x16.add") (param v128 v128) (result v128) (i8x16.add (local.get 0) (local.get 1))) + (func (export "i8x16.sub") (param v128 v128) (result v128) (i8x16.sub (local.get 0) (local.get 1))) + (func (export "i8x16.neg") (param v128) (result v128) (i8x16.neg (local.get 0))) +)`); + +// ./test/core/simd/simd_i8x16_arith.wast:12 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:15 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:18 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:21 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:24 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:27 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:30 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:33 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:36 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:39 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:42 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:45 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:48 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:51 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:54 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:57 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:60 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:63 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:66 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:69 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:72 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:75 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:78 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:81 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:84 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:87 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:90 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:93 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:96 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:99 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:102 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:105 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:108 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:111 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:114 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:117 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:120 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:123 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:126 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:129 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:132 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:135 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:138 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([0, 0, 0, 0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:141 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([-0, -0, -0, -0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:144 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([1, 1, 1, 1]), + ]), + [ + i8x16([0x80, 0x80, 0x0, 0xbf, 0x80, 0x80, 0x0, 0xbf, 0x80, 0x80, 0x0, 0xbf, 0x80, 0x80, 0x0, 0xbf]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:147 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([-1, -1, -1, -1]), + ]), + [ + i8x16([0x80, 0x80, 0x0, 0x3f, 0x80, 0x80, 0x0, 0x3f, 0x80, 0x80, 0x0, 0x3f, 0x80, 0x80, 0x0, 0x3f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:150 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x81, 0x80, 0x1, 0x1, 0x81, 0x80, 0x1, 0x1, 0x81, 0x80, 0x1, 0x1, 0x81, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:153 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x81, 0x0, 0x1, 0x1, 0x81, 0x0, 0x1, 0x1, 0x81, 0x0, 0x1, 0x1, 0x81, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:156 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + i8x16([0x1, 0x1, 0xc1, 0x80, 0x1, 0x1, 0xc1, 0x80, 0x1, 0x1, 0xc1, 0x80, 0x1, 0x1, 0xc1, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:159 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:162 +assert_return( + () => invoke($0, `i8x16.add`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ]), + [ + i8x16([0x0, 0x3, 0x6, 0x9, 0xc, 0xf, 0x12, 0x15, 0x18, 0x1b, 0x1e, 0x21, 0x24, 0x27, 0x2a, 0x2d]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:167 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:170 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:173 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:176 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:179 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:182 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:185 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:188 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:191 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:194 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:197 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:200 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:203 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:206 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:209 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:212 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:215 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:218 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:221 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:224 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:227 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:230 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:233 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:236 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:239 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:242 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:245 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:248 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:251 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:254 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:257 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:260 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:263 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:266 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:269 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:272 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:275 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:278 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:281 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i16x8([0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:284 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:287 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i32x4([0x80808080, 0x80808080, 0x80808080, 0x80808080]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:290 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:293 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([0, 0, 0, 0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:296 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([-0, -0, -0, -0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:299 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([1, 1, 1, 1]), + ]), + [ + i8x16([0x80, 0x80, 0x0, 0x41, 0x80, 0x80, 0x0, 0x41, 0x80, 0x80, 0x0, 0x41, 0x80, 0x80, 0x0, 0x41]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:302 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([-1, -1, -1, -1]), + ]), + [ + i8x16([0x80, 0x80, 0x0, 0xc1, 0x80, 0x80, 0x0, 0xc1, 0x80, 0x80, 0x0, 0xc1, 0x80, 0x80, 0x0, 0xc1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:305 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x81, 0x82, 0x1, 0x1, 0x81, 0x82, 0x1, 0x1, 0x81, 0x82, 0x1, 0x1, 0x81, 0x82]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:308 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x81, 0x2, 0x1, 0x1, 0x81, 0x2, 0x1, 0x1, 0x81, 0x2, 0x1, 0x1, 0x81, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:311 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + i8x16([0x1, 0x1, 0x41, 0x82, 0x1, 0x1, 0x41, 0x82, 0x1, 0x1, 0x41, 0x82, 0x1, 0x1, 0x41, 0x82]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:314 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1]), + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:317 +assert_return( + () => invoke($0, `i8x16.sub`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ]), + [ + i8x16([0x0, 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:322 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:324 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:326 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:328 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:330 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:332 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:334 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:336 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:338 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:340 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:342 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:344 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:346 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:348 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:350 +assert_return( + () => invoke($0, `i8x16.neg`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:354 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.neg (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith.wast:355 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.add (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith.wast:356 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.sub (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith.wast:360 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.neg-arg-empty (result v128) + (i8x16.neg) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith.wast:368 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.add-1st-arg-empty (result v128) + (i8x16.add (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith.wast:376 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.add-arg-empty (result v128) + (i8x16.add) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith.wast:384 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.sub-1st-arg-empty (result v128) + (i8x16.sub (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith.wast:392 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.sub-arg-empty (result v128) + (i8x16.sub) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith.wast:402 +let $1 = instantiate(`(module + (func (export "add-sub") (param v128 v128 v128) (result v128) + (i8x16.add (i8x16.sub (local.get 0) (local.get 1))(local.get 2))) + (func (export "sub-add") (param v128 v128 v128) (result v128) + (i8x16.sub (i8x16.add (local.get 0) (local.get 1))(local.get 2))) + (func (export "add-neg") (param v128 v128) (result v128) + (i8x16.add (i8x16.neg (local.get 0)) (local.get 1))) + (func (export "sub-neg") (param v128 v128) (result v128) + (i8x16.sub (i8x16.neg (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_i8x16_arith.wast:413 +assert_return( + () => invoke($1, `add-sub`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:417 +assert_return( + () => invoke($1, `sub-add`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:421 +assert_return( + () => invoke($1, `add-neg`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith.wast:424 +assert_return( + () => invoke($1, `sub-neg`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [ + i8x16([0x0, 0xfe, 0xfc, 0xfa, 0xf8, 0xf6, 0xf4, 0xf2, 0xf0, 0xee, 0xec, 0xea, 0xe8, 0xe6, 0xe4, 0xe2]), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_arith2.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_arith2.wast.js new file mode 100644 index 0000000000..7d8d376765 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_arith2.wast.js @@ -0,0 +1,2263 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i8x16_arith2.wast + +// ./test/core/simd/simd_i8x16_arith2.wast:3 +let $0 = instantiate(`(module + (func (export "i8x16.min_s") (param v128 v128) (result v128) (i8x16.min_s (local.get 0) (local.get 1))) + (func (export "i8x16.min_u") (param v128 v128) (result v128) (i8x16.min_u (local.get 0) (local.get 1))) + (func (export "i8x16.max_s") (param v128 v128) (result v128) (i8x16.max_s (local.get 0) (local.get 1))) + (func (export "i8x16.max_u") (param v128 v128) (result v128) (i8x16.max_u (local.get 0) (local.get 1))) + (func (export "i8x16.avgr_u") (param v128 v128) (result v128) (i8x16.avgr_u (local.get 0) (local.get 1))) + (func (export "i8x16.abs") (param v128) (result v128) (i8x16.abs (local.get 0))) + (func (export "i8x16.popcnt") (param v128) (result v128) (i8x16.popcnt (local.get 0))) + (func (export "i8x16.min_s_with_const_0") (result v128) (i8x16.min_s (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255) (v128.const i8x16 255 255 255 255 64 64 64 64 127 127 127 127 -128 -128 -128 -128))) + (func (export "i8x16.min_s_with_const_1") (result v128) (i8x16.min_s (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3) (v128.const i8x16 3 3 3 3 2 2 2 2 1 1 1 1 0 0 0 0))) + (func (export "i8x16.min_u_with_const_2") (result v128) (i8x16.min_u (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255) (v128.const i8x16 255 255 255 255 64 64 64 64 127 127 127 127 -128 -128 -128 -128))) + (func (export "i8x16.min_u_with_const_3") (result v128) (i8x16.min_u (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3) (v128.const i8x16 3 3 3 3 2 2 2 2 1 1 1 1 0 0 0 0))) + (func (export "i8x16.max_s_with_const_4") (result v128) (i8x16.max_s (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255) (v128.const i8x16 255 255 255 255 64 64 64 64 127 127 127 127 -128 -128 -128 -128))) + (func (export "i8x16.max_s_with_const_5") (result v128) (i8x16.max_s (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3) (v128.const i8x16 3 3 3 3 2 2 2 2 1 1 1 1 0 0 0 0))) + (func (export "i8x16.max_u_with_const_6") (result v128) (i8x16.max_u (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255) (v128.const i8x16 255 255 255 255 64 64 64 64 127 127 127 127 -128 -128 -128 -128))) + (func (export "i8x16.max_u_with_const_7") (result v128) (i8x16.max_u (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3) (v128.const i8x16 3 3 3 3 2 2 2 2 1 1 1 1 0 0 0 0))) + (func (export "i8x16.avgr_u_with_const_8") (result v128) (i8x16.avgr_u (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255) (v128.const i8x16 255 255 255 255 64 64 64 64 127 127 127 127 -128 -128 -128 -128))) + (func (export "i8x16.avgr_u_with_const_9") (result v128) (i8x16.avgr_u (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3) (v128.const i8x16 3 3 3 3 2 2 2 2 1 1 1 1 0 0 0 0))) + (func (export "i8x16.abs_with_const_10") (result v128) (i8x16.abs (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255))) + (func (export "i8x16.popcnt_with_const_11") (result v128) (i8x16.popcnt (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255))) + (func (export "i8x16.min_s_with_const_12") (param v128) (result v128) (i8x16.min_s (local.get 0) (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255))) + (func (export "i8x16.min_s_with_const_13") (param v128) (result v128) (i8x16.min_s (local.get 0) (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3))) + (func (export "i8x16.min_u_with_const_14") (param v128) (result v128) (i8x16.min_u (local.get 0) (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255))) + (func (export "i8x16.min_u_with_const_15") (param v128) (result v128) (i8x16.min_u (local.get 0) (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3))) + (func (export "i8x16.max_s_with_const_16") (param v128) (result v128) (i8x16.max_s (local.get 0) (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255))) + (func (export "i8x16.max_s_with_const_17") (param v128) (result v128) (i8x16.max_s (local.get 0) (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3))) + (func (export "i8x16.max_u_with_const_18") (param v128) (result v128) (i8x16.max_u (local.get 0) (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255))) + (func (export "i8x16.max_u_with_const_19") (param v128) (result v128) (i8x16.max_u (local.get 0) (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3))) + (func (export "i8x16.avgr_u_with_const_20") (param v128) (result v128) (i8x16.avgr_u (local.get 0) (v128.const i8x16 -128 -128 -128 -128 127 127 127 127 64 64 64 64 255 255 255 255))) + (func (export "i8x16.avgr_u_with_const_21") (param v128) (result v128) (i8x16.avgr_u (local.get 0) (v128.const i8x16 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3))) +)`); + +// ./test/core/simd/simd_i8x16_arith2.wast:35 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:38 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:41 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:44 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:47 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:50 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:53 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:56 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:59 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:62 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:65 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:68 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:71 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:74 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:77 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:80 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:83 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:86 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:89 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:92 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:95 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:98 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:101 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:104 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:107 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:110 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:113 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:116 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:119 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:122 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:125 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:128 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:131 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:134 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:137 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:140 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:143 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:146 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:149 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:152 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:155 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:158 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:161 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:164 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:167 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:170 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:173 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:176 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:179 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:182 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:185 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:188 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:191 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:194 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:197 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:200 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:202 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:204 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:206 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:208 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:210 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:212 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:214 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:216 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:218 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85]), + ]), + [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:220 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:222 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:224 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:226 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:228 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:230 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:232 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:234 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:236 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:238 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:240 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:242 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:244 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b]), + ]), + [ + i8x16([0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6, 0x6]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:246 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85]), + ]), + [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:248 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:250 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:252 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:254 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:258 +assert_return( + () => invoke($0, `i8x16.min_s_with_const_0`, []), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:259 +assert_return( + () => invoke($0, `i8x16.min_s_with_const_1`, []), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:260 +assert_return( + () => invoke($0, `i8x16.min_u_with_const_2`, []), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:261 +assert_return( + () => invoke($0, `i8x16.min_u_with_const_3`, []), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:262 +assert_return( + () => invoke($0, `i8x16.max_s_with_const_4`, []), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:263 +assert_return( + () => invoke($0, `i8x16.max_s_with_const_5`, []), + [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:264 +assert_return( + () => invoke($0, `i8x16.max_u_with_const_6`, []), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:265 +assert_return( + () => invoke($0, `i8x16.max_u_with_const_7`, []), + [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:266 +assert_return( + () => invoke($0, `i8x16.avgr_u_with_const_8`, []), + [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0xc0, 0xc0, 0xc0, 0xc0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:267 +assert_return( + () => invoke($0, `i8x16.avgr_u_with_const_9`, []), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:268 +assert_return( + () => invoke($0, `i8x16.abs_with_const_10`, []), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:269 +assert_return( + () => invoke($0, `i8x16.popcnt_with_const_11`, []), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x7, 0x7, 0x7, 0x7, 0x1, 0x1, 0x1, 0x1, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:272 +assert_return( + () => invoke($0, `i8x16.min_s_with_const_12`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:274 +assert_return( + () => invoke($0, `i8x16.min_s_with_const_13`, [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:276 +assert_return( + () => invoke($0, `i8x16.min_u_with_const_14`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:278 +assert_return( + () => invoke($0, `i8x16.min_u_with_const_15`, [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:280 +assert_return( + () => invoke($0, `i8x16.max_s_with_const_16`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:282 +assert_return( + () => invoke($0, `i8x16.max_s_with_const_17`, [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:284 +assert_return( + () => invoke($0, `i8x16.max_u_with_const_18`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:286 +assert_return( + () => invoke($0, `i8x16.max_u_with_const_19`, [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:288 +assert_return( + () => invoke($0, `i8x16.avgr_u_with_const_20`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0xc0, 0xc0, 0xc0, 0xc0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:290 +assert_return( + () => invoke($0, `i8x16.avgr_u_with_const_21`, [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:294 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:297 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:300 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:303 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:306 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:309 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:312 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:315 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:318 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0x40, 0x40, 0x40, 0x40, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0xc0, 0xc0, 0xc0, 0xc0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:321 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x1, 0x1, 0x1, 0x1, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:324 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:326 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x40, 0x40, 0x40, 0x40, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x7, 0x7, 0x7, 0x7, 0x1, 0x1, 0x1, 0x1, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:330 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:333 +assert_return( + () => invoke($0, `i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:336 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:339 +assert_return( + () => invoke($0, `i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:342 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:345 +assert_return( + () => invoke($0, `i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:348 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:351 +assert_return( + () => invoke($0, `i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:354 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:357 +assert_return( + () => invoke($0, `i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:360 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:362 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:364 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:366 +assert_return( + () => invoke($0, `i8x16.abs`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:368 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:370 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:372 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:374 +assert_return( + () => invoke($0, `i8x16.popcnt`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:378 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i32x4.avgr_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:379 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f32x4.avgr_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:380 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i64x2.avgr_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:381 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (f64x2.avgr_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:382 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.avgr (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:383 +assert_malformed( + () => instantiate(`(memory 1) (func (result v128) (i8x16.avgr_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:386 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.min_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:387 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.min_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:388 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.max_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:389 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.max_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:390 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.avgr_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:391 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.abs (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:392 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.popcnt (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:396 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.min_s-1st-arg-empty (result v128) + (i8x16.min_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:404 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.min_s-arg-empty (result v128) + (i8x16.min_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:412 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.min_u-1st-arg-empty (result v128) + (i8x16.min_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:420 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.min_u-arg-empty (result v128) + (i8x16.min_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:428 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.max_s-1st-arg-empty (result v128) + (i8x16.max_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:436 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.max_s-arg-empty (result v128) + (i8x16.max_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:444 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.max_u-1st-arg-empty (result v128) + (i8x16.max_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:452 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.max_u-arg-empty (result v128) + (i8x16.max_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:460 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.avgr_u-1st-arg-empty (result v128) + (i8x16.avgr_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:468 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.avgr_u-arg-empty (result v128) + (i8x16.avgr_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:476 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.abs-arg-empty (result v128) + (i8x16.abs) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:484 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.popcnt-arg-empty (result v128) + (i8x16.popcnt) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_arith2.wast:494 +let $1 = instantiate(`(module + (func (export "i8x16.min_s-i8x16.avgr_u") (param v128 v128 v128) (result v128) (i8x16.min_s (i8x16.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_s-i8x16.max_u") (param v128 v128 v128) (result v128) (i8x16.min_s (i8x16.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_s-i8x16.max_s") (param v128 v128 v128) (result v128) (i8x16.min_s (i8x16.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_s-i8x16.min_u") (param v128 v128 v128) (result v128) (i8x16.min_s (i8x16.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_s-i8x16.min_s") (param v128 v128 v128) (result v128) (i8x16.min_s (i8x16.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_s-i8x16.abs") (param v128 v128) (result v128) (i8x16.min_s (i8x16.abs (local.get 0))(local.get 1))) + (func (export "i8x16.abs-i8x16.min_s") (param v128 v128) (result v128) (i8x16.abs (i8x16.min_s (local.get 0) (local.get 1)))) + (func (export "i8x16.min_s-i8x16.popcnt") (param v128 v128) (result v128) (i8x16.min_s (i8x16.popcnt (local.get 0))(local.get 1))) + (func (export "i8x16.popcnt-i8x16.min_s") (param v128 v128) (result v128) (i8x16.popcnt (i8x16.min_s (local.get 0) (local.get 1)))) + (func (export "i8x16.min_u-i8x16.avgr_u") (param v128 v128 v128) (result v128) (i8x16.min_u (i8x16.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_u-i8x16.max_u") (param v128 v128 v128) (result v128) (i8x16.min_u (i8x16.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_u-i8x16.max_s") (param v128 v128 v128) (result v128) (i8x16.min_u (i8x16.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_u-i8x16.min_u") (param v128 v128 v128) (result v128) (i8x16.min_u (i8x16.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_u-i8x16.min_s") (param v128 v128 v128) (result v128) (i8x16.min_u (i8x16.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.min_u-i8x16.abs") (param v128 v128) (result v128) (i8x16.min_u (i8x16.abs (local.get 0))(local.get 1))) + (func (export "i8x16.abs-i8x16.min_u") (param v128 v128) (result v128) (i8x16.abs (i8x16.min_u (local.get 0) (local.get 1)))) + (func (export "i8x16.min_u-i8x16.popcnt") (param v128 v128) (result v128) (i8x16.min_u (i8x16.popcnt (local.get 0))(local.get 1))) + (func (export "i8x16.popcnt-i8x16.min_u") (param v128 v128) (result v128) (i8x16.popcnt (i8x16.min_u (local.get 0) (local.get 1)))) + (func (export "i8x16.max_s-i8x16.avgr_u") (param v128 v128 v128) (result v128) (i8x16.max_s (i8x16.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_s-i8x16.max_u") (param v128 v128 v128) (result v128) (i8x16.max_s (i8x16.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_s-i8x16.max_s") (param v128 v128 v128) (result v128) (i8x16.max_s (i8x16.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_s-i8x16.min_u") (param v128 v128 v128) (result v128) (i8x16.max_s (i8x16.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_s-i8x16.min_s") (param v128 v128 v128) (result v128) (i8x16.max_s (i8x16.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_s-i8x16.abs") (param v128 v128) (result v128) (i8x16.max_s (i8x16.abs (local.get 0))(local.get 1))) + (func (export "i8x16.abs-i8x16.max_s") (param v128 v128) (result v128) (i8x16.abs (i8x16.max_s (local.get 0) (local.get 1)))) + (func (export "i8x16.max_s-i8x16.popcnt") (param v128 v128) (result v128) (i8x16.max_s (i8x16.popcnt (local.get 0))(local.get 1))) + (func (export "i8x16.popcnt-i8x16.max_s") (param v128 v128) (result v128) (i8x16.popcnt (i8x16.max_s (local.get 0) (local.get 1)))) + (func (export "i8x16.max_u-i8x16.avgr_u") (param v128 v128 v128) (result v128) (i8x16.max_u (i8x16.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_u-i8x16.max_u") (param v128 v128 v128) (result v128) (i8x16.max_u (i8x16.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_u-i8x16.max_s") (param v128 v128 v128) (result v128) (i8x16.max_u (i8x16.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_u-i8x16.min_u") (param v128 v128 v128) (result v128) (i8x16.max_u (i8x16.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_u-i8x16.min_s") (param v128 v128 v128) (result v128) (i8x16.max_u (i8x16.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.max_u-i8x16.abs") (param v128 v128) (result v128) (i8x16.max_u (i8x16.abs (local.get 0))(local.get 1))) + (func (export "i8x16.abs-i8x16.max_u") (param v128 v128) (result v128) (i8x16.abs (i8x16.max_u (local.get 0) (local.get 1)))) + (func (export "i8x16.max_u-i8x16.popcnt") (param v128 v128) (result v128) (i8x16.max_u (i8x16.popcnt (local.get 0))(local.get 1))) + (func (export "i8x16.popcnt-i8x16.max_u") (param v128 v128) (result v128) (i8x16.popcnt (i8x16.max_u (local.get 0) (local.get 1)))) + (func (export "i8x16.avgr_u-i8x16.avgr_u") (param v128 v128 v128) (result v128) (i8x16.avgr_u (i8x16.avgr_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.avgr_u-i8x16.max_u") (param v128 v128 v128) (result v128) (i8x16.avgr_u (i8x16.max_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.avgr_u-i8x16.max_s") (param v128 v128 v128) (result v128) (i8x16.avgr_u (i8x16.max_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.avgr_u-i8x16.min_u") (param v128 v128 v128) (result v128) (i8x16.avgr_u (i8x16.min_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.avgr_u-i8x16.min_s") (param v128 v128 v128) (result v128) (i8x16.avgr_u (i8x16.min_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "i8x16.avgr_u-i8x16.abs") (param v128 v128) (result v128) (i8x16.avgr_u (i8x16.abs (local.get 0))(local.get 1))) + (func (export "i8x16.abs-i8x16.avgr_u") (param v128 v128) (result v128) (i8x16.abs (i8x16.avgr_u (local.get 0) (local.get 1)))) + (func (export "i8x16.avgr_u-i8x16.popcnt") (param v128 v128) (result v128) (i8x16.avgr_u (i8x16.popcnt (local.get 0))(local.get 1))) + (func (export "i8x16.popcnt-i8x16.avgr_u") (param v128 v128) (result v128) (i8x16.popcnt (i8x16.avgr_u (local.get 0) (local.get 1)))) + (func (export "i8x16.abs-i8x16.popcnt") (param v128) (result v128) (i8x16.abs (i8x16.popcnt (local.get 0)))) + (func (export "i8x16.abs-i8x16.abs") (param v128) (result v128) (i8x16.abs (i8x16.abs (local.get 0)))) + (func (export "i8x16.popcnt-i8x16.popcnt") (param v128) (result v128) (i8x16.popcnt (i8x16.popcnt (local.get 0)))) + (func (export "i8x16.popcnt-i8x16.abs") (param v128) (result v128) (i8x16.popcnt (i8x16.abs (local.get 0)))) +)`); + +// ./test/core/simd/simd_i8x16_arith2.wast:546 +assert_return( + () => invoke($1, `i8x16.min_s-i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:550 +assert_return( + () => invoke($1, `i8x16.min_s-i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:554 +assert_return( + () => invoke($1, `i8x16.min_s-i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:558 +assert_return( + () => invoke($1, `i8x16.min_s-i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:562 +assert_return( + () => invoke($1, `i8x16.min_s-i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:566 +assert_return( + () => invoke($1, `i8x16.min_s-i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:569 +assert_return( + () => invoke($1, `i8x16.abs-i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:572 +assert_return( + () => invoke($1, `i8x16.min_s-i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:575 +assert_return( + () => invoke($1, `i8x16.popcnt-i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:578 +assert_return( + () => invoke($1, `i8x16.min_u-i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:582 +assert_return( + () => invoke($1, `i8x16.min_u-i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:586 +assert_return( + () => invoke($1, `i8x16.min_u-i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:590 +assert_return( + () => invoke($1, `i8x16.min_u-i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:594 +assert_return( + () => invoke($1, `i8x16.min_u-i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:598 +assert_return( + () => invoke($1, `i8x16.min_u-i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:601 +assert_return( + () => invoke($1, `i8x16.abs-i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:604 +assert_return( + () => invoke($1, `i8x16.min_u-i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:607 +assert_return( + () => invoke($1, `i8x16.popcnt-i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:610 +assert_return( + () => invoke($1, `i8x16.max_s-i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:614 +assert_return( + () => invoke($1, `i8x16.max_s-i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:618 +assert_return( + () => invoke($1, `i8x16.max_s-i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:622 +assert_return( + () => invoke($1, `i8x16.max_s-i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:626 +assert_return( + () => invoke($1, `i8x16.max_s-i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:630 +assert_return( + () => invoke($1, `i8x16.max_s-i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:633 +assert_return( + () => invoke($1, `i8x16.abs-i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:636 +assert_return( + () => invoke($1, `i8x16.max_s-i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:639 +assert_return( + () => invoke($1, `i8x16.popcnt-i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:642 +assert_return( + () => invoke($1, `i8x16.max_u-i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:646 +assert_return( + () => invoke($1, `i8x16.max_u-i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:650 +assert_return( + () => invoke($1, `i8x16.max_u-i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:654 +assert_return( + () => invoke($1, `i8x16.max_u-i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:658 +assert_return( + () => invoke($1, `i8x16.max_u-i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:662 +assert_return( + () => invoke($1, `i8x16.max_u-i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:665 +assert_return( + () => invoke($1, `i8x16.abs-i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:668 +assert_return( + () => invoke($1, `i8x16.max_u-i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:671 +assert_return( + () => invoke($1, `i8x16.popcnt-i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:674 +assert_return( + () => invoke($1, `i8x16.avgr_u-i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:678 +assert_return( + () => invoke($1, `i8x16.avgr_u-i8x16.max_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:682 +assert_return( + () => invoke($1, `i8x16.avgr_u-i8x16.max_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:686 +assert_return( + () => invoke($1, `i8x16.avgr_u-i8x16.min_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:690 +assert_return( + () => invoke($1, `i8x16.avgr_u-i8x16.min_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:694 +assert_return( + () => invoke($1, `i8x16.avgr_u-i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:697 +assert_return( + () => invoke($1, `i8x16.abs-i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:700 +assert_return( + () => invoke($1, `i8x16.avgr_u-i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:703 +assert_return( + () => invoke($1, `i8x16.popcnt-i8x16.avgr_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:706 +assert_return( + () => invoke($1, `i8x16.abs-i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:708 +assert_return( + () => invoke($1, `i8x16.abs-i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:710 +assert_return( + () => invoke($1, `i8x16.popcnt-i8x16.popcnt`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_arith2.wast:712 +assert_return( + () => invoke($1, `i8x16.popcnt-i8x16.abs`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_cmp.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_cmp.wast.js new file mode 100644 index 0000000000..7cd76b5e0e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_cmp.wast.js @@ -0,0 +1,4989 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i8x16_cmp.wast + +// ./test/core/simd/simd_i8x16_cmp.wast:4 +let $0 = instantiate(`(module + (func (export "eq") (param $$x v128) (param $$y v128) (result v128) (i8x16.eq (local.get $$x) (local.get $$y))) + (func (export "ne") (param $$x v128) (param $$y v128) (result v128) (i8x16.ne (local.get $$x) (local.get $$y))) + (func (export "lt_s") (param $$x v128) (param $$y v128) (result v128) (i8x16.lt_s (local.get $$x) (local.get $$y))) + (func (export "lt_u") (param $$x v128) (param $$y v128) (result v128) (i8x16.lt_u (local.get $$x) (local.get $$y))) + (func (export "le_s") (param $$x v128) (param $$y v128) (result v128) (i8x16.le_s (local.get $$x) (local.get $$y))) + (func (export "le_u") (param $$x v128) (param $$y v128) (result v128) (i8x16.le_u (local.get $$x) (local.get $$y))) + (func (export "gt_s") (param $$x v128) (param $$y v128) (result v128) (i8x16.gt_s (local.get $$x) (local.get $$y))) + (func (export "gt_u") (param $$x v128) (param $$y v128) (result v128) (i8x16.gt_u (local.get $$x) (local.get $$y))) + (func (export "ge_s") (param $$x v128) (param $$y v128) (result v128) (i8x16.ge_s (local.get $$x) (local.get $$y))) + (func (export "ge_u") (param $$x v128) (param $$y v128) (result v128) (i8x16.ge_u (local.get $$x) (local.get $$y))) +)`); + +// ./test/core/simd/simd_i8x16_cmp.wast:23 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:26 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:29 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:32 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:35 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:38 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:41 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:46 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:49 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:52 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:55 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:58 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:63 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:66 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:69 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:72 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:75 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:78 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:81 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:86 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:89 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:94 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:97 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:100 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:103 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:106 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:111 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:114 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:117 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:120 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:123 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:126 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:129 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:134 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:137 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:140 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:143 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:146 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:149 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0xff, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:152 +assert_return( + () => invoke($0, `eq`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:161 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:164 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:167 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:170 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:173 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:176 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:179 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:184 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:187 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:190 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:193 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:196 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:201 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:204 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:207 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:210 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:213 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:216 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:219 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:224 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:227 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:232 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:235 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:238 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:241 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:244 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:249 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:252 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:255 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:258 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:261 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:264 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:267 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:272 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:275 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:278 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:281 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:284 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:287 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:290 +assert_return( + () => invoke($0, `ne`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:299 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:302 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:305 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:308 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:311 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:314 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:317 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:322 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:325 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:328 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:331 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:334 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:339 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:342 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:345 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:348 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:351 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:354 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:357 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:362 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:365 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:370 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:373 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:376 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:379 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:382 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:387 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:390 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:393 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:396 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:399 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:402 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:405 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:410 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:413 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:416 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:419 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:422 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:425 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:428 +assert_return( + () => invoke($0, `lt_s`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:437 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:440 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:443 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:446 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:449 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:452 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:455 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:460 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:463 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:466 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:469 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:472 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:477 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:480 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:483 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:486 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:489 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:492 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:495 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:500 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:503 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:508 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:511 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:514 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:517 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:520 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:525 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:528 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:531 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:534 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:537 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:540 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:543 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:548 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:551 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:554 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:557 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:560 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:563 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:566 +assert_return( + () => invoke($0, `lt_u`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:575 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:578 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:581 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:584 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:587 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:590 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:593 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:598 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:601 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:604 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:607 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:610 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:615 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:618 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:621 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:624 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:627 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:630 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:633 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:638 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:641 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:646 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:649 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:652 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:655 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:658 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:663 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:666 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:669 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:672 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:675 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:678 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:681 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:686 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:689 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:692 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:695 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:698 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:701 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:704 +assert_return( + () => invoke($0, `le_s`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:713 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:716 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:719 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:722 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:725 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:728 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:731 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:736 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:739 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:742 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:745 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:748 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:753 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:756 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:759 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:762 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:765 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:768 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:771 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:776 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:779 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:784 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:787 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:790 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:793 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:796 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:801 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:804 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:807 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:810 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:813 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:816 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:819 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:824 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:827 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:830 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:833 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:836 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:839 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:842 +assert_return( + () => invoke($0, `le_u`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:851 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:854 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:857 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:860 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:863 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:866 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:869 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:874 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:877 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:880 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:883 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:886 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:891 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:894 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:897 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:900 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:903 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:906 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:909 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:914 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:917 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:922 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:925 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:928 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:931 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:934 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:939 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:942 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:945 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:948 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:951 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:954 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:957 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:962 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:965 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:968 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:971 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:974 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:977 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:980 +assert_return( + () => invoke($0, `gt_s`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:989 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:992 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:995 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:998 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1001 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1004 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1007 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1012 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1015 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1018 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1021 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1024 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1029 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1032 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1035 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1038 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1041 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1044 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1047 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1052 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1055 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1060 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1063 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1066 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1069 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1072 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1077 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1080 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1083 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1086 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1089 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1092 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1095 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1100 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1103 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1106 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1109 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1112 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1115 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1118 +assert_return( + () => invoke($0, `gt_u`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1127 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1130 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1133 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1136 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1139 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1142 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1145 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1150 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1153 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1156 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1159 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1162 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1167 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1170 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1173 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1176 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1179 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1182 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1185 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1190 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1193 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1198 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1201 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1204 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1207 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1210 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1215 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1218 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1221 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1224 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1227 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1230 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0xff, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1233 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1238 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1241 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1244 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1247 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1250 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1253 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0xff, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1256 +assert_return( + () => invoke($0, `ge_s`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1265 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1268 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1271 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1274 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1277 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1280 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1283 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1288 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1291 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1294 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1297 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1300 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1305 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1308 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1311 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1314 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1317 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1320 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1323 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1328 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x0, 0xc3, 0x0, 0x0, 0xfe, 0xc2, 0x0, 0x0, 0x80, 0xbf, 0x0, 0x0, 0x0, 0x0]), + f32x4([-128, -127, -1, 0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1331 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x80, 0x3f, 0x0, 0x0, 0xfe, 0x42, 0x0, 0x0, 0x0, 0x43, 0x0, 0x0, 0x7f, 0x43]), + f32x4([1, 127, 128, 255]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1336 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1339 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1342 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0x10, 0x11, 0x12, 0xa, 0xb, 0x1a, 0x1b, 0xaa, 0xab, 0xff]), + i8x16([0xff, 0xab, 0xaa, 0x1b, 0x1a, 0xb, 0xa, 0x12, 0x11, 0x10, 0x9, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1345 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1348 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i8x16([0xff, 0xfe, 0xfd, 0x80, 0x7f, 0x2, 0x1, 0x0, 0x0, 0xff, 0xfe, 0xfd, 0x83, 0x82, 0x81, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1353 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1356 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1359 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1362 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1365 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i16x8([0x8180, 0x8382, 0xfefd, 0xff, 0x100, 0x7f02, 0xfd80, 0xfffe]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1368 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i16x8([0xff80, 0xff80, 0x0, 0x0, 0x1, 0x1, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1371 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i16x8([0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1376 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1379 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1382 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i32x4([0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1385 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1388 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x81, 0x82, 0x83, 0xfd, 0xfe, 0xff, 0x0, 0x0, 0x1, 0x2, 0x7f, 0x80, 0xfd, 0xfe, 0xff]), + i32x4([0x83828180, 0xfffefd, 0x7f020100, 0xfffefd80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1391 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff]), + i32x4([0xffffff80, 0x0, 0x1, 0xff]), + ]), + [ + i8x16([0xff, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1394 +assert_return( + () => invoke($0, `ge_u`, [ + i8x16([0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55]), + i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1401 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.eq (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1402 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.ge_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1403 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.ge_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1404 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.gt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1405 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.gt_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1406 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.le_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1407 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.le_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1408 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.lt_s (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1409 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.lt_u (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1410 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.ne (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1415 +let $1 = instantiate(`(module (memory 1) + (func (export "eq-in-block") + (block + (drop + (block (result v128) + (i8x16.eq + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "ne-in-block") + (block + (drop + (block (result v128) + (i8x16.ne + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "lt_s-in-block") + (block + (drop + (block (result v128) + (i8x16.lt_s + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "le_u-in-block") + (block + (drop + (block (result v128) + (i8x16.le_u + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "gt_u-in-block") + (block + (drop + (block (result v128) + (i8x16.gt_u + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "ge_s-in-block") + (block + (drop + (block (result v128) + (i8x16.ge_s + (block (result v128) (v128.load (i32.const 0))) + (block (result v128) (v128.load (i32.const 1))) + ) + ) + ) + ) + ) + (func (export "nested-eq") + (drop + (i8x16.eq + (i8x16.eq + (i8x16.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i8x16.eq + (i8x16.eq + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.eq + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-ne") + (drop + (i8x16.ne + (i8x16.ne + (i8x16.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i8x16.ne + (i8x16.ne + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.ne + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-lt_s") + (drop + (i8x16.lt_s + (i8x16.lt_s + (i8x16.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.lt_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i8x16.lt_s + (i8x16.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.lt_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-le_u") + (drop + (i8x16.le_u + (i8x16.le_u + (i8x16.le_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i8x16.le_u + (i8x16.le_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-gt_u") + (drop + (i8x16.gt_u + (i8x16.gt_u + (i8x16.gt_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.gt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i8x16.gt_u + (i8x16.gt_u + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.gt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "nested-ge_s") + (drop + (i8x16.ge_s + (i8x16.ge_s + (i8x16.ge_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.ge_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i8x16.ge_s + (i8x16.ge_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.ge_s + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) + (func (export "as-param") + (drop + (i8x16.ge_u + (i8x16.eq + (i8x16.lt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.le_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + (i8x16.ne + (i8x16.gt_s + (v128.load (i32.const 0)) + (v128.load (i32.const 1)) + ) + (i8x16.lt_u + (v128.load (i32.const 2)) + (v128.load (i32.const 3)) + ) + ) + ) + ) + ) +)`); + +// ./test/core/simd/simd_i8x16_cmp.wast:1671 +assert_return(() => invoke($1, `eq-in-block`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1672 +assert_return(() => invoke($1, `ne-in-block`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1673 +assert_return(() => invoke($1, `lt_s-in-block`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1674 +assert_return(() => invoke($1, `le_u-in-block`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1675 +assert_return(() => invoke($1, `gt_u-in-block`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1676 +assert_return(() => invoke($1, `ge_s-in-block`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1677 +assert_return(() => invoke($1, `nested-eq`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1678 +assert_return(() => invoke($1, `nested-ne`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1679 +assert_return(() => invoke($1, `nested-lt_s`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1680 +assert_return(() => invoke($1, `nested-le_u`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1681 +assert_return(() => invoke($1, `nested-gt_u`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1682 +assert_return(() => invoke($1, `nested-ge_s`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1683 +assert_return(() => invoke($1, `as-param`, []), []); + +// ./test/core/simd/simd_i8x16_cmp.wast:1688 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.eq-1st-arg-empty (result v128) + (i8x16.eq (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1696 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.eq-arg-empty (result v128) + (i8x16.eq) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1704 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.ne-1st-arg-empty (result v128) + (i8x16.ne (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1712 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.ne-arg-empty (result v128) + (i8x16.ne) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1720 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.lt_s-1st-arg-empty (result v128) + (i8x16.lt_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1728 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.lt_s-arg-empty (result v128) + (i8x16.lt_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1736 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.lt_u-1st-arg-empty (result v128) + (i8x16.lt_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1744 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.lt_u-arg-empty (result v128) + (i8x16.lt_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1752 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.le_s-1st-arg-empty (result v128) + (i8x16.le_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1760 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.le_s-arg-empty (result v128) + (i8x16.le_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1768 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.le_u-1st-arg-empty (result v128) + (i8x16.le_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1776 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.le_u-arg-empty (result v128) + (i8x16.le_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1784 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.gt_s-1st-arg-empty (result v128) + (i8x16.gt_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1792 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.gt_s-arg-empty (result v128) + (i8x16.gt_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1800 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.gt_u-1st-arg-empty (result v128) + (i8x16.gt_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1808 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.gt_u-arg-empty (result v128) + (i8x16.gt_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1816 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.ge_s-1st-arg-empty (result v128) + (i8x16.ge_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1824 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.ge_s-arg-empty (result v128) + (i8x16.ge_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1832 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.ge_u-1st-arg-empty (result v128) + (i8x16.ge_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_cmp.wast:1840 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.ge_u-arg-empty (result v128) + (i8x16.ge_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_sat_arith.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_sat_arith.wast.js new file mode 100644 index 0000000000..856ea0d8d3 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_i8x16_sat_arith.wast.js @@ -0,0 +1,2430 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_i8x16_sat_arith.wast + +// ./test/core/simd/simd_i8x16_sat_arith.wast:4 +let $0 = instantiate(`(module + (func (export "i8x16.add_sat_s") (param v128 v128) (result v128) (i8x16.add_sat_s (local.get 0) (local.get 1))) + (func (export "i8x16.add_sat_u") (param v128 v128) (result v128) (i8x16.add_sat_u (local.get 0) (local.get 1))) + (func (export "i8x16.sub_sat_s") (param v128 v128) (result v128) (i8x16.sub_sat_s (local.get 0) (local.get 1))) + (func (export "i8x16.sub_sat_u") (param v128 v128) (result v128) (i8x16.sub_sat_u (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:13 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:16 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:19 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:22 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:25 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:28 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:31 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:34 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:37 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:40 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:43 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:46 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:49 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:52 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:55 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:58 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:61 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:64 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:67 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:70 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:73 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:76 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:79 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:82 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:85 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:88 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:91 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:94 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:97 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:100 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:103 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:106 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:109 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:112 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:115 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:118 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:121 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:124 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:127 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([-0, -0, -0, -0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:130 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x81, 0x7f, 0x1, 0x1, 0x81, 0x7f, 0x1, 0x1, 0x81, 0x7f, 0x1, 0x1, 0x81, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:133 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x81, 0x0, 0x1, 0x1, 0x81, 0x0, 0x1, 0x1, 0x81, 0x0, 0x1, 0x1, 0x81, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:136 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + i8x16([0x1, 0x1, 0xc1, 0x7f, 0x1, 0x1, 0xc1, 0x7f, 0x1, 0x1, 0xc1, 0x7f, 0x1, 0x1, 0xc1, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:139 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + i8x16([0x1, 0x1, 0xc1, 0x0, 0x1, 0x1, 0xc1, 0x0, 0x1, 0x1, 0xc1, 0x0, 0x1, 0x1, 0xc1, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:142 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:145 +assert_return( + () => invoke($0, `i8x16.add_sat_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ]), + [ + i8x16([0x0, 0x3, 0x6, 0x9, 0xc, 0xf, 0x12, 0x15, 0x18, 0x1b, 0x1e, 0x21, 0x24, 0x27, 0x2a, 0x2d]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:150 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:153 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:156 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:159 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:162 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:165 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:168 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:171 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:174 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:177 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:180 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:183 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:186 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:189 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:192 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:195 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:198 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:201 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:204 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:207 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:210 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:213 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:216 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:219 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:222 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:225 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:228 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:231 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:234 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:237 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:240 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:243 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:246 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:249 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:252 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:255 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:258 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:261 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:264 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([-0, -0, -0, -0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0xff, 0x80, 0x80, 0x80, 0xff, 0x80, 0x80, 0x80, 0xff, 0x80, 0x80, 0x80, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:267 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x81, 0x80, 0x1, 0x1, 0x81, 0x80, 0x1, 0x1, 0x81, 0x80, 0x1, 0x1, 0x81, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:270 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x81, 0xff, 0x1, 0x1, 0x81, 0xff, 0x1, 0x1, 0x81, 0xff, 0x1, 0x1, 0x81, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:273 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + i8x16([0x1, 0x1, 0xc1, 0x80, 0x1, 0x1, 0xc1, 0x80, 0x1, 0x1, 0xc1, 0x80, 0x1, 0x1, 0xc1, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:276 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + i8x16([0x1, 0x1, 0xc1, 0xff, 0x1, 0x1, 0xc1, 0xff, 0x1, 0x1, 0xc1, 0xff, 0x1, 0x1, 0xc1, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:279 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1]), + ]), + [ + i8x16([0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:282 +assert_return( + () => invoke($0, `i8x16.add_sat_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ]), + [ + i8x16([0x0, 0x3, 0x6, 0x9, 0xc, 0xf, 0x12, 0x15, 0x18, 0x1b, 0x1e, 0x21, 0x24, 0x27, 0x2a, 0x2d]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:287 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:290 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:293 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:296 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:299 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:302 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:305 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:308 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:311 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:314 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:317 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:320 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:323 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:326 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:329 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:332 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:335 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:338 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:341 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:344 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:347 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:350 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:353 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:356 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:359 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:362 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:365 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:368 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:371 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:374 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:377 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:380 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:383 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:386 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:389 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:392 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:395 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:398 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:401 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([-0, -0, -0, -0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:404 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x7f, 0x82, 0x1, 0x1, 0x7f, 0x82, 0x1, 0x1, 0x7f, 0x82, 0x1, 0x1, 0x7f, 0x82]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:407 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x7f, 0x2, 0x1, 0x1, 0x7f, 0x2, 0x1, 0x1, 0x7f, 0x2, 0x1, 0x1, 0x7f, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:410 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + i8x16([0x1, 0x1, 0x41, 0x82, 0x1, 0x1, 0x41, 0x82, 0x1, 0x1, 0x41, 0x82, 0x1, 0x1, 0x41, 0x82]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:413 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + i8x16([0x1, 0x1, 0x41, 0x2, 0x1, 0x1, 0x41, 0x2, 0x1, 0x1, 0x41, 0x2, 0x1, 0x1, 0x41, 0x2]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:416 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1]), + ]), + [ + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:419 +assert_return( + () => invoke($0, `i8x16.sub_sat_s`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ]), + [ + i8x16([0x0, 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:424 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:427 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:430 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:433 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:436 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:439 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:442 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:445 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:448 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:451 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:454 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:457 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:460 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:463 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:466 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:469 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:472 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:475 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:478 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:481 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:484 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:487 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:490 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:493 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:496 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:499 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:502 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:505 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:508 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:511 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:514 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0]), + i8x16([0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:517 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:520 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:523 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:526 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:529 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:532 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:535 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:538 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + f32x4([-0, -0, -0, -0]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0, 0x80, 0x80, 0x80, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:541 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([Infinity, Infinity, Infinity, Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:544 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + f32x4([-Infinity, -Infinity, -Infinity, -Infinity]), + ]), + [ + i8x16([0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:547 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + i8x16([0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:550 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0xc0, + 0xff, + ]), + ]), + [ + i8x16([0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:553 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:556 +assert_return( + () => invoke($0, `i8x16.sub_sat_u`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x2, 0x4, 0x6, 0x8, 0xa, 0xc, 0xe, 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:561 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.add_sat (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1) (v128.const i8x16 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:564 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.sub_sat (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1) (v128.const i8x16 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:567 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.mul_sat (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1) (v128.const i8x16 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:570 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.div_sat (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1) (v128.const i8x16 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:573 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.add_sat_s (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:576 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.add_sat_u (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:579 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.sub_sat_s (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:582 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.sub_sat_u (v128.const i32x4 0 0 0 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:585 +assert_malformed( + () => instantiate(`(func (result v128) (f32x4.add_sat_s (v128.const f32x4 0 0 0 0) (v128.const f32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:588 +assert_malformed( + () => instantiate(`(func (result v128) (f32x4.add_sat_u (v128.const f32x4 0 0 0 0) (v128.const f32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:591 +assert_malformed( + () => instantiate(`(func (result v128) (f32x4.sub_sat_s (v128.const f32x4 0 0 0 0) (v128.const f32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:594 +assert_malformed( + () => instantiate(`(func (result v128) (f32x4.sub_sat_u (v128.const f32x4 0 0 0 0) (v128.const f32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:599 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.add_sat_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:600 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.add_sat_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:601 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.sub_sat_s (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:602 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.sub_sat_u (i32.const 0) (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:606 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.add_sat_s-1st-arg-empty (result v128) + (i8x16.add_sat_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:614 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.add_sat_s-arg-empty (result v128) + (i8x16.add_sat_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:622 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.add_sat_u-1st-arg-empty (result v128) + (i8x16.add_sat_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:630 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.add_sat_u-arg-empty (result v128) + (i8x16.add_sat_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:638 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.sub_sat_s-1st-arg-empty (result v128) + (i8x16.sub_sat_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:646 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.sub_sat_s-arg-empty (result v128) + (i8x16.sub_sat_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:654 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.sub_sat_u-1st-arg-empty (result v128) + (i8x16.sub_sat_u (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:662 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.sub_sat_u-arg-empty (result v128) + (i8x16.sub_sat_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:672 +let $1 = instantiate(`(module + (func (export "sat-add_s-sub_s") (param v128 v128 v128) (result v128) + (i8x16.add_sat_s (i8x16.sub_sat_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "sat-add_s-sub_u") (param v128 v128 v128) (result v128) + (i8x16.add_sat_s (i8x16.sub_sat_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "sat-add_u-sub_s") (param v128 v128 v128) (result v128) + (i8x16.add_sat_u (i8x16.sub_sat_s (local.get 0) (local.get 1))(local.get 2))) + (func (export "sat-add_u-sub_u") (param v128 v128 v128) (result v128) + (i8x16.add_sat_u (i8x16.sub_sat_u (local.get 0) (local.get 1))(local.get 2))) + (func (export "sat-add_s-neg") (param v128 v128) (result v128) + (i8x16.add_sat_s (i8x16.neg (local.get 0)) (local.get 1))) + (func (export "sat-add_u-neg") (param v128 v128) (result v128) + (i8x16.add_sat_u (i8x16.neg (local.get 0)) (local.get 1))) + (func (export "sat-sub_s-neg") (param v128 v128) (result v128) + (i8x16.sub_sat_s (i8x16.neg (local.get 0)) (local.get 1))) + (func (export "sat-sub_u-neg") (param v128 v128) (result v128) + (i8x16.sub_sat_u (i8x16.neg (local.get 0)) (local.get 1))) +)`); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:691 +assert_return( + () => invoke($1, `sat-add_s-sub_s`, [ + i8x16([0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:695 +assert_return( + () => invoke($1, `sat-add_s-sub_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:699 +assert_return( + () => invoke($1, `sat-add_u-sub_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:703 +assert_return( + () => invoke($1, `sat-add_u-sub_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:707 +assert_return( + () => invoke($1, `sat-add_s-neg`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:710 +assert_return( + () => invoke($1, `sat-add_u-neg`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:713 +assert_return( + () => invoke($1, `sat-sub_s-neg`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_i8x16_sat_arith.wast:716 +assert_return( + () => invoke($1, `sat-sub_u-neg`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_int_to_int_extend.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_int_to_int_extend.wast.js new file mode 100644 index 0000000000..0f5a430e5a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_int_to_int_extend.wast.js @@ -0,0 +1,2026 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_int_to_int_extend.wast + +// ./test/core/simd/simd_int_to_int_extend.wast:3 +let $0 = instantiate(`(module + (func (export "i16x8.extend_high_i8x16_s") (param v128) (result v128) (i16x8.extend_high_i8x16_s (local.get 0))) + (func (export "i16x8.extend_high_i8x16_u") (param v128) (result v128) (i16x8.extend_high_i8x16_u (local.get 0))) + (func (export "i16x8.extend_low_i8x16_s") (param v128) (result v128) (i16x8.extend_low_i8x16_s (local.get 0))) + (func (export "i16x8.extend_low_i8x16_u") (param v128) (result v128) (i16x8.extend_low_i8x16_u (local.get 0))) + (func (export "i32x4.extend_high_i16x8_s") (param v128) (result v128) (i32x4.extend_high_i16x8_s (local.get 0))) + (func (export "i32x4.extend_high_i16x8_u") (param v128) (result v128) (i32x4.extend_high_i16x8_u (local.get 0))) + (func (export "i32x4.extend_low_i16x8_s") (param v128) (result v128) (i32x4.extend_low_i16x8_s (local.get 0))) + (func (export "i32x4.extend_low_i16x8_u") (param v128) (result v128) (i32x4.extend_low_i16x8_u (local.get 0))) + (func (export "i64x2.extend_high_i32x4_s") (param v128) (result v128) (i64x2.extend_high_i32x4_s (local.get 0))) + (func (export "i64x2.extend_high_i32x4_u") (param v128) (result v128) (i64x2.extend_high_i32x4_u (local.get 0))) + (func (export "i64x2.extend_low_i32x4_s") (param v128) (result v128) (i64x2.extend_low_i32x4_s (local.get 0))) + (func (export "i64x2.extend_low_i32x4_u") (param v128) (result v128) (i64x2.extend_low_i32x4_u (local.get 0))) +)`); + +// ./test/core/simd/simd_int_to_int_extend.wast:18 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:20 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:22 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:24 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:26 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:28 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:30 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:32 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:34 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:36 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:38 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:40 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:42 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:44 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:46 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:48 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:50 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:52 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:54 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:57 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:59 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:61 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:63 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:65 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:67 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:69 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:71 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:73 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:75 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:77 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:79 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:81 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:83 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:85 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:87 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:89 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:91 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:93 +assert_return( + () => invoke($0, `i16x8.extend_high_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:96 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:98 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:100 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:102 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:104 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:106 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:108 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:110 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:112 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:114 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:116 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:118 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:120 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:122 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:124 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:126 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81, 0xff81])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:128 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:130 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80, 0xff80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:132 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_s`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:135 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:137 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:139 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:141 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:143 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:145 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:147 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:149 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:151 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:153 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:155 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:157 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:159 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:161 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:163 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:165 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:167 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:169 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [i16x8([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:171 +assert_return( + () => invoke($0, `i16x8.extend_low_i8x16_u`, [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ]), + [i16x8([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:174 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:176 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:178 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:180 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:182 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:184 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:186 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:188 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:190 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:192 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:194 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:196 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:198 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:200 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:202 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:204 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:206 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0xffff8001, 0xffff8001, 0xffff8001, 0xffff8001])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:208 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:210 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:213 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:215 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:217 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:219 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:221 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:223 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:225 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:227 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:229 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:231 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:233 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:235 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:237 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:239 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:241 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:243 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:245 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:247 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:249 +assert_return( + () => invoke($0, `i32x4.extend_high_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:252 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:254 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:256 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:258 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:260 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:262 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:264 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:266 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:268 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:270 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:272 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:274 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:276 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:278 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:280 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:282 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffff8001, 0xffff8001, 0xffff8001, 0xffff8001])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:284 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:286 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0xffff8000, 0xffff8000, 0xffff8000, 0xffff8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:288 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_s`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:291 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:293 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:295 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:297 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:299 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:301 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x1, 0x1, 0x1, 0x1, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:303 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x1, 0x1, 0x1, 0x1]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:305 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:307 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7ffe, 0x7ffe, 0x7ffe, 0x7ffe]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:309 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:311 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:313 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:315 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:317 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:319 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x7fff, 0x7fff, 0x7fff, 0x7fff]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:321 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x8001, 0x8001, 0x8001, 0x8001, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0x8001, 0x8001, 0x8001, 0x8001])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:323 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8001, 0x8001, 0x8001, 0x8001]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:325 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i32x4([0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:327 +assert_return( + () => invoke($0, `i32x4.extend_low_i16x8_u`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x8000, 0x8000, 0x8000, 0x8000]), + ]), + [i32x4([0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:330 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:332 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [i32x4([0x0, 0x0, 0x1, 0x1])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:334 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:336 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [i32x4([0x1, 0x1, 0x0, 0x0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:338 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:340 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x1, 0x1, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:342 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x1, 0x1]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:344 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:346 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7ffffffe, 0x7ffffffe]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:348 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:350 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:352 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x80000000, 0x80000000]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:354 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:356 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:358 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:360 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x80000001, 0x80000001, 0x80000000, 0x80000000]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:362 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000001, 0x80000001]), + ]), + [i64x2([0xffffffff80000001n, 0xffffffff80000001n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:364 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:366 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x80000000, 0x80000000]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:369 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:371 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [i32x4([0x0, 0x0, 0x1, 0x1])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:373 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:375 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [i32x4([0x1, 0x1, 0x0, 0x0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:377 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:379 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x1, 0x1, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:381 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x1, 0x1]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:383 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:385 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7ffffffe, 0x7ffffffe]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:387 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:389 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:391 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x80000000, 0x80000000]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:393 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:395 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:397 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:399 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x80000001, 0x80000001, 0x80000000, 0x80000000]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:401 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000001, 0x80000001]), + ]), + [i64x2([0x80000001n, 0x80000001n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:403 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:405 +assert_return( + () => invoke($0, `i64x2.extend_high_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x80000000, 0x80000000]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:408 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:410 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [i32x4([0x0, 0x0, 0x1, 0x1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:412 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:414 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [i32x4([0x1, 0x1, 0x0, 0x0])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:416 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:418 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x1, 0x1, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:420 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x1, 0x1]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:422 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:424 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7ffffffe, 0x7ffffffe]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:426 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:428 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:430 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x80000000, 0x80000000]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:432 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:434 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x7fffffff, 0x7fffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:436 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:438 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x80000001, 0x80000001, 0x80000000, 0x80000000]), + ]), + [i64x2([0xffffffff80000001n, 0xffffffff80000001n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:440 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0x80000001, 0x80000001]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:442 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0x80000000, 0x80000000, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0xffffffff80000000n, 0xffffffff80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:444 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_s`, [ + i32x4([0xffffffff, 0xffffffff, 0x80000000, 0x80000000]), + ]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:447 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:449 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [i32x4([0x0, 0x0, 0x1, 0x1])]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:451 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x0, 0x0, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x0n, 0x0n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:453 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [i32x4([0x1, 0x1, 0x0, 0x0])]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:455 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x0, 0x0]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:457 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x1, 0x1, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x1n, 0x1n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:459 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x1, 0x1]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:461 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x7ffffffe, 0x7ffffffe, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7ffffffen, 0x7ffffffen])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:463 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7ffffffe, 0x7ffffffe]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:465 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:467 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:469 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0x80000000, 0x80000000]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:471 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:473 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x7fffffff, 0x7fffffff, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x7fffffffn, 0x7fffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:475 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x7fffffff, 0x7fffffff]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:477 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x80000001, 0x80000001, 0x80000000, 0x80000000]), + ]), + [i64x2([0x80000001n, 0x80000001n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:479 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0x80000001, 0x80000001]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:481 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0x80000000, 0x80000000, 0xffffffff, 0xffffffff]), + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:483 +assert_return( + () => invoke($0, `i64x2.extend_low_i32x4_u`, [ + i32x4([0xffffffff, 0xffffffff, 0x80000000, 0x80000000]), + ]), + [i64x2([0xffffffffn, 0xffffffffn])], +); + +// ./test/core/simd/simd_int_to_int_extend.wast:488 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extend_high_i8x16_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:489 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extend_high_i8x16_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:490 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extend_low_i8x16_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:491 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.extend_low_i8x16_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:492 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extend_high_i16x8_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:493 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extend_high_i16x8_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:494 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extend_low_i16x8_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:495 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.extend_low_i16x8_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:496 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.extend_high_i32x4_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:497 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.extend_high_i32x4_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:498 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.extend_low_i32x4_s (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:499 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.extend_low_i32x4_u (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:503 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extend_high_i8x16_s-arg-empty (result v128) + (i16x8.extend_high_i8x16_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:511 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extend_high_i8x16_u-arg-empty (result v128) + (i16x8.extend_high_i8x16_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:519 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extend_low_i8x16_s-arg-empty (result v128) + (i16x8.extend_low_i8x16_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:527 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extend_low_i8x16_u-arg-empty (result v128) + (i16x8.extend_low_i8x16_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:535 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extend_high_i16x8_s-arg-empty (result v128) + (i32x4.extend_high_i16x8_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:543 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extend_high_i16x8_u-arg-empty (result v128) + (i32x4.extend_high_i16x8_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:551 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extend_low_i16x8_s-arg-empty (result v128) + (i32x4.extend_low_i16x8_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:559 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extend_low_i16x8_u-arg-empty (result v128) + (i32x4.extend_low_i16x8_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:567 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extend_high_i32x4_s-arg-empty (result v128) + (i64x2.extend_high_i32x4_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:575 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extend_high_i32x4_u-arg-empty (result v128) + (i64x2.extend_high_i32x4_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:583 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extend_low_i32x4_s-arg-empty (result v128) + (i64x2.extend_low_i32x4_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_int_to_int_extend.wast:591 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extend_low_i32x4_u-arg-empty (result v128) + (i64x2.extend_low_i32x4_u) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_lane.wast.js new file mode 100644 index 0000000000..614e722fb7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_lane.wast.js @@ -0,0 +1,4349 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_lane.wast + +// ./test/core/simd/simd_lane.wast:4 +let $0 = instantiate(`(module + (func (export "i8x16_extract_lane_s-first") (param v128) (result i32) + (i8x16.extract_lane_s 0 (local.get 0))) + (func (export "i8x16_extract_lane_s-last") (param v128) (result i32) + (i8x16.extract_lane_s 15 (local.get 0))) + (func (export "i8x16_extract_lane_u-first") (param v128) (result i32) + (i8x16.extract_lane_u 0 (local.get 0))) + (func (export "i8x16_extract_lane_u-last") (param v128) (result i32) + (i8x16.extract_lane_u 15 (local.get 0))) + (func (export "i16x8_extract_lane_s-first") (param v128) (result i32) + (i16x8.extract_lane_s 0 (local.get 0))) + (func (export "i16x8_extract_lane_s-last") (param v128) (result i32) + (i16x8.extract_lane_s 7 (local.get 0))) + (func (export "i16x8_extract_lane_u-first") (param v128) (result i32) + (i16x8.extract_lane_u 0 (local.get 0))) + (func (export "i16x8_extract_lane_u-last") (param v128) (result i32) + (i16x8.extract_lane_u 7 (local.get 0))) + (func (export "i32x4_extract_lane-first") (param v128) (result i32) + (i32x4.extract_lane 0 (local.get 0))) + (func (export "i32x4_extract_lane-last") (param v128) (result i32) + (i32x4.extract_lane 3 (local.get 0))) + (func (export "f32x4_extract_lane-first") (param v128) (result f32) + (f32x4.extract_lane 0 (local.get 0))) + (func (export "f32x4_extract_lane-last") (param v128) (result f32) + (f32x4.extract_lane 3 (local.get 0))) + (func (export "i8x16_replace_lane-first") (param v128 i32) (result v128) + (i8x16.replace_lane 0 (local.get 0) (local.get 1))) + (func (export "i8x16_replace_lane-last") (param v128 i32) (result v128) + (i8x16.replace_lane 15 (local.get 0) (local.get 1))) + (func (export "i16x8_replace_lane-first") (param v128 i32) (result v128) + (i16x8.replace_lane 0 (local.get 0) (local.get 1))) + (func (export "i16x8_replace_lane-last") (param v128 i32) (result v128) + (i16x8.replace_lane 7 (local.get 0) (local.get 1))) + (func (export "i32x4_replace_lane-first") (param v128 i32) (result v128) + (i32x4.replace_lane 0 (local.get 0) (local.get 1))) + (func (export "i32x4_replace_lane-last") (param v128 i32) (result v128) + (i32x4.replace_lane 3 (local.get 0) (local.get 1))) + (func (export "f32x4_replace_lane-first") (param v128 f32) (result v128) + (f32x4.replace_lane 0 (local.get 0) (local.get 1))) + (func (export "f32x4_replace_lane-last") (param v128 f32) (result v128) + (f32x4.replace_lane 3 (local.get 0) (local.get 1))) + (func (export "i64x2_extract_lane-first") (param v128) (result i64) + (i64x2.extract_lane 0 (local.get 0))) + (func (export "i64x2_extract_lane-last") (param v128) (result i64) + (i64x2.extract_lane 1 (local.get 0))) + (func (export "f64x2_extract_lane-first") (param v128) (result f64) + (f64x2.extract_lane 0 (local.get 0))) + (func (export "f64x2_extract_lane-last") (param v128) (result f64) + (f64x2.extract_lane 1 (local.get 0))) + (func (export "i64x2_replace_lane-first") (param v128 i64) (result v128) + (i64x2.replace_lane 0 (local.get 0) (local.get 1))) + (func (export "i64x2_replace_lane-last") (param v128 i64) (result v128) + (i64x2.replace_lane 1 (local.get 0) (local.get 1))) + (func (export "f64x2_replace_lane-first") (param v128 f64) (result v128) + (f64x2.replace_lane 0 (local.get 0) (local.get 1))) + (func (export "f64x2_replace_lane-last") (param v128 f64) (result v128) + (f64x2.replace_lane 1 (local.get 0) (local.get 1))) + + ;; Swizzle and shuffle + (func (export "v8x16_swizzle") (param v128 v128) (result v128) + (i8x16.swizzle (local.get 0) (local.get 1))) + (func (export "v8x16_shuffle-1") (param v128 v128) (result v128) + (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 (local.get 0) (local.get 1))) + (func (export "v8x16_shuffle-2") (param v128 v128) (result v128) + (i8x16.shuffle 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 (local.get 0) (local.get 1))) + (func (export "v8x16_shuffle-3") (param v128 v128) (result v128) + (i8x16.shuffle 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 (local.get 0) (local.get 1))) + (func (export "v8x16_shuffle-4") (param v128 v128) (result v128) + (i8x16.shuffle 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 (local.get 0) (local.get 1))) + (func (export "v8x16_shuffle-5") (param v128 v128) (result v128) + (i8x16.shuffle 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (local.get 0) (local.get 1))) + (func (export "v8x16_shuffle-6") (param v128 v128) (result v128) + (i8x16.shuffle 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 (local.get 0) (local.get 1))) + (func (export "v8x16_shuffle-7") (param v128 v128) (result v128) + (i8x16.shuffle 0 0 0 0 0 0 0 0 16 16 16 16 16 16 16 16 (local.get 0) (local.get 1))) +)`); + +// ./test/core/simd/simd_lane.wast:81 +assert_return( + () => invoke($0, `i8x16_extract_lane_s-first`, [ + i8x16([0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 127)], +); + +// ./test/core/simd/simd_lane.wast:82 +assert_return( + () => invoke($0, `i8x16_extract_lane_s-first`, [ + i8x16([0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 127)], +); + +// ./test/core/simd/simd_lane.wast:83 +assert_return( + () => invoke($0, `i8x16_extract_lane_s-first`, [ + i8x16([0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:84 +assert_return( + () => invoke($0, `i8x16_extract_lane_s-first`, [ + i8x16([0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:85 +assert_return( + () => invoke($0, `i8x16_extract_lane_u-first`, [ + i8x16([0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 255)], +); + +// ./test/core/simd/simd_lane.wast:86 +assert_return( + () => invoke($0, `i8x16_extract_lane_u-first`, [ + i8x16([0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 255)], +); + +// ./test/core/simd/simd_lane.wast:87 +assert_return( + () => invoke($0, `i8x16_extract_lane_s-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80]), + ]), + [value("i32", -128)], +); + +// ./test/core/simd/simd_lane.wast:88 +assert_return( + () => invoke($0, `i8x16_extract_lane_s-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80]), + ]), + [value("i32", -128)], +); + +// ./test/core/simd/simd_lane.wast:89 +assert_return( + () => invoke($0, `i8x16_extract_lane_u-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff]), + ]), + [value("i32", 255)], +); + +// ./test/core/simd/simd_lane.wast:90 +assert_return( + () => invoke($0, `i8x16_extract_lane_u-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff]), + ]), + [value("i32", 255)], +); + +// ./test/core/simd/simd_lane.wast:91 +assert_return( + () => invoke($0, `i8x16_extract_lane_u-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80]), + ]), + [value("i32", 128)], +); + +// ./test/core/simd/simd_lane.wast:92 +assert_return( + () => invoke($0, `i8x16_extract_lane_u-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80]), + ]), + [value("i32", 128)], +); + +// ./test/core/simd/simd_lane.wast:94 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-first`, [ + i16x8([0x7fff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 32767)], +); + +// ./test/core/simd/simd_lane.wast:95 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-first`, [ + i16x8([0x7fff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 32767)], +); + +// ./test/core/simd/simd_lane.wast:96 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-first`, [ + i16x8([0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:97 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-first`, [ + i16x8([0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:98 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-first`, [ + i16x8([0x3039, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 12345)], +); + +// ./test/core/simd/simd_lane.wast:99 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-first`, [ + i16x8([0xedcc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", -4660)], +); + +// ./test/core/simd/simd_lane.wast:100 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-first`, [ + i16x8([0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 65535)], +); + +// ./test/core/simd/simd_lane.wast:101 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-first`, [ + i16x8([0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 65535)], +); + +// ./test/core/simd/simd_lane.wast:102 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-first`, [ + i16x8([0x3039, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 12345)], +); + +// ./test/core/simd/simd_lane.wast:103 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-first`, [ + i16x8([0xedcc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 60876)], +); + +// ./test/core/simd/simd_lane.wast:104 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000]), + ]), + [value("i32", -32768)], +); + +// ./test/core/simd/simd_lane.wast:105 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000]), + ]), + [value("i32", -32768)], +); + +// ./test/core/simd/simd_lane.wast:106 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1a85]), + ]), + [value("i32", 6789)], +); + +// ./test/core/simd/simd_lane.wast:107 +assert_return( + () => invoke($0, `i16x8_extract_lane_s-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9877]), + ]), + [value("i32", -26505)], +); + +// ./test/core/simd/simd_lane.wast:108 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff]), + ]), + [value("i32", 65535)], +); + +// ./test/core/simd/simd_lane.wast:109 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff]), + ]), + [value("i32", 65535)], +); + +// ./test/core/simd/simd_lane.wast:110 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000]), + ]), + [value("i32", 32768)], +); + +// ./test/core/simd/simd_lane.wast:111 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000]), + ]), + [value("i32", 32768)], +); + +// ./test/core/simd/simd_lane.wast:112 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1a85]), + ]), + [value("i32", 6789)], +); + +// ./test/core/simd/simd_lane.wast:113 +assert_return( + () => invoke($0, `i16x8_extract_lane_u-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9877]), + ]), + [value("i32", 39031)], +); + +// ./test/core/simd/simd_lane.wast:115 +assert_return( + () => invoke($0, `i32x4_extract_lane-first`, [i32x4([0x7fffffff, 0x0, 0x0, 0x0])]), + [value("i32", 2147483647)], +); + +// ./test/core/simd/simd_lane.wast:116 +assert_return( + () => invoke($0, `i32x4_extract_lane-first`, [i32x4([0x7fffffff, 0x0, 0x0, 0x0])]), + [value("i32", 2147483647)], +); + +// ./test/core/simd/simd_lane.wast:117 +assert_return( + () => invoke($0, `i32x4_extract_lane-first`, [i32x4([0xffffffff, 0x0, 0x0, 0x0])]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:118 +assert_return( + () => invoke($0, `i32x4_extract_lane-first`, [i32x4([0xffffffff, 0x0, 0x0, 0x0])]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:119 +assert_return( + () => invoke($0, `i32x4_extract_lane-first`, [i32x4([0x499602d2, 0x0, 0x0, 0x0])]), + [value("i32", 1234567890)], +); + +// ./test/core/simd/simd_lane.wast:120 +assert_return( + () => invoke($0, `i32x4_extract_lane-first`, [i32x4([0xedcba988, 0x0, 0x0, 0x0])]), + [value("i32", -305419896)], +); + +// ./test/core/simd/simd_lane.wast:121 +assert_return( + () => invoke($0, `i32x4_extract_lane-last`, [i32x4([0x0, 0x0, 0x0, 0x80000000])]), + [value("i32", -2147483648)], +); + +// ./test/core/simd/simd_lane.wast:122 +assert_return( + () => invoke($0, `i32x4_extract_lane-last`, [i32x4([0x0, 0x0, 0x0, 0x80000000])]), + [value("i32", -2147483648)], +); + +// ./test/core/simd/simd_lane.wast:123 +assert_return( + () => invoke($0, `i32x4_extract_lane-last`, [i32x4([0x0, 0x0, 0x0, 0xffffffff])]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:124 +assert_return( + () => invoke($0, `i32x4_extract_lane-last`, [i32x4([0x0, 0x0, 0x0, 0xffffffff])]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:125 +assert_return( + () => invoke($0, `i32x4_extract_lane-last`, [i32x4([0x0, 0x0, 0x0, 0x3ade68b1])]), + [value("i32", 987654321)], +); + +// ./test/core/simd/simd_lane.wast:126 +assert_return( + () => invoke($0, `i32x4_extract_lane-last`, [i32x4([0x0, 0x0, 0x0, 0xedcba988])]), + [value("i32", -305419896)], +); + +// ./test/core/simd/simd_lane.wast:128 +assert_return( + () => invoke($0, `i64x2_extract_lane-first`, [i64x2([0x7fffffffffffffffn, 0x0n])]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/simd/simd_lane.wast:129 +assert_return( + () => invoke($0, `i64x2_extract_lane-first`, [i64x2([0x7ffffffffffffffen, 0x0n])]), + [value("i64", 9223372036854775806n)], +); + +// ./test/core/simd/simd_lane.wast:130 +assert_return( + () => invoke($0, `i64x2_extract_lane-first`, [i64x2([0xffffffffffffffffn, 0x0n])]), + [value("i64", -1n)], +); + +// ./test/core/simd/simd_lane.wast:131 +assert_return( + () => invoke($0, `i64x2_extract_lane-first`, [i64x2([0xffffffffffffffffn, 0x0n])]), + [value("i64", -1n)], +); + +// ./test/core/simd/simd_lane.wast:132 +assert_return( + () => invoke($0, `i64x2_extract_lane-first`, [i64x2([0x112210f47de98115n, 0x0n])]), + [value("i64", 1234567890123456789n)], +); + +// ./test/core/simd/simd_lane.wast:133 +assert_return( + () => invoke($0, `i64x2_extract_lane-first`, [i64x2([0x1234567890abcdefn, 0x0n])]), + [value("i64", 1311768467294899695n)], +); + +// ./test/core/simd/simd_lane.wast:134 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [i64x2([0x0n, 0x8000000000000000n])]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/simd/simd_lane.wast:135 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [i64x2([0x0n, 0x8000000000000000n])]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/simd/simd_lane.wast:136 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [i64x2([0x0n, 0x8000000000000000n])]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/simd/simd_lane.wast:137 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f]), + ]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/simd/simd_lane.wast:138 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000]), + ]), + [value("i64", -9223372036854775808n)], +); + +// ./test/core/simd/simd_lane.wast:139 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [ + i32x4([0x0, 0x0, 0xffffffff, 0x7fffffff]), + ]), + [value("i64", 9223372036854775807n)], +); + +// ./test/core/simd/simd_lane.wast:140 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [f64x2([-Infinity, Infinity])]), + [value("i64", 9218868437227405312n)], +); + +// ./test/core/simd/simd_lane.wast:141 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [i64x2([0x0n, 0x112210f47de98115n])]), + [value("i64", 1234567890123456789n)], +); + +// ./test/core/simd/simd_lane.wast:142 +assert_return( + () => invoke($0, `i64x2_extract_lane-last`, [i64x2([0x0n, 0x1234567890abcdefn])]), + [value("i64", 1311768467294899695n)], +); + +// ./test/core/simd/simd_lane.wast:144 +assert_return(() => invoke($0, `f32x4_extract_lane-first`, [f32x4([-5, 0, 0, 0])]), [value("f32", -5)]); + +// ./test/core/simd/simd_lane.wast:145 +assert_return( + () => invoke($0, `f32x4_extract_lane-first`, [ + f32x4([100000000000000000000000000000000000000, 0, 0, 0]), + ]), + [value("f32", 100000000000000000000000000000000000000)], +); + +// ./test/core/simd/simd_lane.wast:146 +assert_return( + () => invoke($0, `f32x4_extract_lane-first`, [ + f32x4([340282350000000000000000000000000000000, 0, 0, 0]), + ]), + [value("f32", 340282350000000000000000000000000000000)], +); + +// ./test/core/simd/simd_lane.wast:147 +assert_return( + () => invoke($0, `f32x4_extract_lane-first`, [ + f32x4([170141180000000000000000000000000000000, 0, 0, 0]), + ]), + [value("f32", 170141180000000000000000000000000000000)], +); + +// ./test/core/simd/simd_lane.wast:148 +assert_return( + () => invoke($0, `f32x4_extract_lane-first`, [f32x4([Infinity, 0, 0, 0])]), + [value("f32", Infinity)], +); + +// ./test/core/simd/simd_lane.wast:149 +assert_return( + () => invoke($0, `f32x4_extract_lane-first`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x80, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/simd/simd_lane.wast:150 +assert_return( + () => invoke($0, `f32x4_extract_lane-first`, [ + f32x4([1234567900000000000000000000, 0, 0, 0]), + ]), + [value("f32", 1234567900000000000000000000)], +); + +// ./test/core/simd/simd_lane.wast:151 +assert_return( + () => invoke($0, `f32x4_extract_lane-first`, [f32x4([156374990000, 0, 0, 0])]), + [value("f32", 156374990000)], +); + +// ./test/core/simd/simd_lane.wast:152 +assert_return( + () => invoke($0, `f32x4_extract_lane-last`, [ + f32x4([0, 0, 0, -100000000000000000000000000000000000000]), + ]), + [value("f32", -100000000000000000000000000000000000000)], +); + +// ./test/core/simd/simd_lane.wast:153 +assert_return( + () => invoke($0, `f32x4_extract_lane-last`, [ + f32x4([0, 0, 0, -340282350000000000000000000000000000000]), + ]), + [value("f32", -340282350000000000000000000000000000000)], +); + +// ./test/core/simd/simd_lane.wast:154 +assert_return( + () => invoke($0, `f32x4_extract_lane-last`, [ + f32x4([0, 0, 0, -170141180000000000000000000000000000000]), + ]), + [value("f32", -170141180000000000000000000000000000000)], +); + +// ./test/core/simd/simd_lane.wast:155 +assert_return( + () => invoke($0, `f32x4_extract_lane-last`, [f32x4([0, 0, 0, -Infinity])]), + [value("f32", -Infinity)], +); + +// ./test/core/simd/simd_lane.wast:156 +assert_return( + () => invoke($0, `f32x4_extract_lane-last`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x80, + 0xff, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])], +); + +// ./test/core/simd/simd_lane.wast:157 +assert_return( + () => invoke($0, `f32x4_extract_lane-last`, [f32x4([0, 0, 0, 123456790])]), + [value("f32", 123456790)], +); + +// ./test/core/simd/simd_lane.wast:158 +assert_return( + () => invoke($0, `f32x4_extract_lane-last`, [f32x4([0, 0, 0, 81985530000000000])]), + [value("f32", 81985530000000000)], +); + +// ./test/core/simd/simd_lane.wast:160 +assert_return(() => invoke($0, `f64x2_extract_lane-first`, [f64x2([-1.5, 0])]), [value("f64", -1.5)]); + +// ./test/core/simd/simd_lane.wast:161 +assert_return(() => invoke($0, `f64x2_extract_lane-first`, [f64x2([1.5, 0])]), [value("f64", 1.5)]); + +// ./test/core/simd/simd_lane.wast:162 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017976931348623155, + 0, + ]), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017976931348623155), + ], +); + +// ./test/core/simd/simd_lane.wast:163 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017976931348623155, + 0, + ]), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017976931348623155), + ], +); + +// ./test/core/simd/simd_lane.wast:164 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [ + f64x2([ + -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0, + ]), + ]), + [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/simd/simd_lane.wast:165 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [ + f64x2([ + 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014, + 0, + ]), + ]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/simd/simd_lane.wast:166 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [f64x2([-Infinity, 0])]), + [value("f64", -Infinity)], +); + +// ./test/core/simd/simd_lane.wast:167 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [f64x2([Infinity, 0])]), + [value("f64", Infinity)], +); + +// ./test/core/simd/simd_lane.wast:168 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x80, + ]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/simd/simd_lane.wast:169 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/simd/simd_lane.wast:170 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [ + f64x2([1234567890123456900000000000, 0]), + ]), + [value("f64", 1234567890123456900000000000)], +); + +// ./test/core/simd/simd_lane.wast:171 +assert_return( + () => invoke($0, `f64x2_extract_lane-first`, [f64x2([2623536934927580700, 0])]), + [value("f64", 2623536934927580700)], +); + +// ./test/core/simd/simd_lane.wast:172 +assert_return(() => invoke($0, `f64x2_extract_lane-last`, [f64x2([0, 2.25])]), [value("f64", 2.25)]); + +// ./test/core/simd/simd_lane.wast:173 +assert_return(() => invoke($0, `f64x2_extract_lane-last`, [f64x2([0, -2.25])]), [value("f64", -2.25)]); + +// ./test/core/simd/simd_lane.wast:174 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + f64x2([ + 0, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_lane.wast:175 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + f64x2([ + 0, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_lane.wast:176 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + f64x2([ + 0, + -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_lane.wast:177 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + f64x2([ + 0, + 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, + ]), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_lane.wast:178 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [f64x2([-0, -Infinity])]), + [value("f64", -Infinity)], +); + +// ./test/core/simd/simd_lane.wast:179 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [f64x2([0, Infinity])]), + [value("f64", Infinity)], +); + +// ./test/core/simd/simd_lane.wast:180 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x80, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff])], +); + +// ./test/core/simd/simd_lane.wast:181 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f])], +); + +// ./test/core/simd/simd_lane.wast:182 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [f64x2([0, 123456789])]), + [value("f64", 123456789)], +); + +// ./test/core/simd/simd_lane.wast:183 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [f64x2([0, 1375488932539311400000000])]), + [value("f64", 1375488932539311400000000)], +); + +// ./test/core/simd/simd_lane.wast:185 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("f64", 0)], +); + +// ./test/core/simd/simd_lane.wast:186 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80]), + ]), + [value("f64", -0)], +); + +// ./test/core/simd/simd_lane.wast:187 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4000]), + ]), + [value("f64", 2)], +); + +// ./test/core/simd/simd_lane.wast:188 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc000]), + ]), + [value("f64", -2)], +); + +// ./test/core/simd/simd_lane.wast:189 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [ + i32x4([0x0, 0x0, 0xffffffff, 0x7fefffff]), + ]), + [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ], +); + +// ./test/core/simd/simd_lane.wast:190 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [i32x4([0x0, 0x0, 0x0, 0x100000])]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ], +); + +// ./test/core/simd/simd_lane.wast:191 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [i32x4([0x0, 0x0, 0xffffffff, 0xfffff])]), + [ + value("f64", 0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002225073858507201), + ], +); + +// ./test/core/simd/simd_lane.wast:192 +assert_return( + () => invoke($0, `f64x2_extract_lane-last`, [i32x4([0x0, 0x0, 0x1, 0x0])]), + [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ], +); + +// ./test/core/simd/simd_lane.wast:194 +assert_return( + () => invoke($0, `i8x16_replace_lane-first`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 127, + ]), + [ + i8x16([0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:195 +assert_return( + () => invoke($0, `i8x16_replace_lane-first`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 128, + ]), + [ + i8x16([0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:196 +assert_return( + () => invoke($0, `i8x16_replace_lane-first`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 255, + ]), + [ + i8x16([0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:197 +assert_return( + () => invoke($0, `i8x16_replace_lane-first`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 256, + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:198 +assert_return( + () => invoke($0, `i8x16_replace_lane-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + -128, + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80]), + ], +); + +// ./test/core/simd/simd_lane.wast:199 +assert_return( + () => invoke($0, `i8x16_replace_lane-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + -129, + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f]), + ], +); + +// ./test/core/simd/simd_lane.wast:200 +assert_return( + () => invoke($0, `i8x16_replace_lane-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 32767, + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff]), + ], +); + +// ./test/core/simd/simd_lane.wast:201 +assert_return( + () => invoke($0, `i8x16_replace_lane-last`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + -32768, + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:203 +assert_return( + () => invoke($0, `i16x8_replace_lane-first`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 32767, + ]), + [i16x8([0x7fff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:204 +assert_return( + () => invoke($0, `i16x8_replace_lane-first`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 32768, + ]), + [i16x8([0x8000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:205 +assert_return( + () => invoke($0, `i16x8_replace_lane-first`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 65535, + ]), + [i16x8([0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:206 +assert_return( + () => invoke($0, `i16x8_replace_lane-first`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 65536, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:207 +assert_return( + () => invoke($0, `i16x8_replace_lane-first`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 12345, + ]), + [i16x8([0x3039, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:208 +assert_return( + () => invoke($0, `i16x8_replace_lane-first`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + -4660, + ]), + [i16x8([0xedcc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:209 +assert_return( + () => invoke($0, `i16x8_replace_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + -32768, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000])], +); + +// ./test/core/simd/simd_lane.wast:210 +assert_return( + () => invoke($0, `i16x8_replace_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + -32769, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7fff])], +); + +// ./test/core/simd/simd_lane.wast:211 +assert_return( + () => invoke($0, `i16x8_replace_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 2147483647, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffff])], +); + +// ./test/core/simd/simd_lane.wast:212 +assert_return( + () => invoke($0, `i16x8_replace_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + -2147483648, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:213 +assert_return( + () => invoke($0, `i16x8_replace_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 54321, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd431])], +); + +// ./test/core/simd/simd_lane.wast:214 +assert_return( + () => invoke($0, `i16x8_replace_lane-last`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + -17185, + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xbcdf])], +); + +// ./test/core/simd/simd_lane.wast:216 +assert_return( + () => invoke($0, `i32x4_replace_lane-first`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + 2147483647, + ]), + [i32x4([0x7fffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:217 +assert_return( + () => invoke($0, `i32x4_replace_lane-first`, [i32x4([0x0, 0x0, 0x0, 0x0]), -1]), + [i32x4([0xffffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:218 +assert_return( + () => invoke($0, `i32x4_replace_lane-first`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + 1234567890, + ]), + [i32x4([0x499602d2, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:219 +assert_return( + () => invoke($0, `i32x4_replace_lane-first`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + -305419896, + ]), + [i32x4([0xedcba988, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:220 +assert_return( + () => invoke($0, `i32x4_replace_lane-last`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + -2147483648, + ]), + [i32x4([0x0, 0x0, 0x0, 0x80000000])], +); + +// ./test/core/simd/simd_lane.wast:221 +assert_return( + () => invoke($0, `i32x4_replace_lane-last`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + -2147483648, + ]), + [i32x4([0x0, 0x0, 0x0, 0x80000000])], +); + +// ./test/core/simd/simd_lane.wast:222 +assert_return( + () => invoke($0, `i32x4_replace_lane-last`, [i32x4([0x0, 0x0, 0x0, 0x0]), 1234567890]), + [i32x4([0x0, 0x0, 0x0, 0x499602d2])], +); + +// ./test/core/simd/simd_lane.wast:223 +assert_return( + () => invoke($0, `i32x4_replace_lane-last`, [i32x4([0x0, 0x0, 0x0, 0x0]), -305419896]), + [i32x4([0x0, 0x0, 0x0, 0xedcba988])], +); + +// ./test/core/simd/simd_lane.wast:225 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [f32x4([0, 0, 0, 0]), value("f32", 53)]), + [ + new F32x4Pattern( + value("f32", 53), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:226 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + value("f32", 53), + ]), + [ + new F32x4Pattern( + value("f32", 53), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:227 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([0, 0, 0, 0]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:228 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([0, 0, 0, 0]), + value("f32", Infinity), + ]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:229 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + value("f32", 3.14), + ]), + [ + new F32x4Pattern( + value("f32", 3.14), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:230 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([Infinity, 0, 0, 0]), + value("f32", 100000000000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 100000000000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:231 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([Infinity, 0, 0, 0]), + value("f32", 340282350000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:232 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([Infinity, 0, 0, 0]), + value("f32", 170141180000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 170141180000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:233 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([0, 0, 0, 0]), + value("f32", 123456790), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:234 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([0, 0, 0, 0]), + value("f32", 123456790), + ]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:235 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([0, 0, 0, 0]), + value("f32", 81985530000000000), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:236 +assert_return( + () => invoke($0, `f32x4_replace_lane-first`, [ + f32x4([0, 0, 0, 0]), + value("f32", 81985530000000000), + ]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:237 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [f32x4([0, 0, 0, 0]), value("f32", -53)]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", -53), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:238 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + value("f32", -53), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", -53), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:239 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, 0]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:240 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, 0]), + value("f32", -Infinity), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:241 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + value("f32", 3.14), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 3.14), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:242 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, -Infinity]), + value("f32", -100000000000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", -100000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:243 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, -Infinity]), + value("f32", -340282350000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:244 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, -Infinity]), + value("f32", -170141180000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", -170141180000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:245 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, 0]), + value("f32", 1234567900000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:246 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, 0]), + value("f32", 1234567900000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:247 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, 0]), + value("f32", 42984030000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:248 +assert_return( + () => invoke($0, `f32x4_replace_lane-last`, [ + f32x4([0, 0, 0, 0]), + value("f32", 156374990000), + ]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:250 +assert_return( + () => invoke($0, `i64x2_replace_lane-first`, [ + i64x2([0x0n, 0x0n]), + 9223372036854775807n, + ]), + [i64x2([0x7fffffffffffffffn, 0x0n])], +); + +// ./test/core/simd/simd_lane.wast:251 +assert_return( + () => invoke($0, `i64x2_replace_lane-first`, [i64x2([0x0n, 0x0n]), -1n]), + [i64x2([0xffffffffffffffffn, 0x0n])], +); + +// ./test/core/simd/simd_lane.wast:252 +assert_return( + () => invoke($0, `i64x2_replace_lane-first`, [ + i64x2([0x0n, 0x0n]), + 1234567890123456789n, + ]), + [i64x2([0x112210f47de98115n, 0x0n])], +); + +// ./test/core/simd/simd_lane.wast:253 +assert_return( + () => invoke($0, `i64x2_replace_lane-first`, [ + i64x2([0x0n, 0x0n]), + 1311768467294899695n, + ]), + [i64x2([0x1234567890abcdefn, 0x0n])], +); + +// ./test/core/simd/simd_lane.wast:254 +assert_return( + () => invoke($0, `i64x2_replace_lane-last`, [ + i64x2([0x0n, 0x0n]), + -9223372036854775808n, + ]), + [i64x2([0x0n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_lane.wast:255 +assert_return( + () => invoke($0, `i64x2_replace_lane-last`, [ + i64x2([0x0n, 0x0n]), + -9223372036854775808n, + ]), + [i64x2([0x0n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_lane.wast:256 +assert_return( + () => invoke($0, `i64x2_replace_lane-last`, [ + i64x2([0x0n, 0x0n]), + 1234567890123456789n, + ]), + [i64x2([0x0n, 0x112210f47de98115n])], +); + +// ./test/core/simd/simd_lane.wast:257 +assert_return( + () => invoke($0, `i64x2_replace_lane-last`, [ + i64x2([0x0n, 0x0n]), + 1311768467294899695n, + ]), + [i64x2([0x0n, 0x1234567890abcdefn])], +); + +// ./test/core/simd/simd_lane.wast:259 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [f64x2([1, 1]), value("f64", 0)]), + [new F64x2Pattern(value("f64", 0), value("f64", 1))], +); + +// ./test/core/simd/simd_lane.wast:260 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [f64x2([-1, -1]), value("f64", -0)]), + [new F64x2Pattern(value("f64", -0), value("f64", -1))], +); + +// ./test/core/simd/simd_lane.wast:261 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [f64x2([0, 0]), value("f64", 1.25)]), + [new F64x2Pattern(value("f64", 1.25), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:262 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [f64x2([0, 0]), value("f64", -1.25)]), + [new F64x2Pattern(value("f64", -1.25), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:263 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:264 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + ]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:265 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [ + f64x2([-Infinity, 0]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:266 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [ + f64x2([Infinity, 0]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:267 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [ + f64x2([0, 0]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + value("f64", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:268 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [ + f64x2([0, 0]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + value("f64", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:269 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [f64x2([0, 0]), value("f64", -Infinity)]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:270 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [f64x2([0, 0]), value("f64", Infinity)]), + [new F64x2Pattern(value("f64", Infinity), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:271 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [f64x2([0, 0]), value("f64", 123456789)]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:272 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [f64x2([0, 0]), value("f64", 123456789)]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:273 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [ + f64x2([0, 0]), + value("f64", 1375488932539311400000000), + ]), + [new F64x2Pattern(value("f64", 1375488932539311400000000), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:274 +assert_return( + () => invoke($0, `f64x2_replace_lane-first`, [ + f64x2([0, 0]), + value("f64", 1375488932539311400000000), + ]), + [new F64x2Pattern(value("f64", 1375488932539311400000000), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:275 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [f64x2([2, 2]), value("f64", 0)]), + [new F64x2Pattern(value("f64", 2), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:276 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [f64x2([-2, -2]), value("f64", -0)]), + [new F64x2Pattern(value("f64", -2), value("f64", -0))], +); + +// ./test/core/simd/simd_lane.wast:277 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [f64x2([0, 0]), value("f64", 2.25)]), + [new F64x2Pattern(value("f64", 0), value("f64", 2.25))], +); + +// ./test/core/simd/simd_lane.wast:278 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [f64x2([0, 0]), value("f64", -2.25)]), + [new F64x2Pattern(value("f64", 0), value("f64", -2.25))], +); + +// ./test/core/simd/simd_lane.wast:279 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0xff, + ]), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + new F64x2Pattern( + value("f64", 0), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:280 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + new F64x2Pattern( + value("f64", 0), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:281 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + f64x2([0, -Infinity]), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + new F64x2Pattern( + value("f64", 0), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:282 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + f64x2([0, Infinity]), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + new F64x2Pattern( + value("f64", 0), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:283 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + f64x2([0, 0]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + new F64x2Pattern( + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:284 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + f64x2([0, 0]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + new F64x2Pattern( + value("f64", 0), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:285 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [f64x2([0, 0]), value("f64", -Infinity)]), + [new F64x2Pattern(value("f64", 0), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_lane.wast:286 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [f64x2([0, 0]), value("f64", Infinity)]), + [new F64x2Pattern(value("f64", 0), value("f64", Infinity))], +); + +// ./test/core/simd/simd_lane.wast:287 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + f64x2([0, 0]), + value("f64", 1234567890000000000000000000), + ]), + [ + new F64x2Pattern(value("f64", 0), value("f64", 1234567890000000000000000000)), + ], +); + +// ./test/core/simd/simd_lane.wast:288 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + f64x2([0, 0]), + value("f64", 1234567890000000000000000000), + ]), + [ + new F64x2Pattern(value("f64", 0), value("f64", 1234567890000000000000000000)), + ], +); + +// ./test/core/simd/simd_lane.wast:289 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + f64x2([0, 0]), + value("f64", 1234567890000000000000000000), + ]), + [ + new F64x2Pattern(value("f64", 0), value("f64", 1234567890000000000000000000)), + ], +); + +// ./test/core/simd/simd_lane.wast:290 +assert_return( + () => invoke($0, `f64x2_replace_lane-last`, [ + f64x2([0, 0]), + value("f64", 0.0000000000123456789), + ]), + [new F64x2Pattern(value("f64", 0), value("f64", 0.0000000000123456789))], +); + +// ./test/core/simd/simd_lane.wast:292 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i8x16([0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [ + i8x16([0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + ], +); + +// ./test/core/simd/simd_lane.wast:296 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + i8x16([0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:300 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i8x16([0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73]), + i8x16([0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0x73, 0x72, 0x71, 0x70, 0x6f, 0x6e, 0x6d, 0x6c, 0x6b, 0x6a, 0x69, 0x68, 0x67, 0x66, 0x65, 0x64]), + ], +); + +// ./test/core/simd/simd_lane.wast:304 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i8x16([0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73]), + i8x16([0xff, 0x1, 0xfe, 0x2, 0xfd, 0x3, 0xfc, 0x4, 0xfb, 0x5, 0xfa, 0x6, 0xf9, 0x7, 0xf8, 0x8]), + ]), + [ + i8x16([0x0, 0x65, 0x0, 0x66, 0x0, 0x67, 0x0, 0x68, 0x0, 0x69, 0x0, 0x6a, 0x0, 0x6b, 0x0, 0x6c]), + ], +); + +// ./test/core/simd/simd_lane.wast:308 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i8x16([0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73]), + i8x16([0x9, 0x10, 0xa, 0x11, 0xb, 0x12, 0xc, 0x13, 0xd, 0x14, 0xe, 0x15, 0xf, 0x16, 0x10, 0x17]), + ]), + [ + i8x16([0x6d, 0x0, 0x6e, 0x0, 0x6f, 0x0, 0x70, 0x0, 0x71, 0x0, 0x72, 0x0, 0x73, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:312 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i8x16([0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73]), + i8x16([0x9, 0x10, 0xa, 0x11, 0xb, 0x12, 0xc, 0x13, 0xd, 0x14, 0xe, 0x15, 0xf, 0x16, 0x10, 0x17]), + ]), + [ + i8x16([0x6d, 0x0, 0x6e, 0x0, 0x6f, 0x0, 0x70, 0x0, 0x71, 0x0, 0x72, 0x0, 0x73, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:316 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i16x8([0x6465, 0x6667, 0x6869, 0x6a6b, 0x6c6d, 0x6e6f, 0x7071, 0x7273]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i16x8([0x6465, 0x6667, 0x6869, 0x6a6b, 0x6c6d, 0x6e6f, 0x7071, 0x7273])], +); + +// ./test/core/simd/simd_lane.wast:320 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i32x4([0x64656667, 0x68696a6b, 0x6c6d6e6f, 0x70717273]), + i8x16([0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [i32x4([0x73727170, 0x6f6e6d6c, 0x6b6a6968, 0x67666564])], +); + +// ./test/core/simd/simd_lane.wast:324 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + bytes('v128', [ + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0xff, + 0x0, + 0x0, + 0x80, + 0x7f, + 0x0, + 0x0, + 0x80, + 0xff, + ]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x7fc00000, 0xffc00000, 0x7f800000, 0xff800000])], +); + +// ./test/core/simd/simd_lane.wast:328 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i32x4([0x67666564, 0x6b6a6968, 0x6f6e6d5c, 0x73727170]), + f32x4([0, -0, Infinity, -Infinity]), + ]), + [i32x4([0x64646464, 0x646464, 0x6464, 0x6464])], +); + +// ./test/core/simd/simd_lane.wast:333 +assert_return( + () => invoke($0, `v8x16_shuffle-1`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f]), + ]), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_lane.wast:337 +assert_return( + () => invoke($0, `v8x16_shuffle-2`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ], +); + +// ./test/core/simd/simd_lane.wast:341 +assert_return( + () => invoke($0, `v8x16_shuffle-3`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0]), + ], +); + +// ./test/core/simd/simd_lane.wast:345 +assert_return( + () => invoke($0, `v8x16_shuffle-4`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:349 +assert_return( + () => invoke($0, `v8x16_shuffle-5`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:353 +assert_return( + () => invoke($0, `v8x16_shuffle-6`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ], +); + +// ./test/core/simd/simd_lane.wast:357 +assert_return( + () => invoke($0, `v8x16_shuffle-7`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0]), + ], +); + +// ./test/core/simd/simd_lane.wast:361 +assert_return( + () => invoke($0, `v8x16_shuffle-1`, [ + i8x16([0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [ + i8x16([0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73]), + ], +); + +// ./test/core/simd/simd_lane.wast:365 +assert_return( + () => invoke($0, `v8x16_shuffle-1`, [ + i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + ]), + [i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e])], +); + +// ./test/core/simd/simd_lane.wast:369 +assert_return( + () => invoke($0, `v8x16_shuffle-2`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i32x4([0xf3f2f1f0, 0xf7f6f5f4, 0xfbfaf9f8, 0xfffefdfc]), + ]), + [i32x4([0xf3f2f1f0, 0xf7f6f5f4, 0xfbfaf9f8, 0xfffefdfc])], +); + +// ./test/core/simd/simd_lane.wast:373 +assert_return( + () => invoke($0, `v8x16_shuffle-1`, [ + i32x4([0x10203, 0x4050607, 0x8090a0b, 0xc0d0e0f]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x10203, 0x4050607, 0x8090a0b, 0xc0d0e0f])], +); + +// ./test/core/simd/simd_lane.wast:377 +assert_return( + () => invoke($0, `v8x16_shuffle-1`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x80, + 0x3f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x80, + 0x7f, + 0x0, + 0x0, + 0x80, + 0xff, + ]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x3f800000, 0x7fc00000, 0x7f800000, 0xff800000])], +); + +// ./test/core/simd/simd_lane.wast:381 +assert_return( + () => invoke($0, `v8x16_shuffle-1`, [ + i32x4([0x10203, 0x4050607, 0x8090a0b, 0xc0d0e0f]), + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x80, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0x80, + 0x7f, + 0x0, + 0x0, + 0x80, + 0xff, + ]), + ]), + [i32x4([0x10203, 0x4050607, 0x8090a0b, 0xc0d0e0f])], +); + +// ./test/core/simd/simd_lane.wast:387 +assert_return( + () => invoke($0, `v8x16_swizzle`, [ + i32x4([0x499602d2, 0x12345678, 0x499602d2, 0x12345678]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [i32x4([0x499602d2, 0x12345678, 0x499602d2, 0x12345678])], +); + +// ./test/core/simd/simd_lane.wast:391 +assert_return( + () => invoke($0, `v8x16_shuffle-1`, [ + i64x2([0xab54a98ceb1f0ad2n, 0x1234567890abcdefn]), + i64x2([0xab54a98ceb1f0ad2n, 0x1234567890abcdefn]), + ]), + [i32x4([0xeb1f0ad2, 0xab54a98c, 0x90abcdef, 0x12345678])], +); + +// ./test/core/simd/simd_lane.wast:398 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane_s -1 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:399 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane_u -1 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:400 +assert_malformed( + () => instantiate(`(func (result i32) (i16x8.extract_lane_s -1 (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:401 +assert_malformed( + () => instantiate(`(func (result i32) (i16x8.extract_lane_u -1 (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:402 +assert_malformed( + () => instantiate(`(func (result i32) (i32x4.extract_lane -1 (v128.const i32x4 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:403 +assert_malformed( + () => instantiate(`(func (result f32) (f32x4.extract_lane -1 (v128.const f32x4 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:404 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.replace_lane -1 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:405 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.replace_lane -1 (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:406 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.replace_lane -1 (v128.const i32x4 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:407 +assert_malformed( + () => instantiate(`(func (result v128) (f32x4.replace_lane -1 (v128.const f32x4 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:408 +assert_malformed( + () => instantiate(`(func (result i64) (i64x2.extract_lane -1 (v128.const i64x2 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:409 +assert_malformed( + () => instantiate(`(func (result f64) (f64x2.extract_lane -1 (v128.const f64x2 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:410 +assert_malformed( + () => instantiate(`(func (result v128) (i64x2.replace_lane -1 (v128.const i64x2 0 0) (i64.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:411 +assert_malformed( + () => instantiate(`(func (result v128) (f64x2.replace_lane -1 (v128.const f64x2 0 0) (f64.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:415 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane_s 256 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:416 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane_u 256 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:417 +assert_malformed( + () => instantiate(`(func (result i32) (i16x8.extract_lane_s 256 (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:418 +assert_malformed( + () => instantiate(`(func (result i32) (i16x8.extract_lane_u 256 (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:419 +assert_malformed( + () => instantiate(`(func (result i32) (i32x4.extract_lane 256 (v128.const i32x4 0 0 0 0))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:420 +assert_malformed( + () => instantiate(`(func (result f32) (f32x4.extract_lane 256 (v128.const f32x4 0 0 0 0))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:421 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.replace_lane 256 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:422 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.replace_lane 256 (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:423 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.replace_lane 256 (v128.const i32x4 0 0 0 0) (i32.const 1))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:424 +assert_malformed( + () => instantiate(`(func (result v128) (f32x4.replace_lane 256 (v128.const f32x4 0 0 0 0) (i32.const 1))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:425 +assert_malformed( + () => instantiate(`(func (result i64) (i64x2.extract_lane 256 (v128.const i64x2 0 0))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:426 +assert_malformed( + () => instantiate(`(func (result f64) (f64x2.extract_lane 256 (v128.const f64x2 0 0))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:427 +assert_malformed( + () => instantiate(`(func (result v128) (i64x2.replace_lane 256 (v128.const i64x2 0 0) (i64.const 1))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:428 +assert_malformed( + () => instantiate(`(func (result v128) (f64x2.replace_lane 256 (v128.const f64x2 0 0) (f64.const 1))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:432 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.extract_lane_s 16 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:433 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.extract_lane_s 255 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:434 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.extract_lane_u 16 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:435 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.extract_lane_u 255 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:436 +assert_invalid( + () => instantiate(`(module (func (result i32) (i16x8.extract_lane_s 8 (v128.const i16x8 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:437 +assert_invalid( + () => instantiate(`(module (func (result i32) (i16x8.extract_lane_s 255 (v128.const i16x8 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:438 +assert_invalid( + () => instantiate(`(module (func (result i32) (i16x8.extract_lane_u 8 (v128.const i16x8 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:439 +assert_invalid( + () => instantiate(`(module (func (result i32) (i16x8.extract_lane_u 255 (v128.const i16x8 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:440 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32x4.extract_lane 4 (v128.const i32x4 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:441 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32x4.extract_lane 255 (v128.const i32x4 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:442 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32x4.extract_lane 4 (v128.const f32x4 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:443 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32x4.extract_lane 255 (v128.const f32x4 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:444 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.replace_lane 16 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:445 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.replace_lane 255 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:446 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.replace_lane 16 (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:447 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.replace_lane 255 (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:448 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.replace_lane 4 (v128.const i32x4 0 0 0 0) (i32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:449 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.replace_lane 255 (v128.const i32x4 0 0 0 0) (i32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:450 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.replace_lane 4 (v128.const f32x4 0 0 0 0) (f32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:451 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.replace_lane 255 (v128.const f32x4 0 0 0 0) (f32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:452 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64x2.extract_lane 2 (v128.const i64x2 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:453 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64x2.extract_lane 255 (v128.const i64x2 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:454 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64x2.extract_lane 2 (v128.const f64x2 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:455 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64x2.extract_lane 255 (v128.const f64x2 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:456 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.replace_lane 2 (v128.const i64x2 0 0) (i64.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:457 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.replace_lane 255 (v128.const i64x2 0 0) (i64.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:458 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.replace_lane 2 (v128.const f64x2 0 0) (f64.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:459 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.replace_lane 255 (v128.const f64x2 0 0) (f64.const 1.0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:463 +assert_invalid( + () => instantiate(`(module (func (result i32) (i16x8.extract_lane_s 8 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:464 +assert_invalid( + () => instantiate(`(module (func (result i32) (i16x8.extract_lane_u 8 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:465 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32x4.extract_lane 4 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:466 +assert_invalid( + () => instantiate(`(module (func (result i32) (f32x4.extract_lane 4 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:467 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.replace_lane 8 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:468 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.replace_lane 4 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:469 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.replace_lane 4 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (f32.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:470 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64x2.extract_lane 2 (v128.const i64x2 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:471 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64x2.extract_lane 2 (v128.const f64x2 0 0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:472 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.replace_lane 2 (v128.const i64x2 0 0) (i64.const 1))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:473 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.replace_lane 2 (v128.const f64x2 0 0) (f64.const 1.0))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:477 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.extract_lane_s 0 (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:478 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.extract_lane_u 0 (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:479 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.extract_lane_s 0 (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:480 +assert_invalid( + () => instantiate(`(module (func (result i32) (i8x16.extract_lane_u 0 (f64.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:481 +assert_invalid( + () => instantiate(`(module (func (result i32) (i32x4.extract_lane 0 (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:482 +assert_invalid( + () => instantiate(`(module (func (result f32) (f32x4.extract_lane 0 (f32.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:483 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.replace_lane 0 (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:484 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.replace_lane 0 (i64.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:485 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.replace_lane 0 (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:486 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.replace_lane 0 (f32.const 0.0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:487 +assert_invalid( + () => instantiate(`(module (func (result i64) (i64x2.extract_lane 0 (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:488 +assert_invalid( + () => instantiate(`(module (func (result f64) (f64x2.extract_lane 0 (f64.const 0.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:489 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.replace_lane 0 (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:490 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.replace_lane 0 (f32.const 0.0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:494 +assert_invalid( + () => instantiate(`(module (func (result v128) (i8x16.replace_lane 0 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (f32.const 1.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:495 +assert_invalid( + () => instantiate(`(module (func (result v128) (i16x8.replace_lane 0 (v128.const i16x8 0 0 0 0 0 0 0 0) (f64.const 1.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:496 +assert_invalid( + () => instantiate(`(module (func (result v128) (i32x4.replace_lane 0 (v128.const i32x4 0 0 0 0) (f32.const 1.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:497 +assert_invalid( + () => instantiate(`(module (func (result v128) (f32x4.replace_lane 0 (v128.const f32x4 0 0 0 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:499 +assert_invalid( + () => instantiate(`(module (func (result v128) (i64x2.replace_lane 0 (v128.const i64x2 0 0) (f64.const 1.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:500 +assert_invalid( + () => instantiate(`(module (func (result v128) (f64x2.replace_lane 0 (v128.const f64x2 0 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:503 +assert_invalid( + () => instantiate(`(module (func (result v128) + (i8x16.swizzle (i32.const 1) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:505 +assert_invalid( + () => instantiate(`(module (func (result v128) + (i8x16.swizzle (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (i32.const 2))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:507 +assert_invalid( + () => instantiate(`(module (func (result v128) + (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 (f32.const 3.0) + (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:510 +assert_invalid( + () => instantiate(`(module (func (result v128) + (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 + (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (f32.const 4.0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:515 +assert_malformed( + () => instantiate(`(func (param v128) (result v128) (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 (local.get 0) (local.get 0))) `), + `invalid lane length`, +); + +// ./test/core/simd/simd_lane.wast:518 +assert_malformed( + () => instantiate(`(func (param v128) (result v128) (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 (local.get 0) (local.get 0))) `), + `invalid lane length`, +); + +// ./test/core/simd/simd_lane.wast:521 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 -1 (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:525 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 256 (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:529 +assert_invalid( + () => instantiate(`(module (func (result v128) + (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 255 + (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) + (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_lane.wast:536 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane 0 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:537 +assert_malformed( + () => instantiate(`(func (result i32) (i16x8.extract_lane 0 (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:538 +assert_malformed( + () => instantiate(`(func (result i32) (i32x4.extract_lane_s 0 (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:539 +assert_malformed( + () => instantiate(`(func (result i32) (i32x4.extract_lane_u 0 (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:540 +assert_malformed( + () => instantiate(`(func (result i32) (i64x2.extract_lane_s 0 (v128.const i64x2 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:541 +assert_malformed( + () => instantiate(`(func (result i32) (i64x2.extract_lane_u 0 (v128.const i64x2 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:545 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle1 (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:549 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle2_imm 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15) (v128.const i8x16 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:555 +assert_malformed( + () => instantiate(`(func (result v128) (v8x16.swizzle (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:559 +assert_malformed( + () => instantiate(`(func (result v128) (v8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15) (v128.const i8x16 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_lane.wast:570 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (i8x16.extract_lane_s (local.get 0) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:571 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (i8x16.extract_lane_u (local.get 0) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:572 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (i16x8.extract_lane_s (local.get 0) (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:573 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (i16x8.extract_lane_u (local.get 0) (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:574 +assert_malformed( + () => instantiate(`(func (param i32) (result i32) (i32x4.extract_lane (local.get 0) (v128.const i32x4 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:575 +assert_malformed( + () => instantiate(`(func (param i32) (result f32) (f32x4.extract_lane (local.get 0) (v128.const f32x4 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:576 +assert_malformed( + () => instantiate(`(func (param i32) (result v128) (i8x16.replace_lane (local.get 0) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:577 +assert_malformed( + () => instantiate(`(func (param i32) (result v128) (i16x8.replace_lane (local.get 0) (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:578 +assert_malformed( + () => instantiate(`(func (param i32) (result v128) (i32x4.replace_lane (local.get 0) (v128.const i32x4 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:579 +assert_malformed( + () => instantiate(`(func (param i32) (result v128) (f32x4.replace_lane (local.get 0) (v128.const f32x4 0 0 0 0) (f32.const 1.0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:581 +assert_malformed( + () => instantiate(`(func (param i32) (result i64) (i64x2.extract_lane (local.get 0) (v128.const i64x2 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:582 +assert_malformed( + () => instantiate(`(func (param i32) (result f64) (f64x2.extract_lane (local.get 0) (v128.const f64x2 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:583 +assert_malformed( + () => instantiate(`(func (param i32) (result v128) (i64x2.replace_lane (local.get 0) (v128.const i64x2 0 0) (i64.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:584 +assert_malformed( + () => instantiate(`(func (param i32) (result v128) (f64x2.replace_lane (local.get 0) (v128.const f64x2 0 0) (f64.const 1.0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:588 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane_s 1.5 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:589 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane_u nan (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:590 +assert_malformed( + () => instantiate(`(func (result i32) (i16x8.extract_lane_s inf (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:591 +assert_malformed( + () => instantiate(`(func (result i32) (i16x8.extract_lane_u -inf (v128.const i16x8 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:592 +assert_malformed( + () => instantiate(`(func (result i32) (i32x4.extract_lane nan (v128.const i32x4 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:593 +assert_malformed( + () => instantiate(`(func (result f32) (f32x4.extract_lane nan (v128.const f32x4 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:594 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.replace_lane -2.5 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:595 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.replace_lane nan (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:596 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.replace_lane inf (v128.const i32x4 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:597 +assert_malformed( + () => instantiate(`(func (result v128) (f32x4.replace_lane -inf (v128.const f32x4 0 0 0 0) (f32.const 1.1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:600 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle (v128.const i8x16 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))) `), + `invalid lane length`, +); + +// ./test/core/simd/simd_lane.wast:604 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15.0) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:608 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle 0.5 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:612 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle -inf 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:616 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 inf) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:620 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.shuffle nan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15) (v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))) `), + `malformed lane index`, +); + +// ./test/core/simd/simd_lane.wast:628 +let $1 = instantiate(`(module + ;; as *.replace_lane's operand + (func (export "i8x16_extract_lane_s") (param v128 v128) (result v128) + (i8x16.replace_lane 0 (local.get 0) (i8x16.extract_lane_s 0 (local.get 1)))) + (func (export "i8x16_extract_lane_u") (param v128 v128) (result v128) + (i8x16.replace_lane 0 (local.get 0) (i8x16.extract_lane_u 0 (local.get 1)))) + (func (export "i16x8_extract_lane_s") (param v128 v128) (result v128) + (i16x8.replace_lane 0 (local.get 0) (i16x8.extract_lane_s 0 (local.get 1)))) + (func (export "i16x8_extract_lane_u") (param v128 v128) (result v128) + (i16x8.replace_lane 0 (local.get 0) (i16x8.extract_lane_u 0 (local.get 1)))) + (func (export "i32x4_extract_lane") (param v128 v128) (result v128) + (i32x4.replace_lane 0 (local.get 0) (i32x4.extract_lane 0 (local.get 1)))) + (func (export "f32x4_extract_lane") (param v128 v128) (result v128) + (i32x4.replace_lane 0 (local.get 0) (i32x4.extract_lane 0 (local.get 1)))) + (func (export "i64x2_extract_lane") (param v128 v128) (result v128) + (i64x2.replace_lane 0 (local.get 0) (i64x2.extract_lane 0 (local.get 1)))) + (func (export "f64x2_extract_lane") (param v128 v128) (result v128) + (f64x2.replace_lane 0 (local.get 0) (f64x2.extract_lane 0 (local.get 1)))) + + ;; as *.extract_lane's operand + (func (export "i8x16_replace_lane-s") (param v128 i32) (result i32) + (i8x16.extract_lane_s 15 (i8x16.replace_lane 15 (local.get 0) (local.get 1)))) + (func (export "i8x16_replace_lane-u") (param v128 i32) (result i32) + (i8x16.extract_lane_u 15 (i8x16.replace_lane 15 (local.get 0) (local.get 1)))) + (func (export "i16x8_replace_lane-s") (param v128 i32) (result i32) + (i16x8.extract_lane_s 7 (i16x8.replace_lane 7 (local.get 0) (local.get 1)))) + (func (export "i16x8_replace_lane-u") (param v128 i32) (result i32) + (i16x8.extract_lane_u 7 (i16x8.replace_lane 7 (local.get 0) (local.get 1)))) + (func (export "i32x4_replace_lane") (param v128 i32) (result i32) + (i32x4.extract_lane 3 (i32x4.replace_lane 3 (local.get 0) (local.get 1)))) + (func (export "f32x4_replace_lane") (param v128 f32) (result f32) + (f32x4.extract_lane 3 (f32x4.replace_lane 3 (local.get 0) (local.get 1)))) + (func (export "i64x2_replace_lane") (param v128 i64) (result i64) + (i64x2.extract_lane 1 (i64x2.replace_lane 1 (local.get 0) (local.get 1)))) + (func (export "f64x2_replace_lane") (param v128 f64) (result f64) + (f64x2.extract_lane 1 (f64x2.replace_lane 1 (local.get 0) (local.get 1)))) + + ;; i8x16.replace outputs as shuffle operand + (func (export "as-v8x16_swizzle-operand") (param v128 i32 v128) (result v128) + (i8x16.swizzle (i8x16.replace_lane 0 (local.get 0) (local.get 1)) (local.get 2))) + (func (export "as-v8x16_shuffle-operands") (param v128 i32 v128 i32) (result v128) + (i8x16.shuffle 16 1 18 3 20 5 22 7 24 9 26 11 28 13 30 15 + (i8x16.replace_lane 0 (local.get 0) (local.get 1)) + (i8x16.replace_lane 15 (local.get 2) (local.get 3)))) +)`); + +// ./test/core/simd/simd_lane.wast:674 +assert_return( + () => invoke($1, `i8x16_extract_lane_s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:675 +assert_return( + () => invoke($1, `i8x16_extract_lane_u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ]), + [ + i8x16([0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:676 +assert_return( + () => invoke($1, `i16x8_extract_lane_s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:677 +assert_return( + () => invoke($1, `i16x8_extract_lane_u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff]), + ]), + [i16x8([0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:678 +assert_return( + () => invoke($1, `i32x4_extract_lane`, [ + i32x4([0x0, 0x0, 0x0, 0x0]), + i32x4([0x10000, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [i32x4([0x10000, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:679 +assert_return( + () => invoke($1, `f32x4_extract_lane`, [ + f32x4([0, 0, 0, 0]), + bytes('v128', [ + 0x99, + 0x76, + 0x96, + 0x7e, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 100000000000000000000000000000000000000), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:680 +assert_return( + () => invoke($1, `i8x16_replace_lane-s`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 255, + ]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:681 +assert_return( + () => invoke($1, `i8x16_replace_lane-u`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 255, + ]), + [value("i32", 255)], +); + +// ./test/core/simd/simd_lane.wast:682 +assert_return( + () => invoke($1, `i16x8_replace_lane-s`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 65535, + ]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:683 +assert_return( + () => invoke($1, `i16x8_replace_lane-u`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 65535, + ]), + [value("i32", 65535)], +); + +// ./test/core/simd/simd_lane.wast:684 +assert_return( + () => invoke($1, `i32x4_replace_lane`, [i32x4([0x0, 0x0, 0x0, 0x0]), -1]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:685 +assert_return( + () => invoke($1, `f32x4_replace_lane`, [f32x4([0, 0, 0, 0]), value("f32", 1.25)]), + [value("f32", 1.25)], +); + +// ./test/core/simd/simd_lane.wast:687 +assert_return( + () => invoke($1, `i64x2_extract_lane`, [ + i64x2([0x0n, 0x0n]), + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [i64x2([0xffffffffffffffffn, 0x0n])], +); + +// ./test/core/simd/simd_lane.wast:688 +assert_return( + () => invoke($1, `f64x2_extract_lane`, [ + f64x2([0, 0]), + bytes('v128', [ + 0xa0, + 0xc8, + 0xeb, + 0x85, + 0xf3, + 0xcc, + 0xe1, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [ + new F64x2Pattern( + value("f64", 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:689 +assert_return(() => invoke($1, `i64x2_replace_lane`, [i64x2([0x0n, 0x0n]), -1n]), [value("i64", -1n)]); + +// ./test/core/simd/simd_lane.wast:690 +assert_return( + () => invoke($1, `f64x2_replace_lane`, [f64x2([0, 0]), value("f64", 2.5)]), + [value("f64", 2.5)], +); + +// ./test/core/simd/simd_lane.wast:692 +assert_return( + () => invoke($1, `as-v8x16_swizzle-operand`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + 255, + i8x16([0xff, 0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1]), + ]), + [ + i8x16([0x0, 0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1]), + ], +); + +// ./test/core/simd/simd_lane.wast:696 +assert_return( + () => invoke($1, `as-v8x16_shuffle-operands`, [ + i8x16([0x0, 0xff, 0x0, 0xff, 0xf, 0xff, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0x7f, 0xff, 0x0, 0xff]), + 1, + i8x16([0x55, 0x0, 0x55, 0x0, 0x55, 0x0, 0x55, 0x0, 0x55, 0x0, 0x55, 0x0, 0x55, 0x1, 0x55, 0xff]), + 0, + ]), + [ + i8x16([0x55, 0xff, 0x55, 0xff, 0x55, 0xff, 0x55, 0xff, 0x55, 0xff, 0x55, 0xff, 0x55, 0xff, 0x55, 0xff]), + ], +); + +// ./test/core/simd/simd_lane.wast:703 +let $2 = instantiate(`(module + ;; Constructing SIMD values + (func (export "as-i8x16_splat-operand") (param v128) (result v128) + (i8x16.splat (i8x16.extract_lane_s 0 (local.get 0)))) + (func (export "as-i16x8_splat-operand") (param v128) (result v128) + (i16x8.splat (i16x8.extract_lane_u 0 (local.get 0)))) + (func (export "as-i32x4_splat-operand") (param v128) (result v128) + (i32x4.splat (i32x4.extract_lane 0 (local.get 0)))) + (func (export "as-f32x4_splat-operand") (param v128) (result v128) + (f32x4.splat (f32x4.extract_lane 0 (local.get 0)))) + (func (export "as-i64x2_splat-operand") (param v128) (result v128) + (i64x2.splat (i64x2.extract_lane 0 (local.get 0)))) + (func (export "as-f64x2_splat-operand") (param v128) (result v128) + (f64x2.splat (f64x2.extract_lane 0 (local.get 0)))) + + ;; Integer arithmetic + (func (export "as-i8x16_add-operands") (param v128 i32 v128 i32) (result v128) + (i8x16.add (i8x16.replace_lane 0 (local.get 0) (local.get 1)) (i8x16.replace_lane 15 (local.get 2) (local.get 3)))) + (func (export "as-i16x8_add-operands") (param v128 i32 v128 i32) (result v128) + (i16x8.add (i16x8.replace_lane 0 (local.get 0) (local.get 1)) (i16x8.replace_lane 7 (local.get 2) (local.get 3)))) + (func (export "as-i32x4_add-operands") (param v128 i32 v128 i32) (result v128) + (i32x4.add (i32x4.replace_lane 0 (local.get 0) (local.get 1)) (i32x4.replace_lane 3 (local.get 2) (local.get 3)))) + (func (export "as-i64x2_add-operands") (param v128 i64 v128 i64) (result v128) + (i64x2.add (i64x2.replace_lane 0 (local.get 0) (local.get 1)) (i64x2.replace_lane 1 (local.get 2) (local.get 3)))) + + (func (export "swizzle-as-i8x16_add-operands") (param v128 v128 v128 v128) (result v128) + (i8x16.add (i8x16.swizzle (local.get 0) (local.get 1)) (i8x16.swizzle (local.get 2) (local.get 3)))) + (func (export "shuffle-as-i8x16_sub-operands") (param v128 v128 v128 v128) (result v128) + (i8x16.sub (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 (local.get 0) (local.get 1)) + (i8x16.shuffle 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 (local.get 2) (local.get 3)))) + + ;; Boolean horizontal reductions + (func (export "as-i8x16_any_true-operand") (param v128 i32) (result i32) + (v128.any_true (i8x16.replace_lane 0 (local.get 0) (local.get 1)))) + (func (export "as-i16x8_any_true-operand") (param v128 i32) (result i32) + (v128.any_true (i16x8.replace_lane 0 (local.get 0) (local.get 1)))) + (func (export "as-i32x4_any_true-operand1") (param v128 i32) (result i32) + (v128.any_true (i32x4.replace_lane 0 (local.get 0) (local.get 1)))) + (func (export "as-i32x4_any_true-operand2") (param v128 i64) (result i32) + (v128.any_true (i64x2.replace_lane 0 (local.get 0) (local.get 1)))) + + (func (export "swizzle-as-i8x16_all_true-operands") (param v128 v128) (result i32) + (i8x16.all_true (i8x16.swizzle (local.get 0) (local.get 1)))) + (func (export "shuffle-as-i8x16_any_true-operands") (param v128 v128) (result i32) + (v128.any_true (i8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 (local.get 0) (local.get 1)))) +)`); + +// ./test/core/simd/simd_lane.wast:750 +assert_return( + () => invoke($2, `as-i8x16_splat-operand`, [ + i8x16([0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_lane.wast:751 +assert_return( + () => invoke($2, `as-i16x8_splat-operand`, [ + i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_lane.wast:752 +assert_return( + () => invoke($2, `as-i32x4_splat-operand`, [i32x4([0x10000, 0x0, 0x0, 0x0])]), + [i32x4([0x10000, 0x10000, 0x10000, 0x10000])], +); + +// ./test/core/simd/simd_lane.wast:753 +assert_return( + () => invoke($2, `as-f32x4_splat-operand`, [ + bytes('v128', [ + 0xc3, + 0xf5, + 0x48, + 0x40, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + 0x0, + 0x0, + 0xc0, + 0x7f, + ]), + ]), + [ + new F32x4Pattern( + value("f32", 3.14), + value("f32", 3.14), + value("f32", 3.14), + value("f32", 3.14), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:754 +assert_return( + () => invoke($2, `as-i64x2_splat-operand`, [i64x2([0xffffffffffffffffn, 0x0n])]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_lane.wast:755 +assert_return( + () => invoke($2, `as-f64x2_splat-operand`, [ + bytes('v128', [ + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf0, + 0x7f, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0xf8, + 0x7f, + ]), + ]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_lane.wast:756 +assert_return( + () => invoke($2, `as-i8x16_add-operands`, [ + i8x16([0xff, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0x10]), + 1, + i8x16([0x10, 0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0xff]), + 1, + ]), + [ + i8x16([0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11]), + ], +); + +// ./test/core/simd/simd_lane.wast:760 +assert_return( + () => invoke($2, `as-i16x8_add-operands`, [ + i16x8([0xffff, 0x4, 0x9, 0x10, 0x19, 0x24, 0x31, 0x40]), + 1, + i16x8([0x40, 0x31, 0x24, 0x19, 0x10, 0x9, 0x4, 0xffff]), + 1, + ]), + [i16x8([0x41, 0x35, 0x2d, 0x29, 0x29, 0x2d, 0x35, 0x41])], +); + +// ./test/core/simd/simd_lane.wast:764 +assert_return( + () => invoke($2, `as-i32x4_add-operands`, [ + i32x4([0xffffffff, 0x8, 0x1b, 0x40]), + 1, + i32x4([0x40, 0x1b, 0x8, 0xffffffff]), + 1, + ]), + [i32x4([0x41, 0x23, 0x23, 0x41])], +); + +// ./test/core/simd/simd_lane.wast:766 +assert_return( + () => invoke($2, `as-i64x2_add-operands`, [ + i64x2([0xffffffffffffffffn, 0x8n]), + 1n, + i64x2([0x40n, 0x1bn]), + 1n, + ]), + [i64x2([0x41n, 0x9n])], +); + +// ./test/core/simd/simd_lane.wast:769 +assert_return( + () => invoke($2, `swizzle-as-i8x16_add-operands`, [ + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_lane.wast:775 +assert_return( + () => invoke($2, `shuffle-as-i8x16_sub-operands`, [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + i8x16([0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1, 0x0]), + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + i8x16([0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0xf1, 0xf3, 0xf5, 0xf7, 0xf9, 0xfb, 0xfd, 0xff, 0x1, 0x3, 0x5, 0x7, 0x9, 0xb, 0xd, 0xf]), + ], +); + +// ./test/core/simd/simd_lane.wast:782 +assert_return( + () => invoke($2, `as-i8x16_any_true-operand`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 1, + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_lane.wast:783 +assert_return( + () => invoke($2, `as-i16x8_any_true-operand`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 1, + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_lane.wast:784 +assert_return( + () => invoke($2, `as-i32x4_any_true-operand1`, [i32x4([0x1, 0x0, 0x0, 0x0]), 0]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_lane.wast:785 +assert_return( + () => invoke($2, `as-i32x4_any_true-operand2`, [i64x2([0x1n, 0x0n]), 0n]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_lane.wast:787 +assert_return( + () => invoke($2, `swizzle-as-i8x16_all_true-operands`, [ + i8x16([0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0x10]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_lane.wast:790 +assert_return( + () => invoke($2, `swizzle-as-i8x16_all_true-operands`, [ + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0x10]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_lane.wast:793 +assert_return( + () => invoke($2, `shuffle-as-i8x16_any_true-operands`, [ + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ]), + [value("i32", 1)], +); + +// ./test/core/simd/simd_lane.wast:799 +let $3 = instantiate(`(module + (memory 1) + (func (export "as-v128_store-operand-1") (param v128 i32) (result v128) + (v128.store (i32.const 0) (i8x16.replace_lane 0 (local.get 0) (local.get 1))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-2") (param v128 i32) (result v128) + (v128.store (i32.const 0) (i16x8.replace_lane 0 (local.get 0) (local.get 1))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-3") (param v128 i32) (result v128) + (v128.store (i32.const 0) (i32x4.replace_lane 0 (local.get 0) (local.get 1))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-4") (param v128 f32) (result v128) + (v128.store (i32.const 0) (f32x4.replace_lane 0 (local.get 0) (local.get 1))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-5") (param v128 i64) (result v128) + (v128.store (i32.const 0) (i64x2.replace_lane 0 (local.get 0) (local.get 1))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-6") (param v128 f64) (result v128) + (v128.store (i32.const 0) (f64x2.replace_lane 0 (local.get 0) (local.get 1))) + (v128.load (i32.const 0))) +)`); + +// ./test/core/simd/simd_lane.wast:821 +assert_return( + () => invoke($3, `as-v128_store-operand-1`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 1, + ]), + [ + i8x16([0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_lane.wast:822 +assert_return( + () => invoke($3, `as-v128_store-operand-2`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 256, + ]), + [i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:823 +assert_return( + () => invoke($3, `as-v128_store-operand-3`, [i32x4([0x0, 0x0, 0x0, 0x0]), -1]), + [i32x4([0xffffffff, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:824 +assert_return( + () => invoke($3, `as-v128_store-operand-4`, [f32x4([0, 0, 0, 0]), value("f32", 3.14)]), + [ + new F32x4Pattern( + value("f32", 3.14), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:825 +assert_return( + () => invoke($3, `as-v128_store-operand-5`, [i64x2([0x0n, 0x0n]), -1n]), + [i64x2([0xffffffffffffffffn, 0x0n])], +); + +// ./test/core/simd/simd_lane.wast:826 +assert_return( + () => invoke($3, `as-v128_store-operand-6`, [f64x2([0, 0]), value("f64", 3.14)]), + [new F64x2Pattern(value("f64", 3.14), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:830 +let $4 = instantiate(`(module + (global $$g (mut v128) (v128.const f32x4 0.0 0.0 0.0 0.0)) + (global $$h (mut v128) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + (func (export "as-if-condition-value") (param v128) (result i32) + (if (result i32) (i8x16.extract_lane_s 0 (local.get 0)) (then (i32.const 0xff)) (else (i32.const 0)))) + (func (export "as-return-value-1") (param v128 i32) (result v128) + (return (i16x8.replace_lane 0 (local.get 0) (local.get 1)))) + (func (export "as-local_set-value") (param v128) (result i32) (local i32) + (local.set 1 (i32x4.extract_lane 0 (local.get 0))) + (return (local.get 1))) + (func (export "as-global_set-value-1") (param v128 f32) (result v128) + (global.set $$g (f32x4.replace_lane 0 (local.get 0) (local.get 1))) + (return (global.get $$g))) + + (func (export "as-return-value-2") (param v128 v128) (result v128) + (return (i8x16.swizzle (local.get 0) (local.get 1)))) + (func (export "as-global_set-value-2") (param v128 v128) (result v128) + (global.set $$h (i8x16.shuffle 0 1 2 3 4 5 6 7 24 25 26 27 28 29 30 31 (local.get 0) (local.get 1))) + (return (global.get $$h))) + + (func (export "as-local_set-value-1") (param v128) (result i64) (local i64) + (local.set 1 (i64x2.extract_lane 0 (local.get 0))) + (return (local.get 1))) + (func (export "as-global_set-value-3") (param v128 f64) (result v128) + (global.set $$g (f64x2.replace_lane 0 (local.get 0) (local.get 1))) + (return (global.get $$g))) +)`); + +// ./test/core/simd/simd_lane.wast:858 +assert_return( + () => invoke($4, `as-if-condition-value`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i32", 0)], +); + +// ./test/core/simd/simd_lane.wast:859 +assert_return( + () => invoke($4, `as-return-value-1`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + 1, + ]), + [i16x8([0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_lane.wast:860 +assert_return( + () => invoke($4, `as-local_set-value`, [ + i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff]), + ]), + [value("i32", -1)], +); + +// ./test/core/simd/simd_lane.wast:861 +assert_return( + () => invoke($4, `as-global_set-value-1`, [f32x4([0, 0, 0, 0]), value("f32", 3.14)]), + [ + new F32x4Pattern( + value("f32", 3.14), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_lane.wast:863 +assert_return( + () => invoke($4, `as-return-value-2`, [ + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + i8x16([0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1, 0x0]), + ]), + [ + i8x16([0xff, 0xfe, 0xfd, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7, 0xf6, 0xf5, 0xf4, 0xf3, 0xf2, 0xf1, 0xf0]), + ], +); + +// ./test/core/simd/simd_lane.wast:867 +assert_return( + () => invoke($4, `as-global_set-value-2`, [ + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff]), + i8x16([0x10, 0xf, 0xe, 0xd, 0xc, 0xb, 0xa, 0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1]), + ]), + [ + i8x16([0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x2, 0x1]), + ], +); + +// ./test/core/simd/simd_lane.wast:872 +assert_return( + () => invoke($4, `as-local_set-value-1`, [ + i64x2([0xffffffffffffffffn, 0xffffffffffffffffn]), + ]), + [value("i64", -1n)], +); + +// ./test/core/simd/simd_lane.wast:873 +assert_return( + () => invoke($4, `as-global_set-value-3`, [f64x2([0, 0]), value("f64", 3.14)]), + [new F64x2Pattern(value("f64", 3.14), value("f64", 0))], +); + +// ./test/core/simd/simd_lane.wast:877 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane_u +0x0f (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:878 +assert_malformed( + () => instantiate(`(func (result f32) (f32x4.extract_lane +03 (v128.const f32x4 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:879 +assert_malformed( + () => instantiate(`(func (result i64) (i64x2.extract_lane +1 (v128.const i64x2 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:880 +assert_malformed( + () => instantiate(`(func (result v128) (i8x16.replace_lane +015 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:881 +assert_malformed( + () => instantiate(`(func (result v128) (i16x8.replace_lane +0x7 (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:882 +assert_malformed( + () => instantiate(`(func (result v128) (i32x4.replace_lane +3 (v128.const i32x4 0 0 0 0) (i32.const 1))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:883 +assert_malformed( + () => instantiate(`(func (result v128) (f64x2.replace_lane +0x01 (v128.const f64x2 0 0) (f64.const 1.0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:887 +let $5 = instantiate(`(module (func (result i32) (i8x16.extract_lane_s 0x0f (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))))`); + +// ./test/core/simd/simd_lane.wast:888 +let $6 = instantiate(`(module (func (result i32) (i16x8.extract_lane_s 0x07 (v128.const i16x8 0 0 0 0 0 0 0 0))))`); + +// ./test/core/simd/simd_lane.wast:889 +let $7 = instantiate(`(module (func (result i32) (i16x8.extract_lane_u 0x0_7 (v128.const i16x8 0 0 0 0 0 0 0 0))))`); + +// ./test/core/simd/simd_lane.wast:890 +let $8 = instantiate(`(module (func (result i32) (i32x4.extract_lane 03 (v128.const i32x4 0 0 0 0))))`); + +// ./test/core/simd/simd_lane.wast:891 +let $9 = instantiate(`(module (func (result f64) (f64x2.extract_lane 0x1 (v128.const f64x2 0 0))))`); + +// ./test/core/simd/simd_lane.wast:892 +let $10 = instantiate(`(module (func (result v128) (f32x4.replace_lane 0x3 (v128.const f32x4 0 0 0 0) (f32.const 1.0))))`); + +// ./test/core/simd/simd_lane.wast:893 +let $11 = instantiate(`(module (func (result v128) (i64x2.replace_lane 01 (v128.const i64x2 0 0) (i64.const 1))))`); + +// ./test/core/simd/simd_lane.wast:897 +assert_malformed( + () => instantiate(`(func (result i32) (i8x16.extract_lane_s 1.0 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:901 +assert_malformed( + () => instantiate(`(func $$i8x16.extract_lane_s-1st-arg-empty (result i32) (i8x16.extract_lane_s (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:909 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.extract_lane_s-2nd-arg-empty (result i32) + (i8x16.extract_lane_s 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:917 +assert_malformed( + () => instantiate(`(func $$i8x16.extract_lane_s-arg-empty (result i32) (i8x16.extract_lane_s) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:925 +assert_malformed( + () => instantiate(`(func $$i16x8.extract_lane_u-1st-arg-empty (result i32) (i16x8.extract_lane_u (v128.const i16x8 0 0 0 0 0 0 0 0)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:933 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.extract_lane_u-2nd-arg-empty (result i32) + (i16x8.extract_lane_u 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:941 +assert_malformed( + () => instantiate(`(func $$i16x8.extract_lane_u-arg-empty (result i32) (i16x8.extract_lane_u) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:949 +assert_malformed( + () => instantiate(`(func $$i32x4.extract_lane-1st-arg-empty (result i32) (i32x4.extract_lane (v128.const i32x4 0 0 0 0)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:957 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.extract_lane-2nd-arg-empty (result i32) + (i32x4.extract_lane 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:965 +assert_malformed( + () => instantiate(`(func $$i32x4.extract_lane-arg-empty (result i32) (i32x4.extract_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:973 +assert_malformed( + () => instantiate(`(func $$i64x2.extract_lane-1st-arg-empty (result i64) (i64x2.extract_lane (v128.const i64x2 0 0)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:981 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.extract_lane-2nd-arg-empty (result i64) + (i64x2.extract_lane 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:989 +assert_malformed( + () => instantiate(`(func $$i64x2.extract_lane-arg-empty (result i64) (i64x2.extract_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:997 +assert_malformed( + () => instantiate(`(func $$f32x4.extract_lane-1st-arg-empty (result f32) (f32x4.extract_lane (v128.const f32x4 0 0 0 0)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1005 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.extract_lane-2nd-arg-empty (result f32) + (f32x4.extract_lane 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1013 +assert_malformed( + () => instantiate(`(func $$f32x4.extract_lane-arg-empty (result f32) (f32x4.extract_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1021 +assert_malformed( + () => instantiate(`(func $$f64x2.extract_lane-1st-arg-empty (result f64) (f64x2.extract_lane (v128.const f64x2 0 0)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1029 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.extract_lane-2nd-arg-empty (result f64) + (f64x2.extract_lane 0) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1037 +assert_malformed( + () => instantiate(`(func $$f64x2.extract_lane-arg-empty (result f64) (f64x2.extract_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1045 +assert_malformed( + () => instantiate(`(func $$i8x16.replace_lane-1st-arg-empty (result v128) (i8x16.replace_lane (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1053 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.replace_lane-2nd-arg-empty (result v128) + (i8x16.replace_lane 0 (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1061 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.replace_lane-3rd-arg-empty (result v128) + (i8x16.replace_lane 0 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1069 +assert_malformed( + () => instantiate(`(func $$i8x16.replace_lane-arg-empty (result v128) (i8x16.replace_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1077 +assert_malformed( + () => instantiate(`(func $$i16x8.replace_lane-1st-arg-empty (result v128) (i16x8.replace_lane (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1085 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.replace_lane-2nd-arg-empty (result v128) + (i16x8.replace_lane 0 (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1093 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.replace_lane-3rd-arg-empty (result v128) + (i16x8.replace_lane 0 (v128.const i16x8 0 0 0 0 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1101 +assert_malformed( + () => instantiate(`(func $$i16x8.replace_lane-arg-empty (result v128) (i16x8.replace_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1109 +assert_malformed( + () => instantiate(`(func $$i32x4.replace_lane-1st-arg-empty (result v128) (i32x4.replace_lane (v128.const i32x4 0 0 0 0) (i32.const 1)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1117 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.replace_lane-2nd-arg-empty (result v128) + (i32x4.replace_lane 0 (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1125 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.replace_lane-3rd-arg-empty (result v128) + (i32x4.replace_lane 0 (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1133 +assert_malformed( + () => instantiate(`(func $$i32x4.replace_lane-arg-empty (result v128) (i32x4.replace_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1141 +assert_malformed( + () => instantiate(`(func $$f32x4.replace_lane-1st-arg-empty (result v128) (f32x4.replace_lane (v128.const f32x4 0 0 0 0) (f32.const 1.0)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1149 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.replace_lane-2nd-arg-empty (result v128) + (f32x4.replace_lane 0 (f32.const 1.0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1157 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.replace_lane-3rd-arg-empty (result v128) + (f32x4.replace_lane 0 (v128.const f32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1165 +assert_malformed( + () => instantiate(`(func $$f32x4.replace_lane-arg-empty (result v128) (f32x4.replace_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1173 +assert_malformed( + () => instantiate(`(func $$i64x2.replace_lane-1st-arg-empty (result v128) (i64x2.replace_lane (v128.const i64x2 0 0) (i64.const 1)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1181 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.replace_lane-2nd-arg-empty (result v128) + (i64x2.replace_lane 0 (i64.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1189 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.replace_lane-3rd-arg-empty (result v128) + (i64x2.replace_lane 0 (v128.const i64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1197 +assert_malformed( + () => instantiate(`(func $$i64x2.replace_lane-arg-empty (result v128) (i64x2.replace_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1205 +assert_malformed( + () => instantiate(`(func $$f64x2.replace_lane-1st-arg-empty (result v128) (f64x2.replace_lane (v128.const f64x2 0 0) (f64.const 1.0)) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1213 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.replace_lane-2nd-arg-empty (result v128) + (f64x2.replace_lane 0 (f64.const 1.0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1221 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.replace_lane-3rd-arg-empty (result v128) + (f64x2.replace_lane 0 (v128.const f64x2 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1229 +assert_malformed( + () => instantiate(`(func $$f64x2.replace_lane-arg-empty (result v128) (f64x2.replace_lane) ) `), + `unexpected token`, +); + +// ./test/core/simd/simd_lane.wast:1237 +assert_malformed( + () => instantiate(`(func $$i8x16.shuffle-1st-arg-empty (result v128) (i8x16.shuffle (v128.const i8x16 0 1 2 3 5 6 6 7 8 9 10 11 12 13 14 15) (v128.const i8x16 1 2 3 5 6 6 7 8 9 10 11 12 13 14 15 16) ) ) `), + `invalid lane length`, +); + +// ./test/core/simd/simd_lane.wast:1248 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.shuffle-2nd-arg-empty (result v128) + (i8x16.shuffle 0 1 2 3 5 6 6 7 8 9 10 11 12 13 14 15 + (v128.const i8x16 1 2 3 5 6 6 7 8 9 10 11 12 13 14 15 16) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_lane.wast:1258 +assert_malformed( + () => instantiate(`(func $$i8x16.shuffle-arg-empty (result v128) (i8x16.shuffle) ) `), + `invalid lane length`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_load.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_load.wast.js new file mode 100644 index 0000000000..e609e1fe58 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_load.wast.js @@ -0,0 +1,295 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load.wast + +// ./test/core/simd/simd_load.wast:3 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "v128.load") (result v128) + (v128.load (i32.const 0)) + ) +)`); + +// ./test/core/simd/simd_load.wast:11 +assert_return( + () => invoke($0, `v128.load`, []), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_load.wast:12 +assert_return( + () => invoke($0, `v128.load`, []), + [i16x8([0x100, 0x302, 0x504, 0x706, 0x908, 0xb0a, 0xd0c, 0xf0e])], +); + +// ./test/core/simd/simd_load.wast:13 +assert_return(() => invoke($0, `v128.load`, []), [i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c])]); + +// ./test/core/simd/simd_load.wast:18 +let $1 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "as-i8x16_extract_lane_s-value/0") (result i32) + (i8x16.extract_lane_s 0 (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:24 +assert_return(() => invoke($1, `as-i8x16_extract_lane_s-value/0`, []), [value("i32", 0)]); + +// ./test/core/simd/simd_load.wast:26 +let $2 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "as-i8x16.eq-operand") (result v128) + (i8x16.eq (v128.load offset=0 (i32.const 0)) (v128.load offset=16 (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:32 +assert_return(() => invoke($2, `as-i8x16.eq-operand`, []), [i32x4([0xffffffff, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load.wast:34 +let $3 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "as-v128.not-operand") (result v128) + (v128.not (v128.load (i32.const 0))) + ) + (func (export "as-i8x16.all_true-operand") (result i32) + (i8x16.all_true (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:43 +assert_return( + () => invoke($3, `as-v128.not-operand`, []), + [i32x4([0xfcfdfeff, 0xf8f9fafb, 0xf4f5f6f7, 0xf0f1f2f3])], +); + +// ./test/core/simd/simd_load.wast:44 +assert_return(() => invoke($3, `as-i8x16.all_true-operand`, []), [value("i32", 0)]); + +// ./test/core/simd/simd_load.wast:46 +let $4 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA") + (data (offset (i32.const 16)) "\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB\\BB") + (data (offset (i32.const 32)) "\\F0\\F0\\F0\\F0\\FF\\FF\\FF\\FF\\00\\00\\00\\00\\FF\\00\\FF\\00") + (func (export "as-v128.bitselect-operand") (result v128) + (v128.bitselect (v128.load (i32.const 0)) (v128.load (i32.const 16)) (v128.load (i32.const 32))) + ) +)`); + +// ./test/core/simd/simd_load.wast:54 +assert_return( + () => invoke($4, `as-v128.bitselect-operand`, []), + [i32x4([0xabababab, 0xaaaaaaaa, 0xbbbbbbbb, 0xbbaabbaa])], +); + +// ./test/core/simd/simd_load.wast:56 +let $5 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA") + (func (export "as-i8x16.shl-operand") (result v128) + (i8x16.shl (v128.load (i32.const 0)) (i32.const 1)) + ) +)`); + +// ./test/core/simd/simd_load.wast:62 +assert_return( + () => invoke($5, `as-i8x16.shl-operand`, []), + [i32x4([0x54545454, 0x54545454, 0x54545454, 0x54545454])], +); + +// ./test/core/simd/simd_load.wast:64 +let $6 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00") + (data (offset (i32.const 16)) "\\03\\00\\00\\00\\03\\00\\00\\00\\03\\00\\00\\00\\03\\00\\00\\00") + (func (export "as-add/sub-operand") (result v128) + ;; 2 2 2 2 + 3 3 3 3 = 5 5 5 5 + ;; 5 5 5 5 - 3 3 3 3 = 2 2 2 2 + (i8x16.sub + (i8x16.add (v128.load (i32.const 0)) (v128.load (i32.const 16))) + (v128.load (i32.const 16)) + ) + ) +)`); + +// ./test/core/simd/simd_load.wast:76 +assert_return(() => invoke($6, `as-add/sub-operand`, []), [i32x4([0x2, 0x2, 0x2, 0x2])]); + +// ./test/core/simd/simd_load.wast:78 +let $7 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\00\\00\\00\\43\\00\\00\\80\\3f\\66\\66\\e6\\3f\\00\\00\\80\\bf") ;; 128 1.0 1.8 -1 + (data (offset (i32.const 16)) "\\00\\00\\00\\40\\00\\00\\00\\40\\00\\00\\00\\40\\00\\00\\00\\40") ;; 2.0 2.0 2.0 2.0 + (func (export "as-f32x4.mul-operand") (result v128) + (f32x4.mul (v128.load (i32.const 0)) (v128.load (i32.const 16))) + ) +)`); + +// ./test/core/simd/simd_load.wast:85 +assert_return( + () => invoke($7, `as-f32x4.mul-operand`, []), + [ + new F32x4Pattern( + value("f32", 256), + value("f32", 2), + value("f32", 3.6), + value("f32", -2), + ), + ], +); + +// ./test/core/simd/simd_load.wast:87 +let $8 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff\\ff") ;; 1111 ... + (func (export "as-f32x4.abs-operand") (result v128) + (f32x4.abs (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:93 +assert_return( + () => invoke($8, `as-f32x4.abs-operand`, []), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_load.wast:95 +let $9 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA\\AA") + (data (offset (i32.const 16)) "\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00") + (func (export "as-f32x4.min-operand") (result v128) + (f32x4.min (v128.load (i32.const 0)) (v128.load offset=16 (i32.const 1))) + ) +)`); + +// ./test/core/simd/simd_load.wast:102 +assert_return( + () => invoke($9, `as-f32x4.min-operand`, []), + [i32x4([0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa])], +); + +// ./test/core/simd/simd_load.wast:104 +let $10 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\00\\00\\00\\43\\00\\00\\80\\3f\\66\\66\\e6\\3f\\00\\00\\80\\bf") ;; 128 1.0 1.8 -1 + (func (export "as-i32x4.trunc_sat_f32x4_s-operand") (result v128) + (i32x4.trunc_sat_f32x4_s (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:110 +assert_return( + () => invoke($10, `as-i32x4.trunc_sat_f32x4_s-operand`, []), + [i32x4([0x80, 0x1, 0x1, 0xffffffff])], +); + +// ./test/core/simd/simd_load.wast:112 +let $11 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00\\02\\00\\00\\00") + (func (export "as-f32x4.convert_i32x4_u-operand") (result v128) + (f32x4.convert_i32x4_u (v128.load (i32.const 0))) + ) +)`); + +// ./test/core/simd/simd_load.wast:118 +assert_return( + () => invoke($11, `as-f32x4.convert_i32x4_u-operand`, []), + [ + new F32x4Pattern( + value("f32", 2), + value("f32", 2), + value("f32", 2), + value("f32", 2), + ), + ], +); + +// ./test/core/simd/simd_load.wast:120 +let $12 = instantiate(`(module (memory 1) + (data (offset (i32.const 0)) "\\64\\65\\66\\67\\68\\69\\6a\\6b\\6c\\6d\\6e\\6f\\70\\71\\72\\73") ;; 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 + (data (offset (i32.const 16)) "\\0f\\0e\\0d\\0c\\0b\\0a\\09\\08\\07\\06\\05\\04\\03\\02\\01\\00") ;; 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 + (func (export "as-i8x16.swizzle-operand") (result v128) + (i8x16.swizzle (v128.load (i32.const 0)) (v128.load offset=15 (i32.const 1))) + ) +)`); + +// ./test/core/simd/simd_load.wast:127 +assert_return( + () => invoke($12, `as-i8x16.swizzle-operand`, []), + [ + i8x16([0x73, 0x72, 0x71, 0x70, 0x6f, 0x6e, 0x6d, 0x6c, 0x6b, 0x6a, 0x69, 0x68, 0x67, 0x66, 0x65, 0x64]), + ], +); + +// ./test/core/simd/simd_load.wast:129 +let $13 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0a\\0b\\0c\\0d\\0e\\0f\\00\\01\\02\\03") + (func (export "as-br-value") (result v128) + (block (result v128) (br 0 (v128.load (i32.const 0)))) + ) +)`); + +// ./test/core/simd/simd_load.wast:135 +assert_return(() => invoke($13, `as-br-value`, []), [i32x4([0x3020100, 0x7060504, 0xb0a0908, 0xf0e0d0c])]); + +// ./test/core/simd/simd_load.wast:140 +assert_malformed( + () => instantiate(`(memory 1) (func (local v128) (drop (v128.load8 (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load.wast:147 +assert_malformed( + () => instantiate(`(memory 1) (func (local v128) (drop (v128.load16 (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load.wast:154 +assert_malformed( + () => instantiate(`(memory 1) (func (local v128) (drop (v128.load32 (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load.wast:165 +assert_invalid( + () => instantiate(`(module (memory 1) (func (local v128) (drop (v128.load (f32.const 0)))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load.wast:169 +assert_invalid( + () => instantiate(`(module (memory 1) (func (local v128) (block (br_if 0 (v128.load (i32.const 0))))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load.wast:173 +assert_invalid( + () => instantiate(`(module (memory 1) (func (local v128) (v128.load (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load.wast:181 +assert_invalid( + () => instantiate(`(module (memory 1) (func (drop (v128.load (local.get 2)))))`), + `unknown local 2`, +); + +// ./test/core/simd/simd_load.wast:185 +assert_invalid( + () => instantiate(`(module (memory 1) (func (drop (v128.load))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_load16_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_load16_lane.wast.js new file mode 100644 index 0000000000..7fe67adb0e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_load16_lane.wast.js @@ -0,0 +1,424 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load16_lane.wast + +// ./test/core/simd/simd_load16_lane.wast:4 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F") + (func (export "v128.load16_lane_0") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_3") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane 3 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_4") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane 4 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_5") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane 5 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_6") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane 6 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_7") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane 7 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_0_offset_0") + (param $$x v128) (result v128) + (v128.load16_lane offset=0 0 (i32.const 0) (local.get $$x))) + (func (export "v128.load16_lane_1_offset_1") + (param $$x v128) (result v128) + (v128.load16_lane offset=1 1 (i32.const 0) (local.get $$x))) + (func (export "v128.load16_lane_2_offset_2") + (param $$x v128) (result v128) + (v128.load16_lane offset=2 2 (i32.const 0) (local.get $$x))) + (func (export "v128.load16_lane_3_offset_3") + (param $$x v128) (result v128) + (v128.load16_lane offset=3 3 (i32.const 0) (local.get $$x))) + (func (export "v128.load16_lane_4_offset_4") + (param $$x v128) (result v128) + (v128.load16_lane offset=4 4 (i32.const 0) (local.get $$x))) + (func (export "v128.load16_lane_5_offset_5") + (param $$x v128) (result v128) + (v128.load16_lane offset=5 5 (i32.const 0) (local.get $$x))) + (func (export "v128.load16_lane_6_offset_6") + (param $$x v128) (result v128) + (v128.load16_lane offset=6 6 (i32.const 0) (local.get $$x))) + (func (export "v128.load16_lane_7_offset_7") + (param $$x v128) (result v128) + (v128.load16_lane offset=7 7 (i32.const 0) (local.get $$x))) + (func (export "v128.load16_lane_0_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=1 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_0_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=2 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_1_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=1 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_1_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=2 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_2_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=1 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_2_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=2 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_3_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=1 3 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_3_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=2 3 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_4_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=1 4 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_4_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=2 4 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_5_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=1 5 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_5_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=2 5 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_6_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=1 6 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_6_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=2 6 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_7_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=1 7 (local.get $$address) (local.get $$x))) + (func (export "v128.load16_lane_7_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load16_lane align=2 7 (local.get $$address) (local.get $$x))) +)`); + +// ./test/core/simd/simd_load16_lane.wast:105 +assert_return( + () => invoke($0, `v128.load16_lane_0`, [ + 0, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:108 +assert_return( + () => invoke($0, `v128.load16_lane_1`, [ + 1, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x201, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:111 +assert_return( + () => invoke($0, `v128.load16_lane_2`, [ + 2, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x302, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:114 +assert_return( + () => invoke($0, `v128.load16_lane_3`, [ + 3, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x403, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:117 +assert_return( + () => invoke($0, `v128.load16_lane_4`, [ + 4, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x504, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:120 +assert_return( + () => invoke($0, `v128.load16_lane_5`, [ + 5, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x605, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:123 +assert_return( + () => invoke($0, `v128.load16_lane_6`, [ + 6, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x706, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:126 +assert_return( + () => invoke($0, `v128.load16_lane_7`, [ + 7, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x807])], +); + +// ./test/core/simd/simd_load16_lane.wast:129 +assert_return( + () => invoke($0, `v128.load16_lane_0_offset_0`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:131 +assert_return( + () => invoke($0, `v128.load16_lane_1_offset_1`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x201, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:133 +assert_return( + () => invoke($0, `v128.load16_lane_2_offset_2`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x302, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:135 +assert_return( + () => invoke($0, `v128.load16_lane_3_offset_3`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x403, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:137 +assert_return( + () => invoke($0, `v128.load16_lane_4_offset_4`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x504, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:139 +assert_return( + () => invoke($0, `v128.load16_lane_5_offset_5`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x605, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:141 +assert_return( + () => invoke($0, `v128.load16_lane_6_offset_6`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x706, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:143 +assert_return( + () => invoke($0, `v128.load16_lane_7_offset_7`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x807])], +); + +// ./test/core/simd/simd_load16_lane.wast:145 +assert_return( + () => invoke($0, `v128.load16_lane_0_align_1`, [ + 0, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:148 +assert_return( + () => invoke($0, `v128.load16_lane_0_align_2`, [ + 0, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:151 +assert_return( + () => invoke($0, `v128.load16_lane_1_align_1`, [ + 1, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x201, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:154 +assert_return( + () => invoke($0, `v128.load16_lane_1_align_2`, [ + 1, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x201, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:157 +assert_return( + () => invoke($0, `v128.load16_lane_2_align_1`, [ + 2, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x302, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:160 +assert_return( + () => invoke($0, `v128.load16_lane_2_align_2`, [ + 2, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x302, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:163 +assert_return( + () => invoke($0, `v128.load16_lane_3_align_1`, [ + 3, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x403, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:166 +assert_return( + () => invoke($0, `v128.load16_lane_3_align_2`, [ + 3, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x403, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:169 +assert_return( + () => invoke($0, `v128.load16_lane_4_align_1`, [ + 4, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x504, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:172 +assert_return( + () => invoke($0, `v128.load16_lane_4_align_2`, [ + 4, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x504, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:175 +assert_return( + () => invoke($0, `v128.load16_lane_5_align_1`, [ + 5, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x605, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:178 +assert_return( + () => invoke($0, `v128.load16_lane_5_align_2`, [ + 5, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x605, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:181 +assert_return( + () => invoke($0, `v128.load16_lane_6_align_1`, [ + 6, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x706, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:184 +assert_return( + () => invoke($0, `v128.load16_lane_6_align_2`, [ + 6, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x706, 0x0])], +); + +// ./test/core/simd/simd_load16_lane.wast:187 +assert_return( + () => invoke($0, `v128.load16_lane_7_align_1`, [ + 7, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x807])], +); + +// ./test/core/simd/simd_load16_lane.wast:190 +assert_return( + () => invoke($0, `v128.load16_lane_7_align_2`, [ + 7, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x807])], +); + +// ./test/core/simd/simd_load16_lane.wast:195 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load16_lane 0 (local.get $$x) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load16_lane.wast:201 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load16_lane 8 (i32.const 0) (local.get $$x))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_load16_lane.wast:207 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load16_lane align=4 0 (i32.const 0) (local.get $$x))))`), + `alignment must not be larger than natural`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_load32_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_load32_lane.wast.js new file mode 100644 index 0000000000..fb8deca36e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_load32_lane.wast.js @@ -0,0 +1,228 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load32_lane.wast + +// ./test/core/simd/simd_load32_lane.wast:4 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F") + (func (export "v128.load32_lane_0") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_3") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane 3 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_0_offset_0") + (param $$x v128) (result v128) + (v128.load32_lane offset=0 0 (i32.const 0) (local.get $$x))) + (func (export "v128.load32_lane_1_offset_1") + (param $$x v128) (result v128) + (v128.load32_lane offset=1 1 (i32.const 0) (local.get $$x))) + (func (export "v128.load32_lane_2_offset_2") + (param $$x v128) (result v128) + (v128.load32_lane offset=2 2 (i32.const 0) (local.get $$x))) + (func (export "v128.load32_lane_3_offset_3") + (param $$x v128) (result v128) + (v128.load32_lane offset=3 3 (i32.const 0) (local.get $$x))) + (func (export "v128.load32_lane_0_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=1 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_0_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=2 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_0_align_4") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=4 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_1_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=1 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_1_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=2 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_1_align_4") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=4 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_2_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=1 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_2_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=2 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_2_align_4") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=4 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_3_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=1 3 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_3_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=2 3 (local.get $$address) (local.get $$x))) + (func (export "v128.load32_lane_3_align_4") + (param $$address i32) (param $$x v128) (result v128) + (v128.load32_lane align=4 3 (local.get $$address) (local.get $$x))) +)`); + +// ./test/core/simd/simd_load32_lane.wast:69 +assert_return( + () => invoke($0, `v128.load32_lane_0`, [0, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x3020100, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:72 +assert_return( + () => invoke($0, `v128.load32_lane_1`, [1, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x4030201, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:75 +assert_return( + () => invoke($0, `v128.load32_lane_2`, [2, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x5040302, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:78 +assert_return( + () => invoke($0, `v128.load32_lane_3`, [3, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x6050403])], +); + +// ./test/core/simd/simd_load32_lane.wast:81 +assert_return( + () => invoke($0, `v128.load32_lane_0_offset_0`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x3020100, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:83 +assert_return( + () => invoke($0, `v128.load32_lane_1_offset_1`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x4030201, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:85 +assert_return( + () => invoke($0, `v128.load32_lane_2_offset_2`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x5040302, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:87 +assert_return( + () => invoke($0, `v128.load32_lane_3_offset_3`, [i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x6050403])], +); + +// ./test/core/simd/simd_load32_lane.wast:89 +assert_return( + () => invoke($0, `v128.load32_lane_0_align_1`, [0, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x3020100, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:92 +assert_return( + () => invoke($0, `v128.load32_lane_0_align_2`, [0, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x3020100, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:95 +assert_return( + () => invoke($0, `v128.load32_lane_0_align_4`, [0, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x3020100, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:98 +assert_return( + () => invoke($0, `v128.load32_lane_1_align_1`, [1, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x4030201, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:101 +assert_return( + () => invoke($0, `v128.load32_lane_1_align_2`, [1, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x4030201, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:104 +assert_return( + () => invoke($0, `v128.load32_lane_1_align_4`, [1, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x4030201, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:107 +assert_return( + () => invoke($0, `v128.load32_lane_2_align_1`, [2, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x5040302, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:110 +assert_return( + () => invoke($0, `v128.load32_lane_2_align_2`, [2, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x5040302, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:113 +assert_return( + () => invoke($0, `v128.load32_lane_2_align_4`, [2, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x5040302, 0x0])], +); + +// ./test/core/simd/simd_load32_lane.wast:116 +assert_return( + () => invoke($0, `v128.load32_lane_3_align_1`, [3, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x6050403])], +); + +// ./test/core/simd/simd_load32_lane.wast:119 +assert_return( + () => invoke($0, `v128.load32_lane_3_align_2`, [3, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x6050403])], +); + +// ./test/core/simd/simd_load32_lane.wast:122 +assert_return( + () => invoke($0, `v128.load32_lane_3_align_4`, [3, i32x4([0x0, 0x0, 0x0, 0x0])]), + [i32x4([0x0, 0x0, 0x0, 0x6050403])], +); + +// ./test/core/simd/simd_load32_lane.wast:127 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load32_lane 0 (local.get $$x) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load32_lane.wast:133 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load32_lane 4 (i32.const 0) (local.get $$x))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_load32_lane.wast:139 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load32_lane align=8 0 (i32.const 0) (local.get $$x))))`), + `alignment must not be larger than natural`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_load64_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_load64_lane.wast.js new file mode 100644 index 0000000000..ff71464896 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_load64_lane.wast.js @@ -0,0 +1,156 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load64_lane.wast + +// ./test/core/simd/simd_load64_lane.wast:4 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F") + (func (export "v128.load64_lane_0") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_0_offset_0") + (param $$x v128) (result v128) + (v128.load64_lane offset=0 0 (i32.const 0) (local.get $$x))) + (func (export "v128.load64_lane_1_offset_1") + (param $$x v128) (result v128) + (v128.load64_lane offset=1 1 (i32.const 0) (local.get $$x))) + (func (export "v128.load64_lane_0_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane align=1 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_0_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane align=2 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_0_align_4") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane align=4 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_0_align_8") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane align=8 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_1_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane align=1 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_1_align_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane align=2 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_1_align_4") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane align=4 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load64_lane_1_align_8") + (param $$address i32) (param $$x v128) (result v128) + (v128.load64_lane align=8 1 (local.get $$address) (local.get $$x))) +)`); + +// ./test/core/simd/simd_load64_lane.wast:45 +assert_return( + () => invoke($0, `v128.load64_lane_0`, [0, i64x2([0x0n, 0x0n])]), + [i64x2([0x706050403020100n, 0x0n])], +); + +// ./test/core/simd/simd_load64_lane.wast:48 +assert_return( + () => invoke($0, `v128.load64_lane_1`, [1, i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x807060504030201n])], +); + +// ./test/core/simd/simd_load64_lane.wast:51 +assert_return( + () => invoke($0, `v128.load64_lane_0_offset_0`, [i64x2([0x0n, 0x0n])]), + [i64x2([0x706050403020100n, 0x0n])], +); + +// ./test/core/simd/simd_load64_lane.wast:53 +assert_return( + () => invoke($0, `v128.load64_lane_1_offset_1`, [i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x807060504030201n])], +); + +// ./test/core/simd/simd_load64_lane.wast:55 +assert_return( + () => invoke($0, `v128.load64_lane_0_align_1`, [0, i64x2([0x0n, 0x0n])]), + [i64x2([0x706050403020100n, 0x0n])], +); + +// ./test/core/simd/simd_load64_lane.wast:58 +assert_return( + () => invoke($0, `v128.load64_lane_0_align_2`, [0, i64x2([0x0n, 0x0n])]), + [i64x2([0x706050403020100n, 0x0n])], +); + +// ./test/core/simd/simd_load64_lane.wast:61 +assert_return( + () => invoke($0, `v128.load64_lane_0_align_4`, [0, i64x2([0x0n, 0x0n])]), + [i64x2([0x706050403020100n, 0x0n])], +); + +// ./test/core/simd/simd_load64_lane.wast:64 +assert_return( + () => invoke($0, `v128.load64_lane_0_align_8`, [0, i64x2([0x0n, 0x0n])]), + [i64x2([0x706050403020100n, 0x0n])], +); + +// ./test/core/simd/simd_load64_lane.wast:67 +assert_return( + () => invoke($0, `v128.load64_lane_1_align_1`, [1, i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x807060504030201n])], +); + +// ./test/core/simd/simd_load64_lane.wast:70 +assert_return( + () => invoke($0, `v128.load64_lane_1_align_2`, [1, i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x807060504030201n])], +); + +// ./test/core/simd/simd_load64_lane.wast:73 +assert_return( + () => invoke($0, `v128.load64_lane_1_align_4`, [1, i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x807060504030201n])], +); + +// ./test/core/simd/simd_load64_lane.wast:76 +assert_return( + () => invoke($0, `v128.load64_lane_1_align_8`, [1, i64x2([0x0n, 0x0n])]), + [i64x2([0x0n, 0x807060504030201n])], +); + +// ./test/core/simd/simd_load64_lane.wast:81 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load64_lane 0 (local.get $$x) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load64_lane.wast:87 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load64_lane 2 (i32.const 0) (local.get $$x))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_load64_lane.wast:93 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load64_lane align=16 0 (i32.const 0) (local.get $$x))))`), + `alignment must not be larger than natural`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_load8_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_load8_lane.wast.js new file mode 100644 index 0000000000..61e75fdef1 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_load8_lane.wast.js @@ -0,0 +1,704 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load8_lane.wast + +// ./test/core/simd/simd_load8_lane.wast:4 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F") + (func (export "v128.load8_lane_0") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_2") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_3") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 3 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_4") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 4 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_5") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 5 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_6") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 6 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_7") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 7 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_8") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 8 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_9") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 9 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_10") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 10 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_11") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 11 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_12") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 12 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_13") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 13 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_14") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 14 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_15") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane 15 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_0_offset_0") + (param $$x v128) (result v128) + (v128.load8_lane offset=0 0 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_1_offset_1") + (param $$x v128) (result v128) + (v128.load8_lane offset=1 1 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_2_offset_2") + (param $$x v128) (result v128) + (v128.load8_lane offset=2 2 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_3_offset_3") + (param $$x v128) (result v128) + (v128.load8_lane offset=3 3 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_4_offset_4") + (param $$x v128) (result v128) + (v128.load8_lane offset=4 4 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_5_offset_5") + (param $$x v128) (result v128) + (v128.load8_lane offset=5 5 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_6_offset_6") + (param $$x v128) (result v128) + (v128.load8_lane offset=6 6 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_7_offset_7") + (param $$x v128) (result v128) + (v128.load8_lane offset=7 7 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_8_offset_8") + (param $$x v128) (result v128) + (v128.load8_lane offset=8 8 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_9_offset_9") + (param $$x v128) (result v128) + (v128.load8_lane offset=9 9 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_10_offset_10") + (param $$x v128) (result v128) + (v128.load8_lane offset=10 10 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_11_offset_11") + (param $$x v128) (result v128) + (v128.load8_lane offset=11 11 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_12_offset_12") + (param $$x v128) (result v128) + (v128.load8_lane offset=12 12 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_13_offset_13") + (param $$x v128) (result v128) + (v128.load8_lane offset=13 13 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_14_offset_14") + (param $$x v128) (result v128) + (v128.load8_lane offset=14 14 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_15_offset_15") + (param $$x v128) (result v128) + (v128.load8_lane offset=15 15 (i32.const 0) (local.get $$x))) + (func (export "v128.load8_lane_0_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 0 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_1_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 1 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_2_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 2 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_3_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 3 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_4_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 4 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_5_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 5 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_6_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 6 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_7_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 7 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_8_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 8 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_9_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 9 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_10_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 10 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_11_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 11 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_12_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 12 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_13_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 13 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_14_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 14 (local.get $$address) (local.get $$x))) + (func (export "v128.load8_lane_15_align_1") + (param $$address i32) (param $$x v128) (result v128) + (v128.load8_lane align=1 15 (local.get $$address) (local.get $$x))) +)`); + +// ./test/core/simd/simd_load8_lane.wast:153 +assert_return( + () => invoke($0, `v128.load8_lane_0`, [ + 0, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:156 +assert_return( + () => invoke($0, `v128.load8_lane_1`, [ + 1, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:159 +assert_return( + () => invoke($0, `v128.load8_lane_2`, [ + 2, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:162 +assert_return( + () => invoke($0, `v128.load8_lane_3`, [ + 3, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:165 +assert_return( + () => invoke($0, `v128.load8_lane_4`, [ + 4, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:168 +assert_return( + () => invoke($0, `v128.load8_lane_5`, [ + 5, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:171 +assert_return( + () => invoke($0, `v128.load8_lane_6`, [ + 6, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:174 +assert_return( + () => invoke($0, `v128.load8_lane_7`, [ + 7, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:177 +assert_return( + () => invoke($0, `v128.load8_lane_8`, [ + 8, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:180 +assert_return( + () => invoke($0, `v128.load8_lane_9`, [ + 9, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:183 +assert_return( + () => invoke($0, `v128.load8_lane_10`, [ + 10, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:186 +assert_return( + () => invoke($0, `v128.load8_lane_11`, [ + 11, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:189 +assert_return( + () => invoke($0, `v128.load8_lane_12`, [ + 12, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:192 +assert_return( + () => invoke($0, `v128.load8_lane_13`, [ + 13, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:195 +assert_return( + () => invoke($0, `v128.load8_lane_14`, [ + 14, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:198 +assert_return( + () => invoke($0, `v128.load8_lane_15`, [ + 15, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:201 +assert_return( + () => invoke($0, `v128.load8_lane_0_offset_0`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:203 +assert_return( + () => invoke($0, `v128.load8_lane_1_offset_1`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:205 +assert_return( + () => invoke($0, `v128.load8_lane_2_offset_2`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:207 +assert_return( + () => invoke($0, `v128.load8_lane_3_offset_3`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:209 +assert_return( + () => invoke($0, `v128.load8_lane_4_offset_4`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:211 +assert_return( + () => invoke($0, `v128.load8_lane_5_offset_5`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:213 +assert_return( + () => invoke($0, `v128.load8_lane_6_offset_6`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:215 +assert_return( + () => invoke($0, `v128.load8_lane_7_offset_7`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:217 +assert_return( + () => invoke($0, `v128.load8_lane_8_offset_8`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:219 +assert_return( + () => invoke($0, `v128.load8_lane_9_offset_9`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:221 +assert_return( + () => invoke($0, `v128.load8_lane_10_offset_10`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:223 +assert_return( + () => invoke($0, `v128.load8_lane_11_offset_11`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:225 +assert_return( + () => invoke($0, `v128.load8_lane_12_offset_12`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:227 +assert_return( + () => invoke($0, `v128.load8_lane_13_offset_13`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:229 +assert_return( + () => invoke($0, `v128.load8_lane_14_offset_14`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:231 +assert_return( + () => invoke($0, `v128.load8_lane_15_offset_15`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:233 +assert_return( + () => invoke($0, `v128.load8_lane_0_align_1`, [ + 0, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:236 +assert_return( + () => invoke($0, `v128.load8_lane_1_align_1`, [ + 1, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:239 +assert_return( + () => invoke($0, `v128.load8_lane_2_align_1`, [ + 2, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:242 +assert_return( + () => invoke($0, `v128.load8_lane_3_align_1`, [ + 3, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:245 +assert_return( + () => invoke($0, `v128.load8_lane_4_align_1`, [ + 4, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:248 +assert_return( + () => invoke($0, `v128.load8_lane_5_align_1`, [ + 5, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:251 +assert_return( + () => invoke($0, `v128.load8_lane_6_align_1`, [ + 6, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:254 +assert_return( + () => invoke($0, `v128.load8_lane_7_align_1`, [ + 7, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:257 +assert_return( + () => invoke($0, `v128.load8_lane_8_align_1`, [ + 8, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:260 +assert_return( + () => invoke($0, `v128.load8_lane_9_align_1`, [ + 9, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:263 +assert_return( + () => invoke($0, `v128.load8_lane_10_align_1`, [ + 10, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:266 +assert_return( + () => invoke($0, `v128.load8_lane_11_align_1`, [ + 11, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:269 +assert_return( + () => invoke($0, `v128.load8_lane_12_align_1`, [ + 12, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:272 +assert_return( + () => invoke($0, `v128.load8_lane_13_align_1`, [ + 13, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:275 +assert_return( + () => invoke($0, `v128.load8_lane_14_align_1`, [ + 14, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:278 +assert_return( + () => invoke($0, `v128.load8_lane_15_align_1`, [ + 15, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf]), + ], +); + +// ./test/core/simd/simd_load8_lane.wast:283 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load8_lane 0 (local.get $$x) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load8_lane.wast:289 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load8_lane 16 (i32.const 0) (local.get $$x))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_load8_lane.wast:295 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.load8_lane align=2 0 (i32.const 0) (local.get $$x))))`), + `alignment must not be larger than natural`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_load_extend.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_load_extend.wast.js new file mode 100644 index 0000000000..3ee50e0b23 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_load_extend.wast.js @@ -0,0 +1,726 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load_extend.wast + +// ./test/core/simd/simd_load_extend.wast:3 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F\\80\\81\\82\\83\\84\\85\\86\\87\\88\\89") + (data (i32.const 65520) "\\0A\\0B\\0C\\0D\\0E\\0F\\80\\81\\82\\83\\84\\85\\86\\87\\88\\89") + + (func (export "v128.load8x8_s") (param $$0 i32) (result v128) + (v128.load8x8_s (local.get $$0)) + ) + (func (export "v128.load8x8_u") (param $$0 i32) (result v128) + (v128.load8x8_u (local.get $$0)) + ) + (func (export "v128.load16x4_s") (param $$0 i32) (result v128) + (v128.load16x4_s (local.get $$0)) + ) + (func (export "v128.load16x4_u") (param $$0 i32) (result v128) + (v128.load16x4_u (local.get $$0)) + ) + (func (export "v128.load32x2_s") (param $$0 i32) (result v128) + (v128.load32x2_s (local.get $$0)) + ) + (func (export "v128.load32x2_u") (param $$0 i32) (result v128) + (v128.load32x2_u (local.get $$0)) + ) + + ;; load by a constant amount + (func (export "v128.load8x8_s_const0") (result v128) + (v128.load8x8_s (i32.const 0)) + ) + (func (export "v128.load8x8_u_const8") (result v128) + (v128.load8x8_u (i32.const 8)) + ) + (func (export "v128.load16x4_s_const10") (result v128) + (v128.load16x4_s (i32.const 10)) + ) + (func (export "v128.load16x4_u_const20") (result v128) + (v128.load16x4_u (i32.const 20)) + ) + (func (export "v128.load32x2_s_const65520") (result v128) + (v128.load32x2_s (i32.const 65520)) + ) + (func (export "v128.load32x2_u_const65526") (result v128) + (v128.load32x2_u (i32.const 65526)) + ) + + ;; load data with different offset/align arguments + ;; i16x8 + (func (export "v128.load8x8_s_offset0") (param $$0 i32) (result v128) + (v128.load8x8_s offset=0 (local.get $$0)) + ) + (func (export "v128.load8x8_s_align1") (param $$0 i32) (result v128) + (v128.load8x8_s align=1 (local.get $$0)) + ) + (func (export "v128.load8x8_s_offset0_align1") (param $$0 i32) (result v128) + (v128.load8x8_s offset=0 align=1 (local.get $$0)) + ) + (func (export "v128.load8x8_s_offset1_align1") (param $$0 i32) (result v128) + (v128.load8x8_s offset=1 align=1 (local.get $$0)) + ) + (func (export "v128.load8x8_s_offset10_align4") (param $$0 i32) (result v128) + (v128.load8x8_s offset=10 align=4 (local.get $$0)) + ) + (func (export "v128.load8x8_s_offset20_align8") (param $$0 i32) (result v128) + (v128.load8x8_s offset=20 align=8 (local.get $$0)) + ) + (func (export "v128.load8x8_u_offset0") (param $$0 i32) (result v128) + (v128.load8x8_u offset=0 (local.get $$0)) + ) + (func (export "v128.load8x8_u_align1") (param $$0 i32) (result v128) + (v128.load8x8_u align=1 (local.get $$0)) + ) + (func (export "v128.load8x8_u_offset0_align1") (param $$0 i32) (result v128) + (v128.load8x8_u offset=0 align=1 (local.get $$0)) + ) + (func (export "v128.load8x8_u_offset1_align1") (param $$0 i32) (result v128) + (v128.load8x8_u offset=1 align=1 (local.get $$0)) + ) + (func (export "v128.load8x8_u_offset10_align4") (param $$0 i32) (result v128) + (v128.load8x8_u offset=10 align=4 (local.get $$0)) + ) + (func (export "v128.load8x8_u_offset20_align8") (param $$0 i32) (result v128) + (v128.load8x8_u offset=20 align=8 (local.get $$0)) + ) + ;; i32x4 + (func (export "v128.load16x4_s_offset0") (param $$0 i32) (result v128) + (v128.load16x4_s offset=0 (local.get $$0)) + ) + (func (export "v128.load16x4_s_align1") (param $$0 i32) (result v128) + (v128.load16x4_s align=1 (local.get $$0)) + ) + (func (export "v128.load16x4_s_offset0_align1") (param $$0 i32) (result v128) + (v128.load16x4_s offset=0 align=1 (local.get $$0)) + ) + (func (export "v128.load16x4_s_offset1_align1") (param $$0 i32) (result v128) + (v128.load16x4_s offset=1 align=1 (local.get $$0)) + ) + (func (export "v128.load16x4_s_offset10_align4") (param $$0 i32) (result v128) + (v128.load16x4_s offset=10 align=4 (local.get $$0)) + ) + (func (export "v128.load16x4_s_offset20_align8") (param $$0 i32) (result v128) + (v128.load16x4_s offset=20 align=8 (local.get $$0)) + ) + (func (export "v128.load16x4_u_offset0") (param $$0 i32) (result v128) + (v128.load16x4_u offset=0 (local.get $$0)) + ) + (func (export "v128.load16x4_u_align1") (param $$0 i32) (result v128) + (v128.load16x4_u align=1 (local.get $$0)) + ) + (func (export "v128.load16x4_u_offset0_align1") (param $$0 i32) (result v128) + (v128.load16x4_u offset=0 align=1 (local.get $$0)) + ) + (func (export "v128.load16x4_u_offset1_align1") (param $$0 i32) (result v128) + (v128.load16x4_u offset=1 align=1 (local.get $$0)) + ) + (func (export "v128.load16x4_u_offset10_align4") (param $$0 i32) (result v128) + (v128.load16x4_u offset=10 align=4 (local.get $$0)) + ) + (func (export "v128.load16x4_u_offset20_align8") (param $$0 i32) (result v128) + (v128.load16x4_u offset=20 align=8 (local.get $$0)) + ) + ;; i64x2 + (func (export "v128.load32x2_s_offset0") (param $$0 i32) (result v128) + (v128.load32x2_s offset=0 (local.get $$0)) + ) + (func (export "v128.load32x2_s_align1") (param $$0 i32) (result v128) + (v128.load32x2_s align=1 (local.get $$0)) + ) + (func (export "v128.load32x2_s_offset0_align1") (param $$0 i32) (result v128) + (v128.load32x2_s offset=0 align=1 (local.get $$0)) + ) + (func (export "v128.load32x2_s_offset1_align1") (param $$0 i32) (result v128) + (v128.load32x2_s offset=1 align=1 (local.get $$0)) + ) + (func (export "v128.load32x2_s_offset10_align4") (param $$0 i32) (result v128) + (v128.load32x2_s offset=10 align=4 (local.get $$0)) + ) + (func (export "v128.load32x2_s_offset20_align8") (param $$0 i32) (result v128) + (v128.load32x2_s offset=20 align=8 (local.get $$0)) + ) + (func (export "v128.load32x2_u_offset0") (param $$0 i32) (result v128) + (v128.load32x2_u offset=0 (local.get $$0)) + ) + (func (export "v128.load32x2_u_align1") (param $$0 i32) (result v128) + (v128.load32x2_u align=1 (local.get $$0)) + ) + (func (export "v128.load32x2_u_offset0_align1") (param $$0 i32) (result v128) + (v128.load32x2_u offset=0 align=1 (local.get $$0)) + ) + (func (export "v128.load32x2_u_offset1_align1") (param $$0 i32) (result v128) + (v128.load32x2_u offset=1 align=1 (local.get $$0)) + ) + (func (export "v128.load32x2_u_offset10_align4") (param $$0 i32) (result v128) + (v128.load32x2_u offset=10 align=4 (local.get $$0)) + ) + (func (export "v128.load32x2_u_offset20_align8") (param $$0 i32) (result v128) + (v128.load32x2_u offset=20 align=8 (local.get $$0)) + ) +)`); + +// ./test/core/simd/simd_load_extend.wast:163 +assert_return( + () => invoke($0, `v128.load8x8_s`, [0]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_load_extend.wast:164 +assert_return( + () => invoke($0, `v128.load8x8_u`, [0]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_load_extend.wast:165 +assert_return(() => invoke($0, `v128.load16x4_s`, [0]), [i32x4([0x100, 0x302, 0x504, 0x706])]); + +// ./test/core/simd/simd_load_extend.wast:166 +assert_return(() => invoke($0, `v128.load16x4_u`, [0]), [i32x4([0x100, 0x302, 0x504, 0x706])]); + +// ./test/core/simd/simd_load_extend.wast:167 +assert_return(() => invoke($0, `v128.load32x2_s`, [0]), [i64x2([0x3020100n, 0x7060504n])]); + +// ./test/core/simd/simd_load_extend.wast:168 +assert_return(() => invoke($0, `v128.load32x2_u`, [0]), [i64x2([0x3020100n, 0x7060504n])]); + +// ./test/core/simd/simd_load_extend.wast:169 +assert_return( + () => invoke($0, `v128.load8x8_s`, [10]), + [i16x8([0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0xff80, 0xff81])], +); + +// ./test/core/simd/simd_load_extend.wast:170 +assert_return( + () => invoke($0, `v128.load8x8_u`, [10]), + [i16x8([0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0x80, 0x81])], +); + +// ./test/core/simd/simd_load_extend.wast:171 +assert_return(() => invoke($0, `v128.load16x4_s`, [10]), [i32x4([0xb0a, 0xd0c, 0xf0e, 0xffff8180])]); + +// ./test/core/simd/simd_load_extend.wast:172 +assert_return(() => invoke($0, `v128.load16x4_u`, [10]), [i32x4([0xb0a, 0xd0c, 0xf0e, 0x8180])]); + +// ./test/core/simd/simd_load_extend.wast:173 +assert_return(() => invoke($0, `v128.load32x2_s`, [10]), [i64x2([0xd0c0b0an, 0xffffffff81800f0en])]); + +// ./test/core/simd/simd_load_extend.wast:174 +assert_return(() => invoke($0, `v128.load32x2_u`, [10]), [i64x2([0xd0c0b0an, 0x81800f0en])]); + +// ./test/core/simd/simd_load_extend.wast:175 +assert_return( + () => invoke($0, `v128.load8x8_s`, [20]), + [i16x8([0xff84, 0xff85, 0xff86, 0xff87, 0xff88, 0xff89, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_extend.wast:176 +assert_return( + () => invoke($0, `v128.load8x8_u`, [20]), + [i16x8([0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_extend.wast:177 +assert_return( + () => invoke($0, `v128.load16x4_s`, [20]), + [i32x4([0xffff8584, 0xffff8786, 0xffff8988, 0x0])], +); + +// ./test/core/simd/simd_load_extend.wast:178 +assert_return(() => invoke($0, `v128.load16x4_u`, [20]), [i32x4([0x8584, 0x8786, 0x8988, 0x0])]); + +// ./test/core/simd/simd_load_extend.wast:179 +assert_return(() => invoke($0, `v128.load32x2_s`, [20]), [i64x2([0xffffffff87868584n, 0x8988n])]); + +// ./test/core/simd/simd_load_extend.wast:180 +assert_return(() => invoke($0, `v128.load32x2_u`, [20]), [i64x2([0x87868584n, 0x8988n])]); + +// ./test/core/simd/simd_load_extend.wast:183 +assert_return( + () => invoke($0, `v128.load8x8_s_const0`, []), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_load_extend.wast:184 +assert_return( + () => invoke($0, `v128.load8x8_u_const8`, []), + [i16x8([0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf])], +); + +// ./test/core/simd/simd_load_extend.wast:185 +assert_return(() => invoke($0, `v128.load16x4_s_const10`, []), [i32x4([0xb0a, 0xd0c, 0xf0e, 0xffff8180])]); + +// ./test/core/simd/simd_load_extend.wast:186 +assert_return(() => invoke($0, `v128.load16x4_u_const20`, []), [i32x4([0x8584, 0x8786, 0x8988, 0x0])]); + +// ./test/core/simd/simd_load_extend.wast:187 +assert_return( + () => invoke($0, `v128.load32x2_s_const65520`, []), + [i64x2([0xd0c0b0an, 0xffffffff81800f0en])], +); + +// ./test/core/simd/simd_load_extend.wast:188 +assert_return(() => invoke($0, `v128.load32x2_u_const65526`, []), [i64x2([0x83828180n, 0x87868584n])]); + +// ./test/core/simd/simd_load_extend.wast:192 +assert_return( + () => invoke($0, `v128.load8x8_s_offset0`, [0]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_load_extend.wast:193 +assert_return( + () => invoke($0, `v128.load8x8_s_align1`, [1]), + [i16x8([0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8])], +); + +// ./test/core/simd/simd_load_extend.wast:194 +assert_return( + () => invoke($0, `v128.load8x8_s_offset0_align1`, [2]), + [i16x8([0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9])], +); + +// ./test/core/simd/simd_load_extend.wast:195 +assert_return( + () => invoke($0, `v128.load8x8_s_offset10_align4`, [3]), + [i16x8([0xd, 0xe, 0xf, 0xff80, 0xff81, 0xff82, 0xff83, 0xff84])], +); + +// ./test/core/simd/simd_load_extend.wast:196 +assert_return( + () => invoke($0, `v128.load8x8_s_offset20_align8`, [4]), + [i16x8([0xff88, 0xff89, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_extend.wast:197 +assert_return( + () => invoke($0, `v128.load8x8_u_offset0`, [0]), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_load_extend.wast:198 +assert_return( + () => invoke($0, `v128.load8x8_u_align1`, [1]), + [i16x8([0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8])], +); + +// ./test/core/simd/simd_load_extend.wast:199 +assert_return( + () => invoke($0, `v128.load8x8_u_offset0_align1`, [2]), + [i16x8([0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9])], +); + +// ./test/core/simd/simd_load_extend.wast:200 +assert_return( + () => invoke($0, `v128.load8x8_u_offset10_align4`, [3]), + [i16x8([0xd, 0xe, 0xf, 0x80, 0x81, 0x82, 0x83, 0x84])], +); + +// ./test/core/simd/simd_load_extend.wast:201 +assert_return( + () => invoke($0, `v128.load8x8_u_offset20_align8`, [4]), + [i16x8([0x88, 0x89, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_extend.wast:203 +assert_return(() => invoke($0, `v128.load16x4_s_offset0`, [0]), [i32x4([0x100, 0x302, 0x504, 0x706])]); + +// ./test/core/simd/simd_load_extend.wast:204 +assert_return(() => invoke($0, `v128.load16x4_s_align1`, [1]), [i32x4([0x201, 0x403, 0x605, 0x807])]); + +// ./test/core/simd/simd_load_extend.wast:205 +assert_return( + () => invoke($0, `v128.load16x4_s_offset0_align1`, [2]), + [i32x4([0x302, 0x504, 0x706, 0x908])], +); + +// ./test/core/simd/simd_load_extend.wast:206 +assert_return( + () => invoke($0, `v128.load16x4_s_offset10_align4`, [3]), + [i32x4([0xe0d, 0xffff800f, 0xffff8281, 0xffff8483])], +); + +// ./test/core/simd/simd_load_extend.wast:207 +assert_return( + () => invoke($0, `v128.load16x4_s_offset20_align8`, [4]), + [i32x4([0xffff8988, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_extend.wast:208 +assert_return(() => invoke($0, `v128.load16x4_u_offset0`, [0]), [i32x4([0x100, 0x302, 0x504, 0x706])]); + +// ./test/core/simd/simd_load_extend.wast:209 +assert_return(() => invoke($0, `v128.load16x4_u_align1`, [1]), [i32x4([0x201, 0x403, 0x605, 0x807])]); + +// ./test/core/simd/simd_load_extend.wast:210 +assert_return( + () => invoke($0, `v128.load16x4_u_offset0_align1`, [2]), + [i32x4([0x302, 0x504, 0x706, 0x908])], +); + +// ./test/core/simd/simd_load_extend.wast:211 +assert_return( + () => invoke($0, `v128.load16x4_u_offset10_align4`, [3]), + [i32x4([0xe0d, 0x800f, 0x8281, 0x8483])], +); + +// ./test/core/simd/simd_load_extend.wast:212 +assert_return( + () => invoke($0, `v128.load16x4_u_offset20_align8`, [4]), + [i32x4([0x8988, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_extend.wast:214 +assert_return(() => invoke($0, `v128.load32x2_s_offset0`, [0]), [i64x2([0x3020100n, 0x7060504n])]); + +// ./test/core/simd/simd_load_extend.wast:215 +assert_return(() => invoke($0, `v128.load32x2_s_align1`, [1]), [i64x2([0x4030201n, 0x8070605n])]); + +// ./test/core/simd/simd_load_extend.wast:216 +assert_return( + () => invoke($0, `v128.load32x2_s_offset0_align1`, [2]), + [i64x2([0x5040302n, 0x9080706n])], +); + +// ./test/core/simd/simd_load_extend.wast:217 +assert_return( + () => invoke($0, `v128.load32x2_s_offset10_align4`, [3]), + [i64x2([0xffffffff800f0e0dn, 0xffffffff84838281n])], +); + +// ./test/core/simd/simd_load_extend.wast:218 +assert_return(() => invoke($0, `v128.load32x2_s_offset20_align8`, [4]), [i64x2([0x8988n, 0x0n])]); + +// ./test/core/simd/simd_load_extend.wast:219 +assert_return(() => invoke($0, `v128.load32x2_u_offset0`, [0]), [i64x2([0x3020100n, 0x7060504n])]); + +// ./test/core/simd/simd_load_extend.wast:220 +assert_return(() => invoke($0, `v128.load32x2_u_align1`, [1]), [i64x2([0x4030201n, 0x8070605n])]); + +// ./test/core/simd/simd_load_extend.wast:221 +assert_return( + () => invoke($0, `v128.load32x2_u_offset0_align1`, [2]), + [i64x2([0x5040302n, 0x9080706n])], +); + +// ./test/core/simd/simd_load_extend.wast:222 +assert_return( + () => invoke($0, `v128.load32x2_u_offset10_align4`, [3]), + [i64x2([0x800f0e0dn, 0x84838281n])], +); + +// ./test/core/simd/simd_load_extend.wast:223 +assert_return(() => invoke($0, `v128.load32x2_u_offset20_align8`, [4]), [i64x2([0x8988n, 0x0n])]); + +// ./test/core/simd/simd_load_extend.wast:226 +assert_trap(() => invoke($0, `v128.load8x8_s`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:227 +assert_trap(() => invoke($0, `v128.load8x8_u`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:228 +assert_trap(() => invoke($0, `v128.load16x4_s`, [65536]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:229 +assert_trap(() => invoke($0, `v128.load16x4_u`, [65536]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:230 +assert_trap(() => invoke($0, `v128.load32x2_s`, [65529]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:231 +assert_trap(() => invoke($0, `v128.load32x2_u`, [65529]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:233 +assert_trap(() => invoke($0, `v128.load8x8_s_offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:234 +assert_trap(() => invoke($0, `v128.load8x8_u_offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:235 +assert_trap(() => invoke($0, `v128.load16x4_s_offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:236 +assert_trap(() => invoke($0, `v128.load16x4_u_offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:237 +assert_trap(() => invoke($0, `v128.load32x2_s_offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:238 +assert_trap(() => invoke($0, `v128.load32x2_u_offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_extend.wast:241 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load8x8_s (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:242 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load8x8_u (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:243 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load16x4_s (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:244 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load16x4_u (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:245 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load32x2_s (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:246 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load32x2_u (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:250 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load8x8_s-arg-empty (result v128) + (v128.load8x8_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:258 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load8x8_u-arg-empty (result v128) + (v128.load8x8_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:266 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load16x4_s-arg-empty (result v128) + (v128.load16x4_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:274 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load16x4_u-arg-empty (result v128) + (v128.load16x4_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:282 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load32x2_s-arg-empty (result v128) + (v128.load32x2_s) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:290 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load32x2_u-arg-empty (result v128) + (v128.load32x2_u) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_extend.wast:301 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i16x8.load16x4_s (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_extend.wast:302 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i16x8.load16x4_u (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_extend.wast:303 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i32x4.load32x2_s (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_extend.wast:304 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i32x4.load32x2_u (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_extend.wast:305 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i64x2.load64x1_s (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_extend.wast:306 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i64x2.load64x1_u (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_extend.wast:309 +let $1 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F\\80\\81\\82\\83\\84\\85\\86\\87\\88\\89") + (func (export "v128.load8x8_s-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load8x8_s (i32.const 0)))) + ) + (func (export "v128.load8x8_u-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load8x8_u (i32.const 1)))) + ) + (func (export "v128.load16x4_s-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load16x4_s (i32.const 2)))) + ) + (func (export "v128.load16x4_u-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load16x4_u (i32.const 3)))) + ) + (func (export "v128.load32x2_s-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load32x2_s (i32.const 4)))) + ) + (func (export "v128.load32x2_u-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load32x2_u (i32.const 5)))) + ) + (func (export "v128.load8x8_s-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load8x8_s (i32.const 6)))) + ) + (func (export "v128.load8x8_u-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load8x8_u (i32.const 7)))) + ) + (func (export "v128.load16x4_s-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load16x4_s (i32.const 8)))) + ) + (func (export "v128.load16x4_u-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load16x4_u (i32.const 9)))) + ) + (func (export "v128.load32x2_s-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load32x2_s (i32.const 10)))) + ) + (func (export "v128.load32x2_u-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load32x2_u (i32.const 11)))) + ) + (func (export "v128.load8x8_s-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load8x8_s (i32.const 12))) + ) + (func (export "v128.load8x8_u-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load8x8_u (i32.const 13))) + ) + (func (export "v128.load16x4_s-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load16x4_s (i32.const 14))) + ) + (func (export "v128.load16x4_u-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load16x4_u (i32.const 15))) + ) + (func (export "v128.load32x2_s-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load32x2_s (i32.const 16))) + ) + (func (export "v128.load32x2_u-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load32x2_u (i32.const 17))) + ) +)`); + +// ./test/core/simd/simd_load_extend.wast:367 +assert_return( + () => invoke($1, `v128.load8x8_s-in-block`, []), + [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])], +); + +// ./test/core/simd/simd_load_extend.wast:368 +assert_return( + () => invoke($1, `v128.load8x8_u-in-block`, []), + [i16x8([0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8])], +); + +// ./test/core/simd/simd_load_extend.wast:369 +assert_return(() => invoke($1, `v128.load16x4_s-in-block`, []), [i32x4([0x302, 0x504, 0x706, 0x908])]); + +// ./test/core/simd/simd_load_extend.wast:370 +assert_return(() => invoke($1, `v128.load16x4_u-in-block`, []), [i32x4([0x403, 0x605, 0x807, 0xa09])]); + +// ./test/core/simd/simd_load_extend.wast:371 +assert_return(() => invoke($1, `v128.load32x2_s-in-block`, []), [i64x2([0x7060504n, 0xb0a0908n])]); + +// ./test/core/simd/simd_load_extend.wast:372 +assert_return(() => invoke($1, `v128.load32x2_u-in-block`, []), [i64x2([0x8070605n, 0xc0b0a09n])]); + +// ./test/core/simd/simd_load_extend.wast:373 +assert_return( + () => invoke($1, `v128.load8x8_s-as-br-value`, []), + [i16x8([0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd])], +); + +// ./test/core/simd/simd_load_extend.wast:374 +assert_return( + () => invoke($1, `v128.load8x8_u-as-br-value`, []), + [i16x8([0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe])], +); + +// ./test/core/simd/simd_load_extend.wast:375 +assert_return(() => invoke($1, `v128.load16x4_s-as-br-value`, []), [i32x4([0x908, 0xb0a, 0xd0c, 0xf0e])]); + +// ./test/core/simd/simd_load_extend.wast:376 +assert_return(() => invoke($1, `v128.load16x4_u-as-br-value`, []), [i32x4([0xa09, 0xc0b, 0xe0d, 0x800f])]); + +// ./test/core/simd/simd_load_extend.wast:377 +assert_return( + () => invoke($1, `v128.load32x2_s-as-br-value`, []), + [i64x2([0xd0c0b0an, 0xffffffff81800f0en])], +); + +// ./test/core/simd/simd_load_extend.wast:378 +assert_return(() => invoke($1, `v128.load32x2_u-as-br-value`, []), [i64x2([0xe0d0c0bn, 0x8281800fn])]); + +// ./test/core/simd/simd_load_extend.wast:379 +assert_return(() => invoke($1, `v128.load8x8_s-extract_lane_s-operand`, []), [value("i32", 12)]); + +// ./test/core/simd/simd_load_extend.wast:380 +assert_return(() => invoke($1, `v128.load8x8_u-extract_lane_s-operand`, []), [value("i32", 13)]); + +// ./test/core/simd/simd_load_extend.wast:381 +assert_return(() => invoke($1, `v128.load16x4_s-extract_lane_s-operand`, []), [value("i32", 14)]); + +// ./test/core/simd/simd_load_extend.wast:382 +assert_return(() => invoke($1, `v128.load16x4_u-extract_lane_s-operand`, []), [value("i32", 15)]); + +// ./test/core/simd/simd_load_extend.wast:383 +assert_return(() => invoke($1, `v128.load32x2_s-extract_lane_s-operand`, []), [value("i32", -128)]); + +// ./test/core/simd/simd_load_extend.wast:384 +assert_return(() => invoke($1, `v128.load32x2_u-extract_lane_s-operand`, []), [value("i32", -127)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_load_splat.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_load_splat.wast.js new file mode 100644 index 0000000000..ee1ece3d20 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_load_splat.wast.js @@ -0,0 +1,750 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load_splat.wast + +// ./test/core/simd/simd_load_splat.wast:3 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F") + (data (i32.const 65520) "\\10\\11\\12\\13\\14\\15\\16\\17\\18\\19\\1A\\1B\\1C\\1D\\1E\\1F") + + (func (export "v128.load8_splat") (param $$address i32) (result v128) (v128.load8_splat (local.get $$address))) + (func (export "v128.load16_splat") (param $$address i32) (result v128) (v128.load16_splat (local.get $$address))) + (func (export "v128.load32_splat") (param $$address i32) (result v128) (v128.load32_splat (local.get $$address))) + (func (export "v128.load64_splat") (param $$address i32) (result v128) (v128.load64_splat (local.get $$address))) + + ;; Load data with different offset/align arguments + (func (export "v8x16.offset0") (param $$address i32) (result v128) (v128.load8_splat offset=0 (local.get $$address))) + (func (export "v8x16.align1") (param $$address i32) (result v128) (v128.load8_splat align=1 (local.get $$address))) + (func (export "v8x16.offset1_align1") (param $$address i32) (result v128) (v128.load8_splat offset=1 align=1 (local.get $$address))) + (func (export "v8x16.offset2_align1") (param $$address i32) (result v128) (v128.load8_splat offset=2 align=1 (local.get $$address))) + (func (export "v8x16.offset15_align1") (param $$address i32) (result v128) (v128.load8_splat offset=15 align=1 (local.get $$address))) + + (func (export "v16x8.offset0") (param $$address i32) (result v128) (v128.load16_splat offset=0 (local.get $$address))) + (func (export "v16x8.align1") (param $$address i32) (result v128) (v128.load16_splat align=1 (local.get $$address))) + (func (export "v16x8.offset1_align1") (param $$address i32) (result v128) (v128.load16_splat offset=1 align=1 (local.get $$address))) + (func (export "v16x8.offset2_align1") (param $$address i32) (result v128) (v128.load16_splat offset=2 align=1 (local.get $$address))) + (func (export "v16x8.offset15_align2") (param $$address i32) (result v128) (v128.load16_splat offset=15 align=2 (local.get $$address))) + + (func (export "v32x4.offset0") (param $$address i32) (result v128) (v128.load32_splat offset=0 (local.get $$address))) + (func (export "v32x4.align1") (param $$address i32) (result v128) (v128.load32_splat align=1 (local.get $$address))) + (func (export "v32x4.offset1_align1") (param $$address i32) (result v128) (v128.load32_splat offset=1 align=1 (local.get $$address))) + (func (export "v32x4.offset2_align2") (param $$address i32) (result v128) (v128.load32_splat offset=2 align=2 (local.get $$address))) + (func (export "v32x4.offset15_align4") (param $$address i32) (result v128) (v128.load32_splat offset=15 align=4 (local.get $$address))) + + (func (export "v64x2.offset0") (param $$address i32) (result v128) (v128.load64_splat offset=0 (local.get $$address))) + (func (export "v64x2.align1") (param $$address i32) (result v128) (v128.load64_splat align=1 (local.get $$address))) + (func (export "v64x2.offset1_align2") (param $$address i32) (result v128) (v128.load64_splat offset=1 align=2 (local.get $$address))) + (func (export "v64x2.offset2_align4") (param $$address i32) (result v128) (v128.load64_splat offset=2 align=4 (local.get $$address))) + (func (export "v64x2.offset15_align8") (param $$address i32) (result v128) (v128.load64_splat offset=15 align=8 (local.get $$address))) + + (func (export "v8x16.offset65536") (param $$address i32) (result v128) (v128.load8_splat offset=65536 (local.get $$address))) + (func (export "v16x8.offset65535") (param $$address i32) (result v128) (v128.load16_splat offset=65535 (local.get $$address))) + (func (export "v32x4.offset65533") (param $$address i32) (result v128) (v128.load32_splat offset=65533 (local.get $$address))) + (func (export "v64x2.offset65529") (param $$address i32) (result v128) (v128.load64_splat offset=65529 (local.get $$address))) +)`); + +// ./test/core/simd/simd_load_splat.wast:43 +assert_return( + () => invoke($0, `v128.load8_splat`, [0]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:44 +assert_return( + () => invoke($0, `v128.load8_splat`, [1]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:45 +assert_return( + () => invoke($0, `v128.load8_splat`, [2]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:46 +assert_return( + () => invoke($0, `v128.load8_splat`, [3]), + [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:47 +assert_return( + () => invoke($0, `v128.load8_splat`, [65535]), + [ + i8x16([0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:48 +assert_return( + () => invoke($0, `v128.load16_splat`, [4]), + [i16x8([0x504, 0x504, 0x504, 0x504, 0x504, 0x504, 0x504, 0x504])], +); + +// ./test/core/simd/simd_load_splat.wast:49 +assert_return( + () => invoke($0, `v128.load16_splat`, [5]), + [i16x8([0x605, 0x605, 0x605, 0x605, 0x605, 0x605, 0x605, 0x605])], +); + +// ./test/core/simd/simd_load_splat.wast:50 +assert_return( + () => invoke($0, `v128.load16_splat`, [6]), + [i16x8([0x706, 0x706, 0x706, 0x706, 0x706, 0x706, 0x706, 0x706])], +); + +// ./test/core/simd/simd_load_splat.wast:51 +assert_return( + () => invoke($0, `v128.load16_splat`, [7]), + [i16x8([0x807, 0x807, 0x807, 0x807, 0x807, 0x807, 0x807, 0x807])], +); + +// ./test/core/simd/simd_load_splat.wast:52 +assert_return( + () => invoke($0, `v128.load16_splat`, [65534]), + [i16x8([0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e])], +); + +// ./test/core/simd/simd_load_splat.wast:53 +assert_return( + () => invoke($0, `v128.load32_splat`, [8]), + [i32x4([0xb0a0908, 0xb0a0908, 0xb0a0908, 0xb0a0908])], +); + +// ./test/core/simd/simd_load_splat.wast:54 +assert_return( + () => invoke($0, `v128.load32_splat`, [9]), + [i32x4([0xc0b0a09, 0xc0b0a09, 0xc0b0a09, 0xc0b0a09])], +); + +// ./test/core/simd/simd_load_splat.wast:55 +assert_return( + () => invoke($0, `v128.load32_splat`, [10]), + [i32x4([0xd0c0b0a, 0xd0c0b0a, 0xd0c0b0a, 0xd0c0b0a])], +); + +// ./test/core/simd/simd_load_splat.wast:56 +assert_return( + () => invoke($0, `v128.load32_splat`, [11]), + [i32x4([0xe0d0c0b, 0xe0d0c0b, 0xe0d0c0b, 0xe0d0c0b])], +); + +// ./test/core/simd/simd_load_splat.wast:57 +assert_return( + () => invoke($0, `v128.load32_splat`, [65532]), + [i32x4([0x1f1e1d1c, 0x1f1e1d1c, 0x1f1e1d1c, 0x1f1e1d1c])], +); + +// ./test/core/simd/simd_load_splat.wast:58 +assert_return(() => invoke($0, `v128.load64_splat`, [12]), [i64x2([0xf0e0d0cn, 0xf0e0d0cn])]); + +// ./test/core/simd/simd_load_splat.wast:59 +assert_return(() => invoke($0, `v128.load64_splat`, [13]), [i64x2([0xf0e0dn, 0xf0e0dn])]); + +// ./test/core/simd/simd_load_splat.wast:60 +assert_return(() => invoke($0, `v128.load64_splat`, [14]), [i64x2([0xf0en, 0xf0en])]); + +// ./test/core/simd/simd_load_splat.wast:61 +assert_return(() => invoke($0, `v128.load64_splat`, [15]), [i64x2([0xfn, 0xfn])]); + +// ./test/core/simd/simd_load_splat.wast:62 +assert_return( + () => invoke($0, `v128.load64_splat`, [65528]), + [i64x2([0x1f1e1d1c1b1a1918n, 0x1f1e1d1c1b1a1918n])], +); + +// ./test/core/simd/simd_load_splat.wast:65 +assert_return( + () => invoke($0, `v8x16.offset0`, [0]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:66 +assert_return( + () => invoke($0, `v8x16.align1`, [0]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:67 +assert_return( + () => invoke($0, `v8x16.offset1_align1`, [0]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:68 +assert_return( + () => invoke($0, `v8x16.offset2_align1`, [0]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:69 +assert_return( + () => invoke($0, `v8x16.offset15_align1`, [0]), + [ + i8x16([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:70 +assert_return( + () => invoke($0, `v8x16.offset0`, [1]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:71 +assert_return( + () => invoke($0, `v8x16.align1`, [1]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:72 +assert_return( + () => invoke($0, `v8x16.offset1_align1`, [1]), + [ + i8x16([0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:73 +assert_return( + () => invoke($0, `v8x16.offset2_align1`, [1]), + [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:74 +assert_return( + () => invoke($0, `v8x16.offset15_align1`, [1]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:75 +assert_return( + () => invoke($0, `v8x16.offset0`, [65535]), + [ + i8x16([0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:76 +assert_return( + () => invoke($0, `v8x16.align1`, [65535]), + [ + i8x16([0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:78 +assert_return( + () => invoke($0, `v16x8.offset0`, [0]), + [i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100])], +); + +// ./test/core/simd/simd_load_splat.wast:79 +assert_return( + () => invoke($0, `v16x8.align1`, [0]), + [i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100])], +); + +// ./test/core/simd/simd_load_splat.wast:80 +assert_return( + () => invoke($0, `v16x8.offset1_align1`, [0]), + [i16x8([0x201, 0x201, 0x201, 0x201, 0x201, 0x201, 0x201, 0x201])], +); + +// ./test/core/simd/simd_load_splat.wast:81 +assert_return( + () => invoke($0, `v16x8.offset2_align1`, [0]), + [i16x8([0x302, 0x302, 0x302, 0x302, 0x302, 0x302, 0x302, 0x302])], +); + +// ./test/core/simd/simd_load_splat.wast:82 +assert_return( + () => invoke($0, `v16x8.offset15_align2`, [0]), + [i16x8([0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf])], +); + +// ./test/core/simd/simd_load_splat.wast:83 +assert_return( + () => invoke($0, `v16x8.offset0`, [1]), + [i16x8([0x201, 0x201, 0x201, 0x201, 0x201, 0x201, 0x201, 0x201])], +); + +// ./test/core/simd/simd_load_splat.wast:84 +assert_return( + () => invoke($0, `v16x8.align1`, [1]), + [i16x8([0x201, 0x201, 0x201, 0x201, 0x201, 0x201, 0x201, 0x201])], +); + +// ./test/core/simd/simd_load_splat.wast:85 +assert_return( + () => invoke($0, `v16x8.offset1_align1`, [1]), + [i16x8([0x302, 0x302, 0x302, 0x302, 0x302, 0x302, 0x302, 0x302])], +); + +// ./test/core/simd/simd_load_splat.wast:86 +assert_return( + () => invoke($0, `v16x8.offset2_align1`, [1]), + [i16x8([0x403, 0x403, 0x403, 0x403, 0x403, 0x403, 0x403, 0x403])], +); + +// ./test/core/simd/simd_load_splat.wast:87 +assert_return( + () => invoke($0, `v16x8.offset15_align2`, [1]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_splat.wast:88 +assert_return( + () => invoke($0, `v16x8.offset0`, [65534]), + [i16x8([0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e])], +); + +// ./test/core/simd/simd_load_splat.wast:89 +assert_return( + () => invoke($0, `v16x8.align1`, [65534]), + [i16x8([0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e, 0x1f1e])], +); + +// ./test/core/simd/simd_load_splat.wast:91 +assert_return( + () => invoke($0, `v32x4.offset0`, [0]), + [i32x4([0x3020100, 0x3020100, 0x3020100, 0x3020100])], +); + +// ./test/core/simd/simd_load_splat.wast:92 +assert_return( + () => invoke($0, `v32x4.align1`, [0]), + [i32x4([0x3020100, 0x3020100, 0x3020100, 0x3020100])], +); + +// ./test/core/simd/simd_load_splat.wast:93 +assert_return( + () => invoke($0, `v32x4.offset1_align1`, [0]), + [i32x4([0x4030201, 0x4030201, 0x4030201, 0x4030201])], +); + +// ./test/core/simd/simd_load_splat.wast:94 +assert_return( + () => invoke($0, `v32x4.offset2_align2`, [0]), + [i32x4([0x5040302, 0x5040302, 0x5040302, 0x5040302])], +); + +// ./test/core/simd/simd_load_splat.wast:95 +assert_return(() => invoke($0, `v32x4.offset15_align4`, [0]), [i32x4([0xf, 0xf, 0xf, 0xf])]); + +// ./test/core/simd/simd_load_splat.wast:96 +assert_return( + () => invoke($0, `v32x4.offset0`, [1]), + [i32x4([0x4030201, 0x4030201, 0x4030201, 0x4030201])], +); + +// ./test/core/simd/simd_load_splat.wast:97 +assert_return( + () => invoke($0, `v32x4.align1`, [1]), + [i32x4([0x4030201, 0x4030201, 0x4030201, 0x4030201])], +); + +// ./test/core/simd/simd_load_splat.wast:98 +assert_return( + () => invoke($0, `v32x4.offset1_align1`, [1]), + [i32x4([0x5040302, 0x5040302, 0x5040302, 0x5040302])], +); + +// ./test/core/simd/simd_load_splat.wast:99 +assert_return( + () => invoke($0, `v32x4.offset2_align2`, [1]), + [i32x4([0x6050403, 0x6050403, 0x6050403, 0x6050403])], +); + +// ./test/core/simd/simd_load_splat.wast:100 +assert_return(() => invoke($0, `v32x4.offset15_align4`, [1]), [i32x4([0x0, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_splat.wast:101 +assert_return( + () => invoke($0, `v32x4.offset0`, [65532]), + [i32x4([0x1f1e1d1c, 0x1f1e1d1c, 0x1f1e1d1c, 0x1f1e1d1c])], +); + +// ./test/core/simd/simd_load_splat.wast:102 +assert_return( + () => invoke($0, `v32x4.align1`, [65532]), + [i32x4([0x1f1e1d1c, 0x1f1e1d1c, 0x1f1e1d1c, 0x1f1e1d1c])], +); + +// ./test/core/simd/simd_load_splat.wast:104 +assert_return(() => invoke($0, `v64x2.offset0`, [0]), [i64x2([0x706050403020100n, 0x706050403020100n])]); + +// ./test/core/simd/simd_load_splat.wast:105 +assert_return(() => invoke($0, `v64x2.align1`, [0]), [i64x2([0x706050403020100n, 0x706050403020100n])]); + +// ./test/core/simd/simd_load_splat.wast:106 +assert_return( + () => invoke($0, `v64x2.offset1_align2`, [0]), + [i64x2([0x807060504030201n, 0x807060504030201n])], +); + +// ./test/core/simd/simd_load_splat.wast:107 +assert_return( + () => invoke($0, `v64x2.offset2_align4`, [0]), + [i64x2([0x908070605040302n, 0x908070605040302n])], +); + +// ./test/core/simd/simd_load_splat.wast:108 +assert_return(() => invoke($0, `v64x2.offset15_align8`, [0]), [i64x2([0xfn, 0xfn])]); + +// ./test/core/simd/simd_load_splat.wast:109 +assert_return(() => invoke($0, `v64x2.offset0`, [1]), [i64x2([0x807060504030201n, 0x807060504030201n])]); + +// ./test/core/simd/simd_load_splat.wast:110 +assert_return(() => invoke($0, `v64x2.align1`, [1]), [i64x2([0x807060504030201n, 0x807060504030201n])]); + +// ./test/core/simd/simd_load_splat.wast:111 +assert_return( + () => invoke($0, `v64x2.offset1_align2`, [1]), + [i64x2([0x908070605040302n, 0x908070605040302n])], +); + +// ./test/core/simd/simd_load_splat.wast:112 +assert_return( + () => invoke($0, `v64x2.offset2_align4`, [1]), + [i64x2([0xa09080706050403n, 0xa09080706050403n])], +); + +// ./test/core/simd/simd_load_splat.wast:113 +assert_return(() => invoke($0, `v64x2.offset15_align8`, [1]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_load_splat.wast:114 +assert_return( + () => invoke($0, `v64x2.offset0`, [65528]), + [i64x2([0x1f1e1d1c1b1a1918n, 0x1f1e1d1c1b1a1918n])], +); + +// ./test/core/simd/simd_load_splat.wast:115 +assert_return( + () => invoke($0, `v64x2.align1`, [65528]), + [i64x2([0x1f1e1d1c1b1a1918n, 0x1f1e1d1c1b1a1918n])], +); + +// ./test/core/simd/simd_load_splat.wast:119 +assert_trap(() => invoke($0, `v128.load8_splat`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:120 +assert_trap(() => invoke($0, `v128.load16_splat`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:121 +assert_trap(() => invoke($0, `v128.load32_splat`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:122 +assert_trap(() => invoke($0, `v128.load64_splat`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:123 +assert_trap(() => invoke($0, `v128.load8_splat`, [65536]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:124 +assert_trap(() => invoke($0, `v128.load16_splat`, [65535]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:125 +assert_trap(() => invoke($0, `v128.load32_splat`, [65533]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:126 +assert_trap(() => invoke($0, `v128.load64_splat`, [65529]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:128 +assert_trap(() => invoke($0, `v8x16.offset1_align1`, [65535]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:129 +assert_trap(() => invoke($0, `v8x16.offset2_align1`, [65535]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:130 +assert_trap(() => invoke($0, `v8x16.offset15_align1`, [65535]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:131 +assert_trap(() => invoke($0, `v16x8.offset1_align1`, [65534]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:132 +assert_trap(() => invoke($0, `v16x8.offset2_align1`, [65534]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:133 +assert_trap(() => invoke($0, `v16x8.offset15_align2`, [65534]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:134 +assert_trap(() => invoke($0, `v32x4.offset1_align1`, [65532]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:135 +assert_trap(() => invoke($0, `v32x4.offset2_align2`, [65532]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:136 +assert_trap(() => invoke($0, `v32x4.offset15_align4`, [65532]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:137 +assert_trap(() => invoke($0, `v64x2.offset1_align2`, [65528]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:138 +assert_trap(() => invoke($0, `v64x2.offset2_align4`, [65528]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:139 +assert_trap(() => invoke($0, `v64x2.offset15_align8`, [65528]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:141 +assert_trap(() => invoke($0, `v8x16.offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:142 +assert_trap(() => invoke($0, `v16x8.offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:143 +assert_trap(() => invoke($0, `v32x4.offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:144 +assert_trap(() => invoke($0, `v64x2.offset1_align2`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:146 +assert_trap(() => invoke($0, `v8x16.offset65536`, [0]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:147 +assert_trap(() => invoke($0, `v16x8.offset65535`, [0]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:148 +assert_trap(() => invoke($0, `v32x4.offset65533`, [0]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:149 +assert_trap(() => invoke($0, `v64x2.offset65529`, [0]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:150 +assert_trap(() => invoke($0, `v8x16.offset65536`, [1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:151 +assert_trap(() => invoke($0, `v16x8.offset65535`, [1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:152 +assert_trap(() => invoke($0, `v32x4.offset65533`, [1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:153 +assert_trap(() => invoke($0, `v64x2.offset65529`, [1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_splat.wast:158 +let $1 = instantiate(`(module (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A") + + (func (export "v128.load8_splat-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load8_splat (i32.const 0)))) + ) + (func (export "v128.load16_splat-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load16_splat (i32.const 1)))) + ) + (func (export "v128.load32_splat-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load32_splat (i32.const 2)))) + ) + (func (export "v128.load64_splat-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load64_splat (i32.const 9)))) + ) + (func (export "v128.load8_splat-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load8_splat (i32.const 3)))) + ) + (func (export "v128.load16_splat-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load16_splat (i32.const 4)))) + ) + (func (export "v128.load32_splat-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load32_splat (i32.const 5)))) + ) + (func (export "v128.load64_splat-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load64_splat (i32.const 10)))) + ) + (func (export "v128.load8_splat-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load8_splat (i32.const 6))) + ) + (func (export "v128.load16_splat-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load16_splat (i32.const 7))) + ) + (func (export "v128.load32_splat-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load32_splat (i32.const 8))) + ) + (func (export "v128.load64_splat-extract_lane_s-operand") (result i32) + (i8x16.extract_lane_s 0 (v128.load64_splat (i32.const 11))) + ) +)`); + +// ./test/core/simd/simd_load_splat.wast:198 +assert_return( + () => invoke($1, `v128.load8_splat-in-block`, []), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:199 +assert_return( + () => invoke($1, `v128.load16_splat-in-block`, []), + [i16x8([0x201, 0x201, 0x201, 0x201, 0x201, 0x201, 0x201, 0x201])], +); + +// ./test/core/simd/simd_load_splat.wast:200 +assert_return( + () => invoke($1, `v128.load32_splat-in-block`, []), + [i32x4([0x5040302, 0x5040302, 0x5040302, 0x5040302])], +); + +// ./test/core/simd/simd_load_splat.wast:201 +assert_return(() => invoke($1, `v128.load64_splat-in-block`, []), [i64x2([0xa09n, 0xa09n])]); + +// ./test/core/simd/simd_load_splat.wast:202 +assert_return( + () => invoke($1, `v128.load8_splat-as-br-value`, []), + [ + i8x16([0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3]), + ], +); + +// ./test/core/simd/simd_load_splat.wast:203 +assert_return( + () => invoke($1, `v128.load16_splat-as-br-value`, []), + [i16x8([0x504, 0x504, 0x504, 0x504, 0x504, 0x504, 0x504, 0x504])], +); + +// ./test/core/simd/simd_load_splat.wast:204 +assert_return( + () => invoke($1, `v128.load32_splat-as-br-value`, []), + [i32x4([0x8070605, 0x8070605, 0x8070605, 0x8070605])], +); + +// ./test/core/simd/simd_load_splat.wast:205 +assert_return(() => invoke($1, `v128.load64_splat-as-br-value`, []), [i64x2([0xan, 0xan])]); + +// ./test/core/simd/simd_load_splat.wast:206 +assert_return(() => invoke($1, `v128.load8_splat-extract_lane_s-operand`, []), [value("i32", 6)]); + +// ./test/core/simd/simd_load_splat.wast:207 +assert_return(() => invoke($1, `v128.load16_splat-extract_lane_s-operand`, []), [value("i32", 7)]); + +// ./test/core/simd/simd_load_splat.wast:208 +assert_return(() => invoke($1, `v128.load32_splat-extract_lane_s-operand`, []), [value("i32", 8)]); + +// ./test/core/simd/simd_load_splat.wast:209 +assert_return(() => invoke($1, `v128.load64_splat-extract_lane_s-operand`, []), [value("i32", 0)]); + +// ./test/core/simd/simd_load_splat.wast:214 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load8_splat (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_splat.wast:215 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load16_splat (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_splat.wast:216 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load32_splat (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_splat.wast:217 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load64_splat (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_splat.wast:222 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i8x16.load_splat (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_splat.wast:223 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i16x8.load_splat (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_splat.wast:224 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i32x4.load_splat (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_splat.wast:225 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i64x2.load_splat (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_splat.wast:230 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load8_splat-arg-empty (result v128) + (v128.load8_splat) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_splat.wast:238 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load16_splat-arg-empty (result v128) + (v128.load16_splat) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_splat.wast:246 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load32_splat-arg-empty (result v128) + (v128.load32_splat) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_splat.wast:254 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load64_splat-arg-empty (result v128) + (v128.load64_splat) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_load_zero.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_load_zero.wast.js new file mode 100644 index 0000000000..00f6573b37 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_load_zero.wast.js @@ -0,0 +1,264 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_load_zero.wast + +// ./test/core/simd/simd_load_zero.wast:3 +let $0 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F\\80\\81\\82\\83\\84\\85\\86\\87\\88\\89") + (data (i32.const 65520) "\\0A\\0B\\0C\\0D\\0E\\0F\\80\\81\\82\\83\\84\\85\\86\\87\\88\\89") + + (func (export "v128.load32_zero") (param $$0 i32) (result v128) + (v128.load32_zero (local.get $$0)) + ) + (func (export "v128.load64_zero") (param $$0 i32) (result v128) + (v128.load64_zero (local.get $$0)) + ) + + ;; load by a constant amount + (func (export "v128.load32_zero_const0") (result v128) + (v128.load32_zero (i32.const 0)) + ) + (func (export "v128.load64_zero_const8") (result v128) + (v128.load64_zero (i32.const 8)) + ) + + ;; load data with different offset/align arguments + ;; i16x8 + (func (export "v128.load32_zero_offset0") (param $$0 i32) (result v128) + (v128.load32_zero offset=0 (local.get $$0)) + ) + (func (export "v128.load32_zero_align1") (param $$0 i32) (result v128) + (v128.load32_zero align=1 (local.get $$0)) + ) + (func (export "v128.load32_zero_offset0_align1") (param $$0 i32) (result v128) + (v128.load32_zero offset=0 align=1 (local.get $$0)) + ) + (func (export "v128.load32_zero_offset1_align1") (param $$0 i32) (result v128) + (v128.load32_zero offset=1 align=1 (local.get $$0)) + ) + (func (export "v128.load32_zero_offset10_align4") (param $$0 i32) (result v128) + (v128.load32_zero offset=10 align=4 (local.get $$0)) + ) + (func (export "v128.load64_zero_offset0") (param $$0 i32) (result v128) + (v128.load64_zero offset=0 (local.get $$0)) + ) + (func (export "v128.load64_zero_align1") (param $$0 i32) (result v128) + (v128.load64_zero align=1 (local.get $$0)) + ) + (func (export "v128.load64_zero_offset0_align1") (param $$0 i32) (result v128) + (v128.load64_zero offset=0 align=1 (local.get $$0)) + ) + (func (export "v128.load64_zero_offset1_align1") (param $$0 i32) (result v128) + (v128.load64_zero offset=1 align=1 (local.get $$0)) + ) + (func (export "v128.load64_zero_offset10_align4") (param $$0 i32) (result v128) + (v128.load64_zero offset=10 align=4 (local.get $$0)) + ) + (func (export "v128.load64_zero_offset20_align8") (param $$0 i32) (result v128) + (v128.load64_zero offset=20 align=8 (local.get $$0)) + ) +)`); + +// ./test/core/simd/simd_load_zero.wast:62 +assert_return(() => invoke($0, `v128.load32_zero`, [0]), [i32x4([0x3020100, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_zero.wast:63 +assert_return(() => invoke($0, `v128.load64_zero`, [0]), [i64x2([0x706050403020100n, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:64 +assert_return(() => invoke($0, `v128.load32_zero`, [10]), [i32x4([0xd0c0b0a, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_zero.wast:65 +assert_return(() => invoke($0, `v128.load64_zero`, [10]), [i64x2([0x81800f0e0d0c0b0an, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:66 +assert_return(() => invoke($0, `v128.load32_zero`, [20]), [i32x4([0x87868584, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_zero.wast:67 +assert_return(() => invoke($0, `v128.load64_zero`, [20]), [i64x2([0x898887868584n, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:70 +assert_return(() => invoke($0, `v128.load32_zero_const0`, []), [i32x4([0x3020100, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_zero.wast:71 +assert_return(() => invoke($0, `v128.load64_zero_const8`, []), [i64x2([0xf0e0d0c0b0a0908n, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:75 +assert_return(() => invoke($0, `v128.load32_zero_offset0`, [0]), [i32x4([0x3020100, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_zero.wast:76 +assert_return(() => invoke($0, `v128.load32_zero_align1`, [1]), [i32x4([0x4030201, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_zero.wast:77 +assert_return( + () => invoke($0, `v128.load32_zero_offset0_align1`, [2]), + [i32x4([0x5040302, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_zero.wast:78 +assert_return( + () => invoke($0, `v128.load32_zero_offset10_align4`, [3]), + [i32x4([0x800f0e0d, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_load_zero.wast:81 +assert_return(() => invoke($0, `v128.load64_zero_offset0`, [0]), [i64x2([0x706050403020100n, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:82 +assert_return(() => invoke($0, `v128.load64_zero_align1`, [1]), [i64x2([0x807060504030201n, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:83 +assert_return( + () => invoke($0, `v128.load64_zero_offset0_align1`, [2]), + [i64x2([0x908070605040302n, 0x0n])], +); + +// ./test/core/simd/simd_load_zero.wast:84 +assert_return( + () => invoke($0, `v128.load64_zero_offset10_align4`, [3]), + [i64x2([0x84838281800f0e0dn, 0x0n])], +); + +// ./test/core/simd/simd_load_zero.wast:85 +assert_return(() => invoke($0, `v128.load64_zero_offset20_align8`, [4]), [i64x2([0x8988n, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:88 +assert_trap(() => invoke($0, `v128.load32_zero`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_zero.wast:89 +assert_trap(() => invoke($0, `v128.load64_zero`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_zero.wast:91 +assert_trap(() => invoke($0, `v128.load32_zero_offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_zero.wast:92 +assert_trap(() => invoke($0, `v128.load64_zero_offset1_align1`, [-1]), `out of bounds memory access`); + +// ./test/core/simd/simd_load_zero.wast:95 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load32_zero (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_zero.wast:96 +assert_invalid( + () => instantiate(`(module (memory 0) (func (result v128) (v128.load64_zero (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_zero.wast:100 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load32_zero-arg-empty (result v128) + (v128.load32_zero) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_zero.wast:108 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.load64_zero-arg-empty (result v128) + (v128.load64_zero) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_load_zero.wast:119 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i16x8.load16x4_s (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_zero.wast:120 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i16x8.load16x4_u (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_zero.wast:121 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i32x4.load32x2_s (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_zero.wast:122 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i32x4.load32x2_u (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_zero.wast:123 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i64x2.load64x1_s (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_zero.wast:124 +assert_malformed( + () => instantiate(`(memory 1) (func (drop (i64x2.load64x1_u (i32.const 0)))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_load_zero.wast:127 +let $1 = instantiate(`(module + (memory 1) + (data (i32.const 0) "\\00\\01\\02\\03\\04\\05\\06\\07\\08\\09\\0A\\0B\\0C\\0D\\0E\\0F\\80\\81\\82\\83\\84\\85\\86\\87\\88\\89") + (func (export "v128.load32_zero-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load32_zero (i32.const 0)))) + ) + (func (export "v128.load64_zero-in-block") (result v128) + (block (result v128) (block (result v128) (v128.load64_zero (i32.const 1)))) + ) + (func (export "v128.load32_zero-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load32_zero (i32.const 6)))) + ) + (func (export "v128.load64_zero-as-br-value") (result v128) + (block (result v128) (br 0 (v128.load64_zero (i32.const 7)))) + ) + (func (export "v128.load32_zero-extract_lane_s-operand") (result i32) + (i32x4.extract_lane 0 (v128.load32_zero (i32.const 12))) + ) + (func (export "v128.load64_zero-extract_lane_s-operand") (result i64) + (i64x2.extract_lane 0 (v128.load64_zero (i32.const 13))) + ) +)`); + +// ./test/core/simd/simd_load_zero.wast:149 +assert_return(() => invoke($1, `v128.load32_zero-in-block`, []), [i32x4([0x3020100, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_zero.wast:150 +assert_return(() => invoke($1, `v128.load64_zero-in-block`, []), [i64x2([0x807060504030201n, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:151 +assert_return(() => invoke($1, `v128.load32_zero-as-br-value`, []), [i32x4([0x9080706, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_load_zero.wast:152 +assert_return(() => invoke($1, `v128.load64_zero-as-br-value`, []), [i64x2([0xe0d0c0b0a090807n, 0x0n])]); + +// ./test/core/simd/simd_load_zero.wast:153 +assert_return(() => invoke($1, `v128.load32_zero-extract_lane_s-operand`, []), [value("i32", 252579084)]); + +// ./test/core/simd/simd_load_zero.wast:154 +assert_return( + () => invoke($1, `v128.load64_zero-extract_lane_s-operand`, []), + [value("i64", -8898124946043105779n)], +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_splat.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_splat.wast.js new file mode 100644 index 0000000000..466e9ea901 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_splat.wast.js @@ -0,0 +1,1607 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_splat.wast + +// ./test/core/simd/simd_splat.wast:3 +let $0 = instantiate(`(module + (func (export "i8x16.splat") (param i32) (result v128) (i8x16.splat (local.get 0))) + (func (export "i16x8.splat") (param i32) (result v128) (i16x8.splat (local.get 0))) + (func (export "i32x4.splat") (param i32) (result v128) (i32x4.splat (local.get 0))) + (func (export "f32x4.splat") (param f32) (result v128) (f32x4.splat (local.get 0))) + (func (export "i64x2.splat") (param i64) (result v128) (i64x2.splat (local.get 0))) + (func (export "f64x2.splat") (param f64) (result v128) (f64x2.splat (local.get 0))) +)`); + +// ./test/core/simd/simd_splat.wast:12 +assert_return( + () => invoke($0, `i8x16.splat`, [0]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_splat.wast:13 +assert_return( + () => invoke($0, `i8x16.splat`, [5]), + [ + i8x16([0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5]), + ], +); + +// ./test/core/simd/simd_splat.wast:14 +assert_return( + () => invoke($0, `i8x16.splat`, [-5]), + [ + i8x16([0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb]), + ], +); + +// ./test/core/simd/simd_splat.wast:15 +assert_return( + () => invoke($0, `i8x16.splat`, [257]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_splat.wast:16 +assert_return( + () => invoke($0, `i8x16.splat`, [255]), + [ + i8x16([0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]), + ], +); + +// ./test/core/simd/simd_splat.wast:17 +assert_return( + () => invoke($0, `i8x16.splat`, [-128]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_splat.wast:18 +assert_return( + () => invoke($0, `i8x16.splat`, [127]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_splat.wast:19 +assert_return( + () => invoke($0, `i8x16.splat`, [-129]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_splat.wast:20 +assert_return( + () => invoke($0, `i8x16.splat`, [128]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_splat.wast:21 +assert_return( + () => invoke($0, `i8x16.splat`, [65407]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_splat.wast:22 +assert_return( + () => invoke($0, `i8x16.splat`, [128]), + [ + i8x16([0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80]), + ], +); + +// ./test/core/simd/simd_splat.wast:23 +assert_return( + () => invoke($0, `i8x16.splat`, [171]), + [i32x4([0xabababab, 0xabababab, 0xabababab, 0xabababab])], +); + +// ./test/core/simd/simd_splat.wast:25 +assert_return(() => invoke($0, `i16x8.splat`, [0]), [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_splat.wast:26 +assert_return(() => invoke($0, `i16x8.splat`, [5]), [i16x8([0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5])]); + +// ./test/core/simd/simd_splat.wast:27 +assert_return( + () => invoke($0, `i16x8.splat`, [-5]), + [i16x8([0xfffb, 0xfffb, 0xfffb, 0xfffb, 0xfffb, 0xfffb, 0xfffb, 0xfffb])], +); + +// ./test/core/simd/simd_splat.wast:28 +assert_return( + () => invoke($0, `i16x8.splat`, [65537]), + [i16x8([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_splat.wast:29 +assert_return( + () => invoke($0, `i16x8.splat`, [65535]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_splat.wast:30 +assert_return( + () => invoke($0, `i16x8.splat`, [-32768]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_splat.wast:31 +assert_return( + () => invoke($0, `i16x8.splat`, [32767]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_splat.wast:32 +assert_return( + () => invoke($0, `i16x8.splat`, [-32769]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_splat.wast:33 +assert_return( + () => invoke($0, `i16x8.splat`, [32768]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_splat.wast:34 +assert_return( + () => invoke($0, `i16x8.splat`, [-32769]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_splat.wast:35 +assert_return( + () => invoke($0, `i16x8.splat`, [32768]), + [i16x8([0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000])], +); + +// ./test/core/simd/simd_splat.wast:36 +assert_return( + () => invoke($0, `i16x8.splat`, [43981]), + [i32x4([0xabcdabcd, 0xabcdabcd, 0xabcdabcd, 0xabcdabcd])], +); + +// ./test/core/simd/simd_splat.wast:37 +assert_return( + () => invoke($0, `i16x8.splat`, [12345]), + [i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039])], +); + +// ./test/core/simd/simd_splat.wast:38 +assert_return( + () => invoke($0, `i16x8.splat`, [4660]), + [i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234])], +); + +// ./test/core/simd/simd_splat.wast:40 +assert_return(() => invoke($0, `i32x4.splat`, [0]), [i32x4([0x0, 0x0, 0x0, 0x0])]); + +// ./test/core/simd/simd_splat.wast:41 +assert_return(() => invoke($0, `i32x4.splat`, [5]), [i32x4([0x5, 0x5, 0x5, 0x5])]); + +// ./test/core/simd/simd_splat.wast:42 +assert_return( + () => invoke($0, `i32x4.splat`, [-5]), + [i32x4([0xfffffffb, 0xfffffffb, 0xfffffffb, 0xfffffffb])], +); + +// ./test/core/simd/simd_splat.wast:43 +assert_return( + () => invoke($0, `i32x4.splat`, [-1]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_splat.wast:44 +assert_return( + () => invoke($0, `i32x4.splat`, [-1]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_splat.wast:45 +assert_return( + () => invoke($0, `i32x4.splat`, [-2147483648]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_splat.wast:46 +assert_return( + () => invoke($0, `i32x4.splat`, [2147483647]), + [i32x4([0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff])], +); + +// ./test/core/simd/simd_splat.wast:47 +assert_return( + () => invoke($0, `i32x4.splat`, [-2147483648]), + [i32x4([0x80000000, 0x80000000, 0x80000000, 0x80000000])], +); + +// ./test/core/simd/simd_splat.wast:48 +assert_return( + () => invoke($0, `i32x4.splat`, [1234567890]), + [i32x4([0x499602d2, 0x499602d2, 0x499602d2, 0x499602d2])], +); + +// ./test/core/simd/simd_splat.wast:49 +assert_return( + () => invoke($0, `i32x4.splat`, [305419896]), + [i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678])], +); + +// ./test/core/simd/simd_splat.wast:51 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 0)]), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 0), + value("f32", 0), + value("f32", 0), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:52 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 1.1)]), + [ + new F32x4Pattern( + value("f32", 1.1), + value("f32", 1.1), + value("f32", 1.1), + value("f32", 1.1), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:53 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", -1.1)]), + [ + new F32x4Pattern( + value("f32", -1.1), + value("f32", -1.1), + value("f32", -1.1), + value("f32", -1.1), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:54 +assert_return( + () => invoke($0, `f32x4.splat`, [ + value("f32", 100000000000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 100000000000000000000000000000000000000), + value("f32", 100000000000000000000000000000000000000), + value("f32", 100000000000000000000000000000000000000), + value("f32", 100000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:55 +assert_return( + () => invoke($0, `f32x4.splat`, [ + value("f32", -100000000000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", -100000000000000000000000000000000000000), + value("f32", -100000000000000000000000000000000000000), + value("f32", -100000000000000000000000000000000000000), + value("f32", -100000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:56 +assert_return( + () => invoke($0, `f32x4.splat`, [ + value("f32", 340282350000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + value("f32", 340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:57 +assert_return( + () => invoke($0, `f32x4.splat`, [ + value("f32", -340282350000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + value("f32", -340282350000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:58 +assert_return( + () => invoke($0, `f32x4.splat`, [ + value("f32", 170141180000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", 170141180000000000000000000000000000000), + value("f32", 170141180000000000000000000000000000000), + value("f32", 170141180000000000000000000000000000000), + value("f32", 170141180000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:59 +assert_return( + () => invoke($0, `f32x4.splat`, [ + value("f32", -170141180000000000000000000000000000000), + ]), + [ + new F32x4Pattern( + value("f32", -170141180000000000000000000000000000000), + value("f32", -170141180000000000000000000000000000000), + value("f32", -170141180000000000000000000000000000000), + value("f32", -170141180000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:60 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", Infinity)]), + [ + new F32x4Pattern( + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + value("f32", Infinity), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:61 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", -Infinity)]), + [ + new F32x4Pattern( + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + value("f32", -Infinity), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:62 +assert_return( + () => invoke($0, `f32x4.splat`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + [ + new F32x4Pattern( + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + bytes("f32", [0x0, 0x0, 0xc0, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:63 +assert_return( + () => invoke($0, `f32x4.splat`, [bytes("f32", [0x1, 0x0, 0x80, 0x7f])]), + [ + new F32x4Pattern( + bytes("f32", [0x1, 0x0, 0x80, 0x7f]), + bytes("f32", [0x1, 0x0, 0x80, 0x7f]), + bytes("f32", [0x1, 0x0, 0x80, 0x7f]), + bytes("f32", [0x1, 0x0, 0x80, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:64 +assert_return( + () => invoke($0, `f32x4.splat`, [bytes("f32", [0xff, 0xff, 0xff, 0x7f])]), + [ + new F32x4Pattern( + bytes("f32", [0xff, 0xff, 0xff, 0x7f]), + bytes("f32", [0xff, 0xff, 0xff, 0x7f]), + bytes("f32", [0xff, 0xff, 0xff, 0x7f]), + bytes("f32", [0xff, 0xff, 0xff, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:65 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 123456790)]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:66 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 123456790)]), + [ + new F32x4Pattern( + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + value("f32", 123456790), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:67 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 81985530000000000)]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:68 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 81985530000000000)]), + [ + new F32x4Pattern( + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + value("f32", 81985530000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:69 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 1234567900000000000000000000)]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:70 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 1234567900000000000000000000)]), + [ + new F32x4Pattern( + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + value("f32", 1234567900000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:71 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 42984030000000000000000)]), + [ + new F32x4Pattern( + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + value("f32", 42984030000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:72 +assert_return( + () => invoke($0, `f32x4.splat`, [value("f32", 156374990000)]), + [ + new F32x4Pattern( + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + value("f32", 156374990000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:74 +assert_return(() => invoke($0, `i64x2.splat`, [0n]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_splat.wast:75 +assert_return(() => invoke($0, `i64x2.splat`, [0n]), [i64x2([0x0n, 0x0n])]); + +// ./test/core/simd/simd_splat.wast:76 +assert_return(() => invoke($0, `i64x2.splat`, [1n]), [i64x2([0x1n, 0x1n])]); + +// ./test/core/simd/simd_splat.wast:77 +assert_return( + () => invoke($0, `i64x2.splat`, [-1n]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_splat.wast:78 +assert_return( + () => invoke($0, `i64x2.splat`, [-9223372036854775808n]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_splat.wast:79 +assert_return( + () => invoke($0, `i64x2.splat`, [-9223372036854775808n]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_splat.wast:80 +assert_return( + () => invoke($0, `i64x2.splat`, [9223372036854775807n]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_splat.wast:81 +assert_return( + () => invoke($0, `i64x2.splat`, [-1n]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_splat.wast:82 +assert_return( + () => invoke($0, `i64x2.splat`, [9223372036854775807n]), + [i64x2([0x7fffffffffffffffn, 0x7fffffffffffffffn])], +); + +// ./test/core/simd/simd_splat.wast:83 +assert_return( + () => invoke($0, `i64x2.splat`, [-1n]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_splat.wast:84 +assert_return( + () => invoke($0, `i64x2.splat`, [-9223372036854775808n]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_splat.wast:85 +assert_return( + () => invoke($0, `i64x2.splat`, [-9223372036854775808n]), + [i64x2([0x8000000000000000n, 0x8000000000000000n])], +); + +// ./test/core/simd/simd_splat.wast:86 +assert_return( + () => invoke($0, `i64x2.splat`, [1234567890123456789n]), + [i64x2([0x112210f47de98115n, 0x112210f47de98115n])], +); + +// ./test/core/simd/simd_splat.wast:87 +assert_return( + () => invoke($0, `i64x2.splat`, [1311768467294899695n]), + [i64x2([0x1234567890abcdefn, 0x1234567890abcdefn])], +); + +// ./test/core/simd/simd_splat.wast:89 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 0)]), + [new F64x2Pattern(value("f64", 0), value("f64", 0))], +); + +// ./test/core/simd/simd_splat.wast:90 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", -0)]), + [new F64x2Pattern(value("f64", -0), value("f64", -0))], +); + +// ./test/core/simd/simd_splat.wast:91 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 1.1)]), + [new F64x2Pattern(value("f64", 1.1), value("f64", 1.1))], +); + +// ./test/core/simd/simd_splat.wast:92 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", -1.1)]), + [new F64x2Pattern(value("f64", -1.1), value("f64", -1.1))], +); + +// ./test/core/simd/simd_splat.wast:93 +assert_return( + () => invoke($0, `f64x2.splat`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:94 +assert_return( + () => invoke($0, `f64x2.splat`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:95 +assert_return( + () => invoke($0, `f64x2.splat`, [ + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + new F64x2Pattern( + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:96 +assert_return( + () => invoke($0, `f64x2.splat`, [ + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ]), + [ + new F64x2Pattern( + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + value("f64", -0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022250738585072014), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:97 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 0.5)]), + [new F64x2Pattern(value("f64", 0.5), value("f64", 0.5))], +); + +// ./test/core/simd/simd_splat.wast:98 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", -0.5)]), + [new F64x2Pattern(value("f64", -0.5), value("f64", -0.5))], +); + +// ./test/core/simd/simd_splat.wast:99 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 1)]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_splat.wast:100 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", -1)]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_splat.wast:101 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 6.283185307179586)]), + [ + new F64x2Pattern( + value("f64", 6.283185307179586), + value("f64", 6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:102 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", -6.283185307179586)]), + [ + new F64x2Pattern( + value("f64", -6.283185307179586), + value("f64", -6.283185307179586), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:103 +assert_return( + () => invoke($0, `f64x2.splat`, [ + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + new F64x2Pattern( + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:104 +assert_return( + () => invoke($0, `f64x2.splat`, [ + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ]), + [ + new F64x2Pattern( + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + value("f64", -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:105 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", Infinity)]), + [new F64x2Pattern(value("f64", Infinity), value("f64", Infinity))], +); + +// ./test/core/simd/simd_splat.wast:106 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", -Infinity)]), + [new F64x2Pattern(value("f64", -Infinity), value("f64", -Infinity))], +); + +// ./test/core/simd/simd_splat.wast:107 +assert_return( + () => invoke($0, `f64x2.splat`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:108 +assert_return( + () => invoke($0, `f64x2.splat`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:109 +assert_return( + () => invoke($0, `f64x2.splat`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0x7f]), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:110 +assert_return( + () => invoke($0, `f64x2.splat`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ]), + [ + new F64x2Pattern( + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf4, 0xff]), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:111 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 123456789)]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_splat.wast:112 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 123456789)]), + [new F64x2Pattern(value("f64", 123456789), value("f64", 123456789))], +); + +// ./test/core/simd/simd_splat.wast:113 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 1375488932539311400000000)]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:114 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 1375488932539311400000000)]), + [ + new F64x2Pattern( + value("f64", 1375488932539311400000000), + value("f64", 1375488932539311400000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:115 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 1234567890000000000000000000)]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:116 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 1234567890000000000000000000)]), + [ + new F64x2Pattern( + value("f64", 1234567890000000000000000000), + value("f64", 1234567890000000000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:117 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 721152341463170500000000000000)]), + [ + new F64x2Pattern( + value("f64", 721152341463170500000000000000), + value("f64", 721152341463170500000000000000), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:118 +assert_return( + () => invoke($0, `f64x2.splat`, [value("f64", 2623536934927580700)]), + [ + new F64x2Pattern( + value("f64", 2623536934927580700), + value("f64", 2623536934927580700), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:122 +assert_malformed( + () => instantiate(`(func (result v128) (v128.splat (i32.const 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_splat.wast:127 +assert_invalid( + () => instantiate(`(module (func (result v128) i8x16.splat (i64.const 0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:128 +assert_invalid( + () => instantiate(`(module (func (result v128) i8x16.splat (f32.const 0.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:129 +assert_invalid( + () => instantiate(`(module (func (result v128) i8x16.splat (f64.const 0.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:130 +assert_invalid( + () => instantiate(`(module (func (result v128) i16x8.splat (i64.const 1)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:131 +assert_invalid( + () => instantiate(`(module (func (result v128) i16x8.splat (f32.const 1.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:132 +assert_invalid( + () => instantiate(`(module (func (result v128) i16x8.splat (f64.const 1.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:133 +assert_invalid( + () => instantiate(`(module (func (result v128) i32x4.splat (i64.const 2)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:134 +assert_invalid( + () => instantiate(`(module (func (result v128) i32x4.splat (f32.const 2.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:135 +assert_invalid( + () => instantiate(`(module (func (result v128) i32x4.splat (f64.const 2.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:136 +assert_invalid( + () => instantiate(`(module (func (result v128) f32x4.splat (i32.const 4)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:137 +assert_invalid( + () => instantiate(`(module (func (result v128) f32x4.splat (i64.const 4)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:138 +assert_invalid( + () => instantiate(`(module (func (result v128) f32x4.splat (f64.const 4.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:139 +assert_invalid( + () => instantiate(`(module (func (result v128) i64x2.splat (i32.const 0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:140 +assert_invalid( + () => instantiate(`(module (func (result v128) i64x2.splat (f64.const 0.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:141 +assert_invalid( + () => instantiate(`(module (func (result v128) f64x2.splat (i32.const 0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:142 +assert_invalid( + () => instantiate(`(module (func (result v128) f64x2.splat (f32.const 0.0)))`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:148 +let $1 = instantiate(`(module (memory 1) + (func (export "as-v128_store-operand-1") (param i32) (result v128) + (v128.store (i32.const 0) (i8x16.splat (local.get 0))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-2") (param i32) (result v128) + (v128.store (i32.const 0) (i16x8.splat (local.get 0))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-3") (param i32) (result v128) + (v128.store (i32.const 0) (i32x4.splat (local.get 0))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-4") (param i64) (result v128) + (v128.store (i32.const 0) (i64x2.splat (local.get 0))) + (v128.load (i32.const 0))) + (func (export "as-v128_store-operand-5") (param f64) (result v128) + (v128.store (i32.const 0) (f64x2.splat (local.get 0))) + (v128.load (i32.const 0))) +)`); + +// ./test/core/simd/simd_splat.wast:166 +assert_return( + () => invoke($1, `as-v128_store-operand-1`, [1]), + [ + i8x16([0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1]), + ], +); + +// ./test/core/simd/simd_splat.wast:167 +assert_return( + () => invoke($1, `as-v128_store-operand-2`, [256]), + [i16x8([0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100])], +); + +// ./test/core/simd/simd_splat.wast:168 +assert_return( + () => invoke($1, `as-v128_store-operand-3`, [-1]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_splat.wast:169 +assert_return(() => invoke($1, `as-v128_store-operand-4`, [1n]), [i64x2([0x1n, 0x1n])]); + +// ./test/core/simd/simd_splat.wast:170 +assert_return( + () => invoke($1, `as-v128_store-operand-5`, [value("f64", -1)]), + [new F64x2Pattern(value("f64", -1), value("f64", -1))], +); + +// ./test/core/simd/simd_splat.wast:172 +let $2 = instantiate(`(module + ;; Accessing lane + (func (export "as-i8x16_extract_lane_s-operand-first") (param i32) (result i32) + (i8x16.extract_lane_s 0 (i8x16.splat (local.get 0)))) + (func (export "as-i8x16_extract_lane_s-operand-last") (param i32) (result i32) + (i8x16.extract_lane_s 15 (i8x16.splat (local.get 0)))) + (func (export "as-i16x8_extract_lane_s-operand-first") (param i32) (result i32) + (i16x8.extract_lane_s 0 (i16x8.splat (local.get 0)))) + (func (export "as-i16x8_extract_lane_s-operand-last") (param i32) (result i32) + (i16x8.extract_lane_s 7 (i16x8.splat (local.get 0)))) + (func (export "as-i32x4_extract_lane_s-operand-first") (param i32) (result i32) + (i32x4.extract_lane 0 (i32x4.splat (local.get 0)))) + (func (export "as-i32x4_extract_lane_s-operand-last") (param i32) (result i32) + (i32x4.extract_lane 3 (i32x4.splat (local.get 0)))) + (func (export "as-f32x4_extract_lane_s-operand-first") (param f32) (result f32) + (f32x4.extract_lane 0 (f32x4.splat (local.get 0)))) + (func (export "as-f32x4_extract_lane_s-operand-last") (param f32) (result f32) + (f32x4.extract_lane 3 (f32x4.splat (local.get 0)))) + (func (export "as-v8x16_swizzle-operands") (param i32) (param i32) (result v128) + (i8x16.swizzle (i8x16.splat (local.get 0)) (i8x16.splat (local.get 1)))) + (func (export "as-i64x2_extract_lane-operand-first") (param i64) (result i64) + (i64x2.extract_lane 0 (i64x2.splat (local.get 0)))) + (func (export "as-i64x2_extract_lane-operand-last") (param i64) (result i64) + (i64x2.extract_lane 1 (i64x2.splat (local.get 0)))) + (func (export "as-f64x2_extract_lane-operand-first") (param f64) (result f64) + (f64x2.extract_lane 0 (f64x2.splat (local.get 0)))) + (func (export "as-f64x2_extract_lane-operand-last") (param f64) (result f64) + (f64x2.extract_lane 1 (f64x2.splat (local.get 0)))) + + ;; Integer arithmetic + (func (export "as-i8x16_add_sub-operands") (param i32 i32 i32) (result v128) + (i8x16.add (i8x16.splat (local.get 0)) + (i8x16.sub (i8x16.splat (local.get 1)) (i8x16.splat (local.get 2))))) + (func (export "as-i16x8_add_sub_mul-operands") (param i32 i32 i32 i32) (result v128) + (i16x8.add (i16x8.splat (local.get 0)) + (i16x8.sub (i16x8.splat (local.get 1)) + (i16x8.mul (i16x8.splat (local.get 2)) (i16x8.splat (local.get 3)))))) + (func (export "as-i32x4_add_sub_mul-operands") (param i32 i32 i32 i32) (result v128) + (i32x4.add (i32x4.splat (local.get 0)) + (i32x4.sub (i32x4.splat (local.get 1)) + (i32x4.mul (i32x4.splat (local.get 2)) (i32x4.splat (local.get 3)))))) + + (func (export "as-i64x2_add_sub_mul-operands") (param i64 i64 i64 i64) (result v128) + (i64x2.add (i64x2.splat (local.get 0)) + (i64x2.sub (i64x2.splat (local.get 1)) + (i64x2.mul (i64x2.splat (local.get 2)) (i64x2.splat (local.get 3)))))) + (func (export "as-f64x2_add_sub_mul-operands") (param f64 f64 f64 f64) (result v128) + (f64x2.add (f64x2.splat (local.get 0)) + (f64x2.sub (f64x2.splat (local.get 1)) + (f64x2.mul (f64x2.splat (local.get 2)) (f64x2.splat (local.get 3)))))) + + ;; Saturating integer arithmetic + (func (export "as-i8x16_add_sat_s-operands") (param i32 i32) (result v128) + (i8x16.add_sat_s (i8x16.splat (local.get 0)) (i8x16.splat (local.get 1)))) + (func (export "as-i16x8_add_sat_s-operands") (param i32 i32) (result v128) + (i16x8.add_sat_s (i16x8.splat (local.get 0)) (i16x8.splat (local.get 1)))) + (func (export "as-i8x16_sub_sat_u-operands") (param i32 i32) (result v128) + (i8x16.sub_sat_u (i8x16.splat (local.get 0)) (i8x16.splat (local.get 1)))) + (func (export "as-i16x8_sub_sat_u-operands") (param i32 i32) (result v128) + (i16x8.sub_sat_u (i16x8.splat (local.get 0)) (i16x8.splat (local.get 1)))) + + ;; Bit shifts + (func (export "as-i8x16_shr_s-operand") (param i32 i32) (result v128) + (i8x16.shr_s (i8x16.splat (local.get 0)) (local.get 1))) + (func (export "as-i16x8_shr_s-operand") (param i32 i32) (result v128) + (i16x8.shr_s (i16x8.splat (local.get 0)) (local.get 1))) + (func (export "as-i32x4_shr_s-operand") (param i32 i32) (result v128) + (i32x4.shr_s (i32x4.splat (local.get 0)) (local.get 1))) + + ;; Bitwise operantions + (func (export "as-v128_and-operands") (param i32 i32) (result v128) + (v128.and (i8x16.splat (local.get 0)) (i8x16.splat (local.get 1)))) + (func (export "as-v128_or-operands") (param i32 i32) (result v128) + (v128.or (i16x8.splat (local.get 0)) (i16x8.splat (local.get 1)))) + (func (export "as-v128_xor-operands") (param i32 i32) (result v128) + (v128.xor (i32x4.splat (local.get 0)) (i32x4.splat (local.get 1)))) + + ;; Boolean horizontal reductions + (func (export "as-i8x16_all_true-operand") (param i32) (result i32) + (i8x16.all_true (i8x16.splat (local.get 0)))) + (func (export "as-i16x8_all_true-operand") (param i32) (result i32) + (i16x8.all_true (i16x8.splat (local.get 0)))) + (func (export "as-i32x4_all_true-operand1") (param i32) (result i32) + (i32x4.all_true (i32x4.splat (local.get 0)))) + (func (export "as-i32x4_all_true-operand2") (param i64) (result i32) + (i32x4.all_true (i64x2.splat (local.get 0)))) + + ;; Comparisons + (func (export "as-i8x16_eq-operands") (param i32 i32) (result v128) + (i8x16.eq (i8x16.splat (local.get 0)) (i8x16.splat (local.get 1)))) + (func (export "as-i16x8_eq-operands") (param i32 i32) (result v128) + (i16x8.eq (i16x8.splat (local.get 0)) (i16x8.splat (local.get 1)))) + (func (export "as-i32x4_eq-operands1") (param i32 i32) (result v128) + (i32x4.eq (i32x4.splat (local.get 0)) (i32x4.splat (local.get 1)))) + (func (export "as-i32x4_eq-operands2") (param i64 i64) (result v128) + (i32x4.eq (i64x2.splat (local.get 0)) (i64x2.splat (local.get 1)))) + (func (export "as-f32x4_eq-operands") (param f32 f32) (result v128) + (f32x4.eq (f32x4.splat (local.get 0)) (f32x4.splat (local.get 1)))) + (func (export "as-f64x2_eq-operands") (param f64 f64) (result v128) + (f64x2.eq (f64x2.splat (local.get 0)) (f64x2.splat (local.get 1)))) + + ;; Floating-point sign bit operations + (func (export "as-f32x4_abs-operand") (param f32) (result v128) + (f32x4.abs (f32x4.splat (local.get 0)))) + + ;; Floating-point min + (func (export "as-f32x4_min-operands") (param f32 f32) (result v128) + (f32x4.min (f32x4.splat (local.get 0)) (f32x4.splat (local.get 1)))) + + ;; Floating-point arithmetic + (func (export "as-f32x4_div-operands") (param f32 f32) (result v128) + (f32x4.div (f32x4.splat (local.get 0)) (f32x4.splat (local.get 1)))) + + ;; Conversions + (func (export "as-f32x4_convert_s_i32x4-operand") (param i32) (result v128) + (f32x4.convert_i32x4_s (i32x4.splat (local.get 0)))) + (func (export "as-i32x4_trunc_s_f32x4_sat-operand") (param f32) (result v128) + (i32x4.trunc_sat_f32x4_s (f32x4.splat (local.get 0)))) +)`); + +// ./test/core/simd/simd_splat.wast:292 +assert_return(() => invoke($2, `as-i8x16_extract_lane_s-operand-first`, [42]), [value("i32", 42)]); + +// ./test/core/simd/simd_splat.wast:293 +assert_return(() => invoke($2, `as-i8x16_extract_lane_s-operand-last`, [-42]), [value("i32", -42)]); + +// ./test/core/simd/simd_splat.wast:294 +assert_return( + () => invoke($2, `as-i16x8_extract_lane_s-operand-first`, [-32769]), + [value("i32", 32767)], +); + +// ./test/core/simd/simd_splat.wast:295 +assert_return(() => invoke($2, `as-i16x8_extract_lane_s-operand-last`, [32768]), [value("i32", -32768)]); + +// ./test/core/simd/simd_splat.wast:296 +assert_return( + () => invoke($2, `as-i32x4_extract_lane_s-operand-first`, [2147483647]), + [value("i32", 2147483647)], +); + +// ./test/core/simd/simd_splat.wast:297 +assert_return( + () => invoke($2, `as-i32x4_extract_lane_s-operand-last`, [-2147483648]), + [value("i32", -2147483648)], +); + +// ./test/core/simd/simd_splat.wast:298 +assert_return( + () => invoke($2, `as-f32x4_extract_lane_s-operand-first`, [value("f32", 1.5)]), + [value("f32", 1.5)], +); + +// ./test/core/simd/simd_splat.wast:299 +assert_return( + () => invoke($2, `as-f32x4_extract_lane_s-operand-last`, [value("f32", -0.25)]), + [value("f32", -0.25)], +); + +// ./test/core/simd/simd_splat.wast:300 +assert_return( + () => invoke($2, `as-v8x16_swizzle-operands`, [1, -1]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_splat.wast:301 +assert_return(() => invoke($2, `as-i64x2_extract_lane-operand-last`, [-42n]), [value("i64", -42n)]); + +// ./test/core/simd/simd_splat.wast:302 +assert_return(() => invoke($2, `as-i64x2_extract_lane-operand-first`, [42n]), [value("i64", 42n)]); + +// ./test/core/simd/simd_splat.wast:303 +assert_return( + () => invoke($2, `as-f64x2_extract_lane-operand-first`, [value("f64", 1.5)]), + [value("f64", 1.5)], +); + +// ./test/core/simd/simd_splat.wast:304 +assert_return( + () => invoke($2, `as-f64x2_extract_lane-operand-last`, [value("f64", -1)]), + [value("f64", -1)], +); + +// ./test/core/simd/simd_splat.wast:306 +assert_return( + () => invoke($2, `as-i8x16_add_sub-operands`, [3, 2, 1]), + [ + i8x16([0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4]), + ], +); + +// ./test/core/simd/simd_splat.wast:307 +assert_return( + () => invoke($2, `as-i16x8_add_sub_mul-operands`, [257, 128, 16, 16]), + [i16x8([0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81])], +); + +// ./test/core/simd/simd_splat.wast:308 +assert_return( + () => invoke($2, `as-i32x4_add_sub_mul-operands`, [65535, 65537, 256, 256]), + [i32x4([0x10000, 0x10000, 0x10000, 0x10000])], +); + +// ./test/core/simd/simd_splat.wast:309 +assert_return( + () => invoke($2, `as-i64x2_add_sub_mul-operands`, [ + 2147483647n, + 4294967297n, + 65536n, + 65536n, + ]), + [i64x2([0x80000000n, 0x80000000n])], +); + +// ./test/core/simd/simd_splat.wast:310 +assert_return( + () => invoke($2, `as-f64x2_add_sub_mul-operands`, [ + value("f64", 0.5), + value("f64", 0.75), + value("f64", 0.5), + value("f64", 0.5), + ]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_splat.wast:312 +assert_return( + () => invoke($2, `as-i8x16_add_sat_s-operands`, [127, 1]), + [ + i8x16([0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f]), + ], +); + +// ./test/core/simd/simd_splat.wast:313 +assert_return( + () => invoke($2, `as-i16x8_add_sat_s-operands`, [32767, 1]), + [i16x8([0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff, 0x7fff])], +); + +// ./test/core/simd/simd_splat.wast:314 +assert_return( + () => invoke($2, `as-i8x16_sub_sat_u-operands`, [127, 255]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_splat.wast:315 +assert_return( + () => invoke($2, `as-i16x8_sub_sat_u-operands`, [32767, 65535]), + [i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0])], +); + +// ./test/core/simd/simd_splat.wast:317 +assert_return( + () => invoke($2, `as-i8x16_shr_s-operand`, [240, 3]), + [ + i8x16([0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe]), + ], +); + +// ./test/core/simd/simd_splat.wast:318 +assert_return( + () => invoke($2, `as-i16x8_shr_s-operand`, [256, 4]), + [i16x8([0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10])], +); + +// ./test/core/simd/simd_splat.wast:319 +assert_return( + () => invoke($2, `as-i32x4_shr_s-operand`, [-1, 16]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_splat.wast:321 +assert_return( + () => invoke($2, `as-v128_and-operands`, [17, 255]), + [ + i8x16([0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11]), + ], +); + +// ./test/core/simd/simd_splat.wast:322 +assert_return( + () => invoke($2, `as-v128_or-operands`, [0, 65535]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_splat.wast:323 +assert_return( + () => invoke($2, `as-v128_xor-operands`, [-252645136, -1]), + [i32x4([0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f, 0xf0f0f0f])], +); + +// ./test/core/simd/simd_splat.wast:325 +assert_return(() => invoke($2, `as-i8x16_all_true-operand`, [0]), [value("i32", 0)]); + +// ./test/core/simd/simd_splat.wast:326 +assert_return(() => invoke($2, `as-i16x8_all_true-operand`, [65535]), [value("i32", 1)]); + +// ./test/core/simd/simd_splat.wast:327 +assert_return(() => invoke($2, `as-i32x4_all_true-operand1`, [-252645136]), [value("i32", 1)]); + +// ./test/core/simd/simd_splat.wast:328 +assert_return(() => invoke($2, `as-i32x4_all_true-operand2`, [-1n]), [value("i32", 1)]); + +// ./test/core/simd/simd_splat.wast:330 +assert_return( + () => invoke($2, `as-i8x16_eq-operands`, [1, 2]), + [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ], +); + +// ./test/core/simd/simd_splat.wast:331 +assert_return( + () => invoke($2, `as-i16x8_eq-operands`, [-1, 65535]), + [i16x8([0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff])], +); + +// ./test/core/simd/simd_splat.wast:332 +assert_return( + () => invoke($2, `as-i32x4_eq-operands1`, [-1, -1]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_splat.wast:333 +assert_return( + () => invoke($2, `as-f32x4_eq-operands`, [value("f32", 0), value("f32", -0)]), + [i32x4([0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff])], +); + +// ./test/core/simd/simd_splat.wast:334 +assert_return( + () => invoke($2, `as-i32x4_eq-operands2`, [1n, 2n]), + [i64x2([0xffffffff00000000n, 0xffffffff00000000n])], +); + +// ./test/core/simd/simd_splat.wast:335 +assert_return( + () => invoke($2, `as-f64x2_eq-operands`, [value("f64", 0), value("f64", -0)]), + [i64x2([0xffffffffffffffffn, 0xffffffffffffffffn])], +); + +// ./test/core/simd/simd_splat.wast:337 +assert_return( + () => invoke($2, `as-f32x4_abs-operand`, [value("f32", -1.125)]), + [ + new F32x4Pattern( + value("f32", 1.125), + value("f32", 1.125), + value("f32", 1.125), + value("f32", 1.125), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:338 +assert_return( + () => invoke($2, `as-f32x4_min-operands`, [ + value("f32", 0.25), + value("f32", 0.00000000000000000000000000000000000001), + ]), + [ + new F32x4Pattern( + value("f32", 0.00000000000000000000000000000000000001), + value("f32", 0.00000000000000000000000000000000000001), + value("f32", 0.00000000000000000000000000000000000001), + value("f32", 0.00000000000000000000000000000000000001), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:339 +assert_return( + () => invoke($2, `as-f32x4_div-operands`, [value("f32", 1), value("f32", 8)]), + [ + new F32x4Pattern( + value("f32", 0.125), + value("f32", 0.125), + value("f32", 0.125), + value("f32", 0.125), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:341 +assert_return( + () => invoke($2, `as-f32x4_convert_s_i32x4-operand`, [12345]), + [ + new F32x4Pattern( + value("f32", 12345), + value("f32", 12345), + value("f32", 12345), + value("f32", 12345), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:342 +assert_return( + () => invoke($2, `as-i32x4_trunc_s_f32x4_sat-operand`, [value("f32", 1.1)]), + [i32x4([0x1, 0x1, 0x1, 0x1])], +); + +// ./test/core/simd/simd_splat.wast:347 +let $3 = instantiate(`(module + (global $$g (mut v128) (v128.const f32x4 0.0 0.0 0.0 0.0)) + (func (export "as-br-value1") (param i32) (result v128) + (block (result v128) (br 0 (i8x16.splat (local.get 0))))) + (func (export "as-return-value1") (param i32) (result v128) + (return (i16x8.splat (local.get 0)))) + (func (export "as-local_set-value1") (param i32) (result v128) (local v128) + (local.set 1 (i32x4.splat (local.get 0))) + (return (local.get 1))) + (func (export "as-global_set-value1") (param f32) (result v128) + (global.set $$g (f32x4.splat (local.get 0))) + (return (global.get $$g))) + (func (export "as-br-value2") (param i64) (result v128) + (block (result v128) (br 0 (i64x2.splat (local.get 0))))) + (func (export "as-return-value2") (param i64) (result v128) + (return (i64x2.splat (local.get 0)))) + (func (export "as-local_set-value2") (param i64) (result v128) (local v128) + (local.set 1 (i64x2.splat (local.get 0))) + (return (local.get 1))) + (func (export "as-global_set-value2") (param f64) (result v128) + (global.set $$g (f64x2.splat (local.get 0))) + (return (global.get $$g))) +)`); + +// ./test/core/simd/simd_splat.wast:371 +assert_return( + () => invoke($3, `as-br-value1`, [171]), + [ + i8x16([0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab, 0xab]), + ], +); + +// ./test/core/simd/simd_splat.wast:372 +assert_return( + () => invoke($3, `as-return-value1`, [43981]), + [i16x8([0xabcd, 0xabcd, 0xabcd, 0xabcd, 0xabcd, 0xabcd, 0xabcd, 0xabcd])], +); + +// ./test/core/simd/simd_splat.wast:373 +assert_return( + () => invoke($3, `as-local_set-value1`, [65536]), + [i32x4([0x10000, 0x10000, 0x10000, 0x10000])], +); + +// ./test/core/simd/simd_splat.wast:374 +assert_return( + () => invoke($3, `as-global_set-value1`, [value("f32", 1)]), + [ + new F32x4Pattern( + value("f32", 1), + value("f32", 1), + value("f32", 1), + value("f32", 1), + ), + ], +); + +// ./test/core/simd/simd_splat.wast:375 +assert_return(() => invoke($3, `as-br-value2`, [43981n]), [i64x2([0xabcdn, 0xabcdn])]); + +// ./test/core/simd/simd_splat.wast:376 +assert_return(() => invoke($3, `as-return-value2`, [43981n]), [i64x2([0xabcdn, 0xabcdn])]); + +// ./test/core/simd/simd_splat.wast:377 +assert_return(() => invoke($3, `as-local_set-value2`, [65536n]), [i64x2([0x10000n, 0x10000n])]); + +// ./test/core/simd/simd_splat.wast:378 +assert_return( + () => invoke($3, `as-global_set-value2`, [value("f64", 1)]), + [new F64x2Pattern(value("f64", 1), value("f64", 1))], +); + +// ./test/core/simd/simd_splat.wast:383 +assert_invalid( + () => instantiate(`(module + (func $$i8x16.splat-arg-empty (result v128) + (i8x16.splat) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:391 +assert_invalid( + () => instantiate(`(module + (func $$i16x8.splat-arg-empty (result v128) + (i16x8.splat) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:399 +assert_invalid( + () => instantiate(`(module + (func $$i32x4.splat-arg-empty (result v128) + (i32x4.splat) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:407 +assert_invalid( + () => instantiate(`(module + (func $$f32x4.splat-arg-empty (result v128) + (f32x4.splat) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:415 +assert_invalid( + () => instantiate(`(module + (func $$i64x2.splat-arg-empty (result v128) + (i64x2.splat) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_splat.wast:423 +assert_invalid( + () => instantiate(`(module + (func $$f64x2.splat-arg-empty (result v128) + (f64x2.splat) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_store.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_store.wast.js new file mode 100644 index 0000000000..aaecc09ddd --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_store.wast.js @@ -0,0 +1,238 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_store.wast + +// ./test/core/simd/simd_store.wast:3 +let $0 = instantiate(`(module + (memory 1) + (func (export "v128.store_i8x16") (result v128) + (v128.store (i32.const 0) (v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i16x8") (result v128) + (v128.store (i32.const 0) (v128.const i16x8 0 1 2 3 4 5 6 7)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i16x8_2") (result v128) + (v128.store (i32.const 0) (v128.const i16x8 012_345 012_345 012_345 012_345 012_345 012_345 012_345 012_345)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i16x8_3") (result v128) + (v128.store (i32.const 0) (v128.const i16x8 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234 0x0_1234)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i32x4") (result v128) + (v128.store (i32.const 0) (v128.const i32x4 0 1 2 3)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i32x4_2") (result v128) + (v128.store (i32.const 0) (v128.const i32x4 0_123_456_789 0_123_456_789 0_123_456_789 0_123_456_789)) + (v128.load (i32.const 0)) + ) + (func (export "v128.store_i32x4_3") (result v128) + (v128.store (i32.const 0) (v128.const i32x4 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678 0x0_1234_5678)) + (v128.load (i32.const 0)) + ) + + (func (export "v128.store_f32x4") (result v128) + (v128.store (i32.const 0) (v128.const f32x4 0 1 2 3)) + (v128.load (i32.const 0)) + ) +)`); + +// ./test/core/simd/simd_store.wast:40 +assert_return( + () => invoke($0, `v128.store_i8x16`, []), + [ + i8x16([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]), + ], +); + +// ./test/core/simd/simd_store.wast:41 +assert_return(() => invoke($0, `v128.store_i16x8`, []), [i16x8([0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7])]); + +// ./test/core/simd/simd_store.wast:42 +assert_return( + () => invoke($0, `v128.store_i16x8_2`, []), + [i16x8([0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039, 0x3039])], +); + +// ./test/core/simd/simd_store.wast:43 +assert_return( + () => invoke($0, `v128.store_i16x8_3`, []), + [i16x8([0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234, 0x1234])], +); + +// ./test/core/simd/simd_store.wast:44 +assert_return(() => invoke($0, `v128.store_i32x4`, []), [i32x4([0x0, 0x1, 0x2, 0x3])]); + +// ./test/core/simd/simd_store.wast:45 +assert_return( + () => invoke($0, `v128.store_i32x4_2`, []), + [i32x4([0x75bcd15, 0x75bcd15, 0x75bcd15, 0x75bcd15])], +); + +// ./test/core/simd/simd_store.wast:46 +assert_return( + () => invoke($0, `v128.store_i32x4_3`, []), + [i32x4([0x12345678, 0x12345678, 0x12345678, 0x12345678])], +); + +// ./test/core/simd/simd_store.wast:47 +assert_return( + () => invoke($0, `v128.store_f32x4`, []), + [ + new F32x4Pattern( + value("f32", 0), + value("f32", 1), + value("f32", 2), + value("f32", 3), + ), + ], +); + +// ./test/core/simd/simd_store.wast:52 +let $1 = instantiate(`(module + (memory 1) + (func (export "as-block-value") + (block (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))) + ) + (func (export "as-loop-value") + (loop (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))) + ) + (func (export "as-br-value") + (block (br 0 (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)))) + ) + (func (export "as-br_if-value") + (block + (br_if 0 (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)) (i32.const 1)) + ) + ) + (func (export "as-br_if-value-cond") + (block + (br_if 0 (i32.const 6) (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))) + ) + ) + (func (export "as-br_table-value") + (block + (br_table 0 (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)) (i32.const 1)) + ) + ) + (func (export "as-return-value") + (return (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))) + ) + (func (export "as-if-then") + (if (i32.const 1) (then (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)))) + ) + (func (export "as-if-else") + (if (i32.const 0) (then) (else (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0)))) + ) +)`); + +// ./test/core/simd/simd_store.wast:89 +assert_return(() => invoke($1, `as-block-value`, []), []); + +// ./test/core/simd/simd_store.wast:90 +assert_return(() => invoke($1, `as-loop-value`, []), []); + +// ./test/core/simd/simd_store.wast:91 +assert_return(() => invoke($1, `as-br-value`, []), []); + +// ./test/core/simd/simd_store.wast:92 +assert_return(() => invoke($1, `as-br_if-value`, []), []); + +// ./test/core/simd/simd_store.wast:93 +assert_return(() => invoke($1, `as-br_if-value-cond`, []), []); + +// ./test/core/simd/simd_store.wast:94 +assert_return(() => invoke($1, `as-br_table-value`, []), []); + +// ./test/core/simd/simd_store.wast:95 +assert_return(() => invoke($1, `as-return-value`, []), []); + +// ./test/core/simd/simd_store.wast:96 +assert_return(() => invoke($1, `as-if-then`, []), []); + +// ./test/core/simd/simd_store.wast:97 +assert_return(() => invoke($1, `as-if-else`, []), []); + +// ./test/core/simd/simd_store.wast:102 +assert_malformed( + () => instantiate(`(memory 1) (func (v128.store8 (i32.const 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_store.wast:109 +assert_malformed( + () => instantiate(`(memory 1) (func (v128.store16 (i32.const 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_store.wast:116 +assert_malformed( + () => instantiate(`(memory 1) (func (v128.store32 (i32.const 0) (v128.const i32x4 0 0 0 0))) `), + `unknown operator`, +); + +// ./test/core/simd/simd_store.wast:127 +assert_invalid( + () => instantiate(`(module (memory 1) (func (v128.store (f32.const 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:131 +assert_invalid( + () => instantiate(`(module (memory 1) (func (local v128) (block (br_if 0 (v128.store)))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:135 +assert_invalid( + () => instantiate(`(module (memory 1) (func (result v128) (v128.store (i32.const 0) (v128.const i32x4 0 0 0 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:143 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.store-1st-arg-empty + (v128.store (v128.const i32x4 0 0 0 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:151 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.store-2nd-arg-empty + (v128.store (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/simd/simd_store.wast:159 +assert_invalid( + () => instantiate(`(module (memory 0) + (func $$v128.store-arg-empty + (v128.store) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_store16_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_store16_lane.wast.js new file mode 100644 index 0000000000..50e1431390 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_store16_lane.wast.js @@ -0,0 +1,512 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_store16_lane.wast + +// ./test/core/simd/simd_store16_lane.wast:4 +let $0 = instantiate(`(module + (memory 1) + (global $$zero (mut v128) (v128.const i32x4 0 0 0 0)) + (func (export "v128.store16_lane_0") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store16_lane_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store16_lane_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store16_lane_3") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store16_lane_4") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane 4 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store16_lane_5") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane 5 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store16_lane_6") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane 6 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store16_lane_7") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane 7 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store16_lane_0_offset_0") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane offset=0 0 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=0 (i32.const 0))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_1_offset_1") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane offset=1 1 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=1 (i32.const 0))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_2_offset_2") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane offset=2 2 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=2 (i32.const 0))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_3_offset_3") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane offset=3 3 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=3 (i32.const 0))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_4_offset_4") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane offset=4 4 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=4 (i32.const 0))) + (v128.store offset=4 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_5_offset_5") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane offset=5 5 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=5 (i32.const 0))) + (v128.store offset=5 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_6_offset_6") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane offset=6 6 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=6 (i32.const 0))) + (v128.store offset=6 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_7_offset_7") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane offset=7 7 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=7 (i32.const 0))) + (v128.store offset=7 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_0_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=1 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_0_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=2 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_1_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=1 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_1_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=2 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_2_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=1 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_2_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=2 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_3_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=1 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_3_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=2 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_4_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=1 4 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=4 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_4_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=2 4 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=4 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_5_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=1 5 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=5 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_5_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=2 5 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=5 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_6_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=1 6 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=6 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_6_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=2 6 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=6 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_7_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=1 7 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=7 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store16_lane_7_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store16_lane align=2 7 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=7 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) +)`); + +// ./test/core/simd/simd_store16_lane.wast:193 +assert_return( + () => invoke($0, `v128.store16_lane_0`, [ + 0, + i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 256n)], +); + +// ./test/core/simd/simd_store16_lane.wast:196 +assert_return( + () => invoke($0, `v128.store16_lane_1`, [ + 1, + i16x8([0x0, 0x201, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 513n)], +); + +// ./test/core/simd/simd_store16_lane.wast:199 +assert_return( + () => invoke($0, `v128.store16_lane_2`, [ + 2, + i16x8([0x0, 0x0, 0x302, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 770n)], +); + +// ./test/core/simd/simd_store16_lane.wast:202 +assert_return( + () => invoke($0, `v128.store16_lane_3`, [ + 3, + i16x8([0x0, 0x0, 0x0, 0x403, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1027n)], +); + +// ./test/core/simd/simd_store16_lane.wast:205 +assert_return( + () => invoke($0, `v128.store16_lane_4`, [ + 4, + i16x8([0x0, 0x0, 0x0, 0x0, 0x504, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1284n)], +); + +// ./test/core/simd/simd_store16_lane.wast:208 +assert_return( + () => invoke($0, `v128.store16_lane_5`, [ + 5, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x605, 0x0, 0x0]), + ]), + [value("i64", 1541n)], +); + +// ./test/core/simd/simd_store16_lane.wast:211 +assert_return( + () => invoke($0, `v128.store16_lane_6`, [ + 6, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x706, 0x0]), + ]), + [value("i64", 1798n)], +); + +// ./test/core/simd/simd_store16_lane.wast:214 +assert_return( + () => invoke($0, `v128.store16_lane_7`, [ + 7, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x807]), + ]), + [value("i64", 2055n)], +); + +// ./test/core/simd/simd_store16_lane.wast:217 +assert_return( + () => invoke($0, `v128.store16_lane_0_offset_0`, [ + i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 256n)], +); + +// ./test/core/simd/simd_store16_lane.wast:219 +assert_return( + () => invoke($0, `v128.store16_lane_1_offset_1`, [ + i16x8([0x0, 0x201, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 513n)], +); + +// ./test/core/simd/simd_store16_lane.wast:221 +assert_return( + () => invoke($0, `v128.store16_lane_2_offset_2`, [ + i16x8([0x0, 0x0, 0x302, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 770n)], +); + +// ./test/core/simd/simd_store16_lane.wast:223 +assert_return( + () => invoke($0, `v128.store16_lane_3_offset_3`, [ + i16x8([0x0, 0x0, 0x0, 0x403, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1027n)], +); + +// ./test/core/simd/simd_store16_lane.wast:225 +assert_return( + () => invoke($0, `v128.store16_lane_4_offset_4`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x504, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1284n)], +); + +// ./test/core/simd/simd_store16_lane.wast:227 +assert_return( + () => invoke($0, `v128.store16_lane_5_offset_5`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x605, 0x0, 0x0]), + ]), + [value("i64", 1541n)], +); + +// ./test/core/simd/simd_store16_lane.wast:229 +assert_return( + () => invoke($0, `v128.store16_lane_6_offset_6`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x706, 0x0]), + ]), + [value("i64", 1798n)], +); + +// ./test/core/simd/simd_store16_lane.wast:231 +assert_return( + () => invoke($0, `v128.store16_lane_7_offset_7`, [ + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x807]), + ]), + [value("i64", 2055n)], +); + +// ./test/core/simd/simd_store16_lane.wast:233 +assert_return( + () => invoke($0, `v128.store16_lane_0_align_1`, [ + 0, + i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 256n)], +); + +// ./test/core/simd/simd_store16_lane.wast:236 +assert_return( + () => invoke($0, `v128.store16_lane_0_align_2`, [ + 0, + i16x8([0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 256n)], +); + +// ./test/core/simd/simd_store16_lane.wast:239 +assert_return( + () => invoke($0, `v128.store16_lane_1_align_1`, [ + 1, + i16x8([0x0, 0x201, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 513n)], +); + +// ./test/core/simd/simd_store16_lane.wast:242 +assert_return( + () => invoke($0, `v128.store16_lane_1_align_2`, [ + 1, + i16x8([0x0, 0x201, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 513n)], +); + +// ./test/core/simd/simd_store16_lane.wast:245 +assert_return( + () => invoke($0, `v128.store16_lane_2_align_1`, [ + 2, + i16x8([0x0, 0x0, 0x302, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 770n)], +); + +// ./test/core/simd/simd_store16_lane.wast:248 +assert_return( + () => invoke($0, `v128.store16_lane_2_align_2`, [ + 2, + i16x8([0x0, 0x0, 0x302, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 770n)], +); + +// ./test/core/simd/simd_store16_lane.wast:251 +assert_return( + () => invoke($0, `v128.store16_lane_3_align_1`, [ + 3, + i16x8([0x0, 0x0, 0x0, 0x403, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1027n)], +); + +// ./test/core/simd/simd_store16_lane.wast:254 +assert_return( + () => invoke($0, `v128.store16_lane_3_align_2`, [ + 3, + i16x8([0x0, 0x0, 0x0, 0x403, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1027n)], +); + +// ./test/core/simd/simd_store16_lane.wast:257 +assert_return( + () => invoke($0, `v128.store16_lane_4_align_1`, [ + 4, + i16x8([0x0, 0x0, 0x0, 0x0, 0x504, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1284n)], +); + +// ./test/core/simd/simd_store16_lane.wast:260 +assert_return( + () => invoke($0, `v128.store16_lane_4_align_2`, [ + 4, + i16x8([0x0, 0x0, 0x0, 0x0, 0x504, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1284n)], +); + +// ./test/core/simd/simd_store16_lane.wast:263 +assert_return( + () => invoke($0, `v128.store16_lane_5_align_1`, [ + 5, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x605, 0x0, 0x0]), + ]), + [value("i64", 1541n)], +); + +// ./test/core/simd/simd_store16_lane.wast:266 +assert_return( + () => invoke($0, `v128.store16_lane_5_align_2`, [ + 5, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x605, 0x0, 0x0]), + ]), + [value("i64", 1541n)], +); + +// ./test/core/simd/simd_store16_lane.wast:269 +assert_return( + () => invoke($0, `v128.store16_lane_6_align_1`, [ + 6, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x706, 0x0]), + ]), + [value("i64", 1798n)], +); + +// ./test/core/simd/simd_store16_lane.wast:272 +assert_return( + () => invoke($0, `v128.store16_lane_6_align_2`, [ + 6, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x706, 0x0]), + ]), + [value("i64", 1798n)], +); + +// ./test/core/simd/simd_store16_lane.wast:275 +assert_return( + () => invoke($0, `v128.store16_lane_7_align_1`, [ + 7, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x807]), + ]), + [value("i64", 2055n)], +); + +// ./test/core/simd/simd_store16_lane.wast:278 +assert_return( + () => invoke($0, `v128.store16_lane_7_align_2`, [ + 7, + i16x8([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x807]), + ]), + [value("i64", 2055n)], +); + +// ./test/core/simd/simd_store16_lane.wast:283 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store16_lane 0 (local.get $$x) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store16_lane.wast:289 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store16_lane 8 (i32.const 0) (local.get $$x))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_store16_lane.wast:295 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store16_lane align=4 0 (i32.const 0) (local.get $$x))))`), + `alignment must not be larger than natural`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_store32_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_store32_lane.wast.js new file mode 100644 index 0000000000..3b2c57bed7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_store32_lane.wast.js @@ -0,0 +1,320 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_store32_lane.wast + +// ./test/core/simd/simd_store32_lane.wast:4 +let $0 = instantiate(`(module + (memory 1) + (global $$zero (mut v128) (v128.const i32x4 0 0 0 0)) + (func (export "v128.store32_lane_0") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store32_lane_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store32_lane_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store32_lane_3") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store32_lane_0_offset_0") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane offset=0 0 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=0 (i32.const 0))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_1_offset_1") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane offset=1 1 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=1 (i32.const 0))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_2_offset_2") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane offset=2 2 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=2 (i32.const 0))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_3_offset_3") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane offset=3 3 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=3 (i32.const 0))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_0_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=1 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_0_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=2 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_0_align_4") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=4 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_1_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=1 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_1_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=2 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_1_align_4") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=4 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_2_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=1 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_2_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=2 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_2_align_4") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=4 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_3_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=1 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_3_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=2 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store32_lane_3_align_4") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store32_lane align=4 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) +)`); + +// ./test/core/simd/simd_store32_lane.wast:125 +assert_return( + () => invoke($0, `v128.store32_lane_0`, [0, i32x4([0x3020100, 0x0, 0x0, 0x0])]), + [value("i64", 50462976n)], +); + +// ./test/core/simd/simd_store32_lane.wast:128 +assert_return( + () => invoke($0, `v128.store32_lane_1`, [1, i32x4([0x0, 0x4030201, 0x0, 0x0])]), + [value("i64", 67305985n)], +); + +// ./test/core/simd/simd_store32_lane.wast:131 +assert_return( + () => invoke($0, `v128.store32_lane_2`, [2, i32x4([0x0, 0x0, 0x5040302, 0x0])]), + [value("i64", 84148994n)], +); + +// ./test/core/simd/simd_store32_lane.wast:134 +assert_return( + () => invoke($0, `v128.store32_lane_3`, [3, i32x4([0x0, 0x0, 0x0, 0x6050403])]), + [value("i64", 100992003n)], +); + +// ./test/core/simd/simd_store32_lane.wast:137 +assert_return( + () => invoke($0, `v128.store32_lane_0_offset_0`, [i32x4([0x3020100, 0x0, 0x0, 0x0])]), + [value("i64", 50462976n)], +); + +// ./test/core/simd/simd_store32_lane.wast:139 +assert_return( + () => invoke($0, `v128.store32_lane_1_offset_1`, [i32x4([0x0, 0x4030201, 0x0, 0x0])]), + [value("i64", 67305985n)], +); + +// ./test/core/simd/simd_store32_lane.wast:141 +assert_return( + () => invoke($0, `v128.store32_lane_2_offset_2`, [i32x4([0x0, 0x0, 0x5040302, 0x0])]), + [value("i64", 84148994n)], +); + +// ./test/core/simd/simd_store32_lane.wast:143 +assert_return( + () => invoke($0, `v128.store32_lane_3_offset_3`, [i32x4([0x0, 0x0, 0x0, 0x6050403])]), + [value("i64", 100992003n)], +); + +// ./test/core/simd/simd_store32_lane.wast:145 +assert_return( + () => invoke($0, `v128.store32_lane_0_align_1`, [ + 0, + i32x4([0x3020100, 0x0, 0x0, 0x0]), + ]), + [value("i64", 50462976n)], +); + +// ./test/core/simd/simd_store32_lane.wast:148 +assert_return( + () => invoke($0, `v128.store32_lane_0_align_2`, [ + 0, + i32x4([0x3020100, 0x0, 0x0, 0x0]), + ]), + [value("i64", 50462976n)], +); + +// ./test/core/simd/simd_store32_lane.wast:151 +assert_return( + () => invoke($0, `v128.store32_lane_0_align_4`, [ + 0, + i32x4([0x3020100, 0x0, 0x0, 0x0]), + ]), + [value("i64", 50462976n)], +); + +// ./test/core/simd/simd_store32_lane.wast:154 +assert_return( + () => invoke($0, `v128.store32_lane_1_align_1`, [ + 1, + i32x4([0x0, 0x4030201, 0x0, 0x0]), + ]), + [value("i64", 67305985n)], +); + +// ./test/core/simd/simd_store32_lane.wast:157 +assert_return( + () => invoke($0, `v128.store32_lane_1_align_2`, [ + 1, + i32x4([0x0, 0x4030201, 0x0, 0x0]), + ]), + [value("i64", 67305985n)], +); + +// ./test/core/simd/simd_store32_lane.wast:160 +assert_return( + () => invoke($0, `v128.store32_lane_1_align_4`, [ + 1, + i32x4([0x0, 0x4030201, 0x0, 0x0]), + ]), + [value("i64", 67305985n)], +); + +// ./test/core/simd/simd_store32_lane.wast:163 +assert_return( + () => invoke($0, `v128.store32_lane_2_align_1`, [ + 2, + i32x4([0x0, 0x0, 0x5040302, 0x0]), + ]), + [value("i64", 84148994n)], +); + +// ./test/core/simd/simd_store32_lane.wast:166 +assert_return( + () => invoke($0, `v128.store32_lane_2_align_2`, [ + 2, + i32x4([0x0, 0x0, 0x5040302, 0x0]), + ]), + [value("i64", 84148994n)], +); + +// ./test/core/simd/simd_store32_lane.wast:169 +assert_return( + () => invoke($0, `v128.store32_lane_2_align_4`, [ + 2, + i32x4([0x0, 0x0, 0x5040302, 0x0]), + ]), + [value("i64", 84148994n)], +); + +// ./test/core/simd/simd_store32_lane.wast:172 +assert_return( + () => invoke($0, `v128.store32_lane_3_align_1`, [ + 3, + i32x4([0x0, 0x0, 0x0, 0x6050403]), + ]), + [value("i64", 100992003n)], +); + +// ./test/core/simd/simd_store32_lane.wast:175 +assert_return( + () => invoke($0, `v128.store32_lane_3_align_2`, [ + 3, + i32x4([0x0, 0x0, 0x0, 0x6050403]), + ]), + [value("i64", 100992003n)], +); + +// ./test/core/simd/simd_store32_lane.wast:178 +assert_return( + () => invoke($0, `v128.store32_lane_3_align_4`, [ + 3, + i32x4([0x0, 0x0, 0x0, 0x6050403]), + ]), + [value("i64", 100992003n)], +); + +// ./test/core/simd/simd_store32_lane.wast:183 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store32_lane 0 (local.get $$x) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store32_lane.wast:189 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store32_lane 4 (i32.const 0) (local.get $$x))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_store32_lane.wast:195 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store32_lane align=8 0 (i32.const 0) (local.get $$x))))`), + `alignment must not be larger than natural`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_store64_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_store64_lane.wast.js new file mode 100644 index 0000000000..605a6444a8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_store64_lane.wast.js @@ -0,0 +1,214 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_store64_lane.wast + +// ./test/core/simd/simd_store64_lane.wast:4 +let $0 = instantiate(`(module + (memory 1) + (global $$zero (mut v128) (v128.const i32x4 0 0 0 0)) + (func (export "v128.store64_lane_0") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store64_lane_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store64_lane_0_offset_0") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane offset=0 0 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=0 (i32.const 0))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_1_offset_1") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane offset=1 1 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=1 (i32.const 0))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_0_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane align=1 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_0_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane align=2 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_0_align_4") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane align=4 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_0_align_8") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane align=8 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_1_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane align=1 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_1_align_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane align=2 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_1_align_4") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane align=4 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store64_lane_1_align_8") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store64_lane align=8 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) +)`); + +// ./test/core/simd/simd_store64_lane.wast:79 +assert_return( + () => invoke($0, `v128.store64_lane_0`, [0, i64x2([0x706050403020100n, 0x0n])]), + [value("i64", 506097522914230528n)], +); + +// ./test/core/simd/simd_store64_lane.wast:82 +assert_return( + () => invoke($0, `v128.store64_lane_1`, [1, i64x2([0x0n, 0x807060504030201n])]), + [value("i64", 578437695752307201n)], +); + +// ./test/core/simd/simd_store64_lane.wast:85 +assert_return( + () => invoke($0, `v128.store64_lane_0_offset_0`, [i64x2([0x706050403020100n, 0x0n])]), + [value("i64", 506097522914230528n)], +); + +// ./test/core/simd/simd_store64_lane.wast:87 +assert_return( + () => invoke($0, `v128.store64_lane_1_offset_1`, [i64x2([0x0n, 0x807060504030201n])]), + [value("i64", 578437695752307201n)], +); + +// ./test/core/simd/simd_store64_lane.wast:89 +assert_return( + () => invoke($0, `v128.store64_lane_0_align_1`, [ + 0, + i64x2([0x706050403020100n, 0x0n]), + ]), + [value("i64", 506097522914230528n)], +); + +// ./test/core/simd/simd_store64_lane.wast:92 +assert_return( + () => invoke($0, `v128.store64_lane_0_align_2`, [ + 0, + i64x2([0x706050403020100n, 0x0n]), + ]), + [value("i64", 506097522914230528n)], +); + +// ./test/core/simd/simd_store64_lane.wast:95 +assert_return( + () => invoke($0, `v128.store64_lane_0_align_4`, [ + 0, + i64x2([0x706050403020100n, 0x0n]), + ]), + [value("i64", 506097522914230528n)], +); + +// ./test/core/simd/simd_store64_lane.wast:98 +assert_return( + () => invoke($0, `v128.store64_lane_0_align_8`, [ + 0, + i64x2([0x706050403020100n, 0x0n]), + ]), + [value("i64", 506097522914230528n)], +); + +// ./test/core/simd/simd_store64_lane.wast:101 +assert_return( + () => invoke($0, `v128.store64_lane_1_align_1`, [ + 1, + i64x2([0x0n, 0x807060504030201n]), + ]), + [value("i64", 578437695752307201n)], +); + +// ./test/core/simd/simd_store64_lane.wast:104 +assert_return( + () => invoke($0, `v128.store64_lane_1_align_2`, [ + 1, + i64x2([0x0n, 0x807060504030201n]), + ]), + [value("i64", 578437695752307201n)], +); + +// ./test/core/simd/simd_store64_lane.wast:107 +assert_return( + () => invoke($0, `v128.store64_lane_1_align_4`, [ + 1, + i64x2([0x0n, 0x807060504030201n]), + ]), + [value("i64", 578437695752307201n)], +); + +// ./test/core/simd/simd_store64_lane.wast:110 +assert_return( + () => invoke($0, `v128.store64_lane_1_align_8`, [ + 1, + i64x2([0x0n, 0x807060504030201n]), + ]), + [value("i64", 578437695752307201n)], +); + +// ./test/core/simd/simd_store64_lane.wast:115 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store64_lane 0 (local.get $$x) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store64_lane.wast:121 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store64_lane 2 (i32.const 0) (local.get $$x))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_store64_lane.wast:127 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store64_lane align=16 0 (i32.const 0) (local.get $$x))))`), + `alignment must not be larger than natural`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/simd_store8_lane.wast.js b/js/src/jit-test/tests/wasm/spec/spec/simd_store8_lane.wast.js new file mode 100644 index 0000000000..46d45d74c2 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/simd_store8_lane.wast.js @@ -0,0 +1,736 @@ +// |jit-test| skip-if: !wasmSimdEnabled() + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/simd/simd_store8_lane.wast + +// ./test/core/simd/simd_store8_lane.wast:4 +let $0 = instantiate(`(module + (memory 1) + (global $$zero (mut v128) (v128.const i32x4 0 0 0 0)) + (func (export "v128.store8_lane_0") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_2") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_3") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_4") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 4 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_5") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 5 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_6") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 6 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_7") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 7 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_8") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 8 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_9") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 9 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_10") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 10 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_11") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 11 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_12") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 12 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_13") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 13 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_14") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 14 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_15") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane 15 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store (local.get $$address) (global.get $$zero)) (local.get $$ret)) + (func (export "v128.store8_lane_0_offset_0") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=0 0 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=0 (i32.const 0))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_1_offset_1") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=1 1 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=1 (i32.const 0))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_2_offset_2") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=2 2 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=2 (i32.const 0))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_3_offset_3") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=3 3 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=3 (i32.const 0))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_4_offset_4") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=4 4 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=4 (i32.const 0))) + (v128.store offset=4 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_5_offset_5") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=5 5 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=5 (i32.const 0))) + (v128.store offset=5 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_6_offset_6") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=6 6 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=6 (i32.const 0))) + (v128.store offset=6 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_7_offset_7") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=7 7 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=7 (i32.const 0))) + (v128.store offset=7 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_8_offset_8") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=8 8 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=8 (i32.const 0))) + (v128.store offset=8 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_9_offset_9") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=9 9 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=9 (i32.const 0))) + (v128.store offset=9 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_10_offset_10") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=10 10 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=10 (i32.const 0))) + (v128.store offset=10 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_11_offset_11") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=11 11 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=11 (i32.const 0))) + (v128.store offset=11 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_12_offset_12") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=12 12 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=12 (i32.const 0))) + (v128.store offset=12 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_13_offset_13") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=13 13 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=13 (i32.const 0))) + (v128.store offset=13 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_14_offset_14") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=14 14 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=14 (i32.const 0))) + (v128.store offset=14 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_15_offset_15") + (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane offset=15 15 (i32.const 0) (local.get $$x)) + (local.set $$ret (i64.load offset=15 (i32.const 0))) + (v128.store offset=15 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_0_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 0 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=0 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_1_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 1 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=1 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_2_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 2 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=2 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_3_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 3 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=3 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_4_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 4 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=4 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_5_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 5 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=5 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_6_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 6 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=6 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_7_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 7 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=7 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_8_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 8 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=8 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_9_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 9 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=9 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_10_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 10 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=10 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_11_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 11 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=11 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_12_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 12 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=12 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_13_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 13 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=13 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_14_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 14 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=14 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) + (func (export "v128.store8_lane_15_align_1") + (param $$address i32) (param $$x v128) (result i64) (local $$ret i64) + (v128.store8_lane align=1 15 (local.get $$address) (local.get $$x)) + (local.set $$ret (i64.load (local.get $$address))) + (v128.store offset=15 (i32.const 0) (global.get $$zero)) + (local.get $$ret)) +)`); + +// ./test/core/simd/simd_store8_lane.wast:281 +assert_return( + () => invoke($0, `v128.store8_lane_0`, [ + 0, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 0n)], +); + +// ./test/core/simd/simd_store8_lane.wast:284 +assert_return( + () => invoke($0, `v128.store8_lane_1`, [ + 1, + i8x16([0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1n)], +); + +// ./test/core/simd/simd_store8_lane.wast:287 +assert_return( + () => invoke($0, `v128.store8_lane_2`, [ + 2, + i8x16([0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 2n)], +); + +// ./test/core/simd/simd_store8_lane.wast:290 +assert_return( + () => invoke($0, `v128.store8_lane_3`, [ + 3, + i8x16([0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 3n)], +); + +// ./test/core/simd/simd_store8_lane.wast:293 +assert_return( + () => invoke($0, `v128.store8_lane_4`, [ + 4, + i8x16([0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 4n)], +); + +// ./test/core/simd/simd_store8_lane.wast:296 +assert_return( + () => invoke($0, `v128.store8_lane_5`, [ + 5, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 5n)], +); + +// ./test/core/simd/simd_store8_lane.wast:299 +assert_return( + () => invoke($0, `v128.store8_lane_6`, [ + 6, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 6n)], +); + +// ./test/core/simd/simd_store8_lane.wast:302 +assert_return( + () => invoke($0, `v128.store8_lane_7`, [ + 7, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 7n)], +); + +// ./test/core/simd/simd_store8_lane.wast:305 +assert_return( + () => invoke($0, `v128.store8_lane_8`, [ + 8, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 8n)], +); + +// ./test/core/simd/simd_store8_lane.wast:308 +assert_return( + () => invoke($0, `v128.store8_lane_9`, [ + 9, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 9n)], +); + +// ./test/core/simd/simd_store8_lane.wast:311 +assert_return( + () => invoke($0, `v128.store8_lane_10`, [ + 10, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 10n)], +); + +// ./test/core/simd/simd_store8_lane.wast:314 +assert_return( + () => invoke($0, `v128.store8_lane_11`, [ + 11, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 11n)], +); + +// ./test/core/simd/simd_store8_lane.wast:317 +assert_return( + () => invoke($0, `v128.store8_lane_12`, [ + 12, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0x0, 0x0]), + ]), + [value("i64", 12n)], +); + +// ./test/core/simd/simd_store8_lane.wast:320 +assert_return( + () => invoke($0, `v128.store8_lane_13`, [ + 13, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0]), + ]), + [value("i64", 13n)], +); + +// ./test/core/simd/simd_store8_lane.wast:323 +assert_return( + () => invoke($0, `v128.store8_lane_14`, [ + 14, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0]), + ]), + [value("i64", 14n)], +); + +// ./test/core/simd/simd_store8_lane.wast:326 +assert_return( + () => invoke($0, `v128.store8_lane_15`, [ + 15, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf]), + ]), + [value("i64", 15n)], +); + +// ./test/core/simd/simd_store8_lane.wast:329 +assert_return( + () => invoke($0, `v128.store8_lane_0_offset_0`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 0n)], +); + +// ./test/core/simd/simd_store8_lane.wast:331 +assert_return( + () => invoke($0, `v128.store8_lane_1_offset_1`, [ + i8x16([0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1n)], +); + +// ./test/core/simd/simd_store8_lane.wast:333 +assert_return( + () => invoke($0, `v128.store8_lane_2_offset_2`, [ + i8x16([0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 2n)], +); + +// ./test/core/simd/simd_store8_lane.wast:335 +assert_return( + () => invoke($0, `v128.store8_lane_3_offset_3`, [ + i8x16([0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 3n)], +); + +// ./test/core/simd/simd_store8_lane.wast:337 +assert_return( + () => invoke($0, `v128.store8_lane_4_offset_4`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 4n)], +); + +// ./test/core/simd/simd_store8_lane.wast:339 +assert_return( + () => invoke($0, `v128.store8_lane_5_offset_5`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 5n)], +); + +// ./test/core/simd/simd_store8_lane.wast:341 +assert_return( + () => invoke($0, `v128.store8_lane_6_offset_6`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 6n)], +); + +// ./test/core/simd/simd_store8_lane.wast:343 +assert_return( + () => invoke($0, `v128.store8_lane_7_offset_7`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 7n)], +); + +// ./test/core/simd/simd_store8_lane.wast:345 +assert_return( + () => invoke($0, `v128.store8_lane_8_offset_8`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 8n)], +); + +// ./test/core/simd/simd_store8_lane.wast:347 +assert_return( + () => invoke($0, `v128.store8_lane_9_offset_9`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 9n)], +); + +// ./test/core/simd/simd_store8_lane.wast:349 +assert_return( + () => invoke($0, `v128.store8_lane_10_offset_10`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 10n)], +); + +// ./test/core/simd/simd_store8_lane.wast:351 +assert_return( + () => invoke($0, `v128.store8_lane_11_offset_11`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 11n)], +); + +// ./test/core/simd/simd_store8_lane.wast:353 +assert_return( + () => invoke($0, `v128.store8_lane_12_offset_12`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0x0, 0x0]), + ]), + [value("i64", 12n)], +); + +// ./test/core/simd/simd_store8_lane.wast:355 +assert_return( + () => invoke($0, `v128.store8_lane_13_offset_13`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0]), + ]), + [value("i64", 13n)], +); + +// ./test/core/simd/simd_store8_lane.wast:357 +assert_return( + () => invoke($0, `v128.store8_lane_14_offset_14`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0]), + ]), + [value("i64", 14n)], +); + +// ./test/core/simd/simd_store8_lane.wast:359 +assert_return( + () => invoke($0, `v128.store8_lane_15_offset_15`, [ + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf]), + ]), + [value("i64", 15n)], +); + +// ./test/core/simd/simd_store8_lane.wast:361 +assert_return( + () => invoke($0, `v128.store8_lane_0_align_1`, [ + 0, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 0n)], +); + +// ./test/core/simd/simd_store8_lane.wast:364 +assert_return( + () => invoke($0, `v128.store8_lane_1_align_1`, [ + 1, + i8x16([0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 1n)], +); + +// ./test/core/simd/simd_store8_lane.wast:367 +assert_return( + () => invoke($0, `v128.store8_lane_2_align_1`, [ + 2, + i8x16([0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 2n)], +); + +// ./test/core/simd/simd_store8_lane.wast:370 +assert_return( + () => invoke($0, `v128.store8_lane_3_align_1`, [ + 3, + i8x16([0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 3n)], +); + +// ./test/core/simd/simd_store8_lane.wast:373 +assert_return( + () => invoke($0, `v128.store8_lane_4_align_1`, [ + 4, + i8x16([0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 4n)], +); + +// ./test/core/simd/simd_store8_lane.wast:376 +assert_return( + () => invoke($0, `v128.store8_lane_5_align_1`, [ + 5, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 5n)], +); + +// ./test/core/simd/simd_store8_lane.wast:379 +assert_return( + () => invoke($0, `v128.store8_lane_6_align_1`, [ + 6, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 6n)], +); + +// ./test/core/simd/simd_store8_lane.wast:382 +assert_return( + () => invoke($0, `v128.store8_lane_7_align_1`, [ + 7, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 7n)], +); + +// ./test/core/simd/simd_store8_lane.wast:385 +assert_return( + () => invoke($0, `v128.store8_lane_8_align_1`, [ + 8, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 8n)], +); + +// ./test/core/simd/simd_store8_lane.wast:388 +assert_return( + () => invoke($0, `v128.store8_lane_9_align_1`, [ + 9, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 9n)], +); + +// ./test/core/simd/simd_store8_lane.wast:391 +assert_return( + () => invoke($0, `v128.store8_lane_10_align_1`, [ + 10, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 10n)], +); + +// ./test/core/simd/simd_store8_lane.wast:394 +assert_return( + () => invoke($0, `v128.store8_lane_11_align_1`, [ + 11, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0]), + ]), + [value("i64", 11n)], +); + +// ./test/core/simd/simd_store8_lane.wast:397 +assert_return( + () => invoke($0, `v128.store8_lane_12_align_1`, [ + 12, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0x0, 0x0]), + ]), + [value("i64", 12n)], +); + +// ./test/core/simd/simd_store8_lane.wast:400 +assert_return( + () => invoke($0, `v128.store8_lane_13_align_1`, [ + 13, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0]), + ]), + [value("i64", 13n)], +); + +// ./test/core/simd/simd_store8_lane.wast:403 +assert_return( + () => invoke($0, `v128.store8_lane_14_align_1`, [ + 14, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0]), + ]), + [value("i64", 14n)], +); + +// ./test/core/simd/simd_store8_lane.wast:406 +assert_return( + () => invoke($0, `v128.store8_lane_15_align_1`, [ + 15, + i8x16([0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf]), + ]), + [value("i64", 15n)], +); + +// ./test/core/simd/simd_store8_lane.wast:411 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store8_lane 0 (local.get $$x) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/simd/simd_store8_lane.wast:417 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store8_lane 16 (i32.const 0) (local.get $$x))))`), + `invalid lane index`, +); + +// ./test/core/simd/simd_store8_lane.wast:423 +assert_invalid( + () => instantiate(`(module (memory 1) + (func (param $$x v128) (result v128) + (v128.store8_lane align=2 0 (i32.const 0) (local.get $$x))))`), + `alignment must not be larger than natural`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/skip-stack-guard-page.wast.js b/js/src/jit-test/tests/wasm/spec/spec/skip-stack-guard-page.wast.js new file mode 100644 index 0000000000..ef1a036caf --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/skip-stack-guard-page.wast.js @@ -0,0 +1,2320 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/skip-stack-guard-page.wast + +// ./test/core/skip-stack-guard-page.wast:2 +let $0 = instantiate(`(module + (memory 1) + (export "test-guard-page-skip" (func $$test-guard-page-skip)) + + (func $$test-guard-page-skip + (param $$depth i32) + (if (i32.eq (local.get $$depth) (i32.const 0)) + (then (call $$function-with-many-locals)) + (else (call $$test-guard-page-skip (i32.sub (local.get $$depth) (i32.const 1)))) + ) + ) + + (func $$function-with-many-locals + + ;; 1056 i64 = 8448 bytes of locals + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x000-0x007 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x008-0x00f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x010-0x017 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x018-0x01f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x020-0x027 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x028-0x02f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x030-0x037 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x038-0x03f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x040-0x047 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x048-0x04f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x050-0x057 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x058-0x05f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x060-0x067 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x068-0x06f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x070-0x077 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x078-0x07f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x080-0x087 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x088-0x08f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x090-0x097 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x098-0x09f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0a0-0x0a7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0a8-0x0af + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0b0-0x0b7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0b8-0x0bf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0c0-0x0c7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0c8-0x0cf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0d0-0x0d7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0d8-0x0df + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0e0-0x0e7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0e8-0x0ef + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0f0-0x0f7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0f8-0x0ff + + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x100-0x107 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x108-0x10f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x110-0x117 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x118-0x11f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x120-0x127 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x128-0x12f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x130-0x137 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x138-0x13f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x140-0x147 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x148-0x14f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x150-0x157 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x158-0x15f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x160-0x167 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x168-0x16f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x170-0x177 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x178-0x17f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x180-0x187 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x188-0x18f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x190-0x197 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x198-0x19f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1a0-0x1a7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1a8-0x1af + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1b0-0x1b7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1b8-0x1bf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1c0-0x1c7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1c8-0x1cf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1d0-0x1d7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1d8-0x1df + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1e0-0x1e7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1e8-0x1ef + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1f0-0x1f7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1f8-0x1ff + + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x200-0x207 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x208-0x20f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x210-0x217 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x218-0x21f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x220-0x227 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x228-0x22f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x230-0x237 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x238-0x23f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x240-0x247 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x248-0x24f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x250-0x257 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x258-0x25f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x260-0x267 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x268-0x26f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x270-0x277 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x278-0x27f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x280-0x287 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x288-0x28f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x290-0x297 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x298-0x29f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2a0-0x2a7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2a8-0x2af + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2b0-0x2b7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2b8-0x2bf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2c0-0x2c7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2c8-0x2cf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2d0-0x2d7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2d8-0x2df + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2e0-0x2e7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2e8-0x2ef + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2f0-0x2f7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2f8-0x2ff + + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x300-0x307 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x308-0x30f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x310-0x317 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x318-0x31f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x320-0x327 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x328-0x32f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x330-0x337 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x338-0x33f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x340-0x347 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x348-0x34f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x350-0x357 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x358-0x35f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x360-0x367 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x368-0x36f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x370-0x377 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x378-0x37f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x380-0x387 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x388-0x38f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x390-0x397 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x398-0x39f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3a0-0x3a7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3a8-0x3af + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3b0-0x3b7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3b8-0x3bf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3c0-0x3c7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3c8-0x3cf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3d0-0x3d7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3d8-0x3df + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3e0-0x3e7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3e8-0x3ef + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3f0-0x3f7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3f8-0x3ff + + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x400-0x407 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x408-0x40f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x410-0x417 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x418-0x41f + + ;; recurse first to try to make the callee access the stack below the space allocated for the locals before the locals themselves have been initialized. + (call $$function-with-many-locals) + + ;; load from memory into the locals + (local.set 0x000 (i64.load offset=0x000 align=1 (i32.const 0))) + (local.set 0x001 (i64.load offset=0x001 align=1 (i32.const 0))) + (local.set 0x002 (i64.load offset=0x002 align=1 (i32.const 0))) + (local.set 0x003 (i64.load offset=0x003 align=1 (i32.const 0))) + (local.set 0x004 (i64.load offset=0x004 align=1 (i32.const 0))) + (local.set 0x005 (i64.load offset=0x005 align=1 (i32.const 0))) + (local.set 0x006 (i64.load offset=0x006 align=1 (i32.const 0))) + (local.set 0x007 (i64.load offset=0x007 align=1 (i32.const 0))) + (local.set 0x008 (i64.load offset=0x008 align=1 (i32.const 0))) + (local.set 0x009 (i64.load offset=0x009 align=1 (i32.const 0))) + (local.set 0x00a (i64.load offset=0x00a align=1 (i32.const 0))) + (local.set 0x00b (i64.load offset=0x00b align=1 (i32.const 0))) + (local.set 0x00c (i64.load offset=0x00c align=1 (i32.const 0))) + (local.set 0x00d (i64.load offset=0x00d align=1 (i32.const 0))) + (local.set 0x00e (i64.load offset=0x00e align=1 (i32.const 0))) + (local.set 0x00f (i64.load offset=0x00f align=1 (i32.const 0))) + (local.set 0x010 (i64.load offset=0x010 align=1 (i32.const 0))) + (local.set 0x011 (i64.load offset=0x011 align=1 (i32.const 0))) + (local.set 0x012 (i64.load offset=0x012 align=1 (i32.const 0))) + (local.set 0x013 (i64.load offset=0x013 align=1 (i32.const 0))) + (local.set 0x014 (i64.load offset=0x014 align=1 (i32.const 0))) + (local.set 0x015 (i64.load offset=0x015 align=1 (i32.const 0))) + (local.set 0x016 (i64.load offset=0x016 align=1 (i32.const 0))) + (local.set 0x017 (i64.load offset=0x017 align=1 (i32.const 0))) + (local.set 0x018 (i64.load offset=0x018 align=1 (i32.const 0))) + (local.set 0x019 (i64.load offset=0x019 align=1 (i32.const 0))) + (local.set 0x01a (i64.load offset=0x01a align=1 (i32.const 0))) + (local.set 0x01b (i64.load offset=0x01b align=1 (i32.const 0))) + (local.set 0x01c (i64.load offset=0x01c align=1 (i32.const 0))) + (local.set 0x01d (i64.load offset=0x01d align=1 (i32.const 0))) + (local.set 0x01e (i64.load offset=0x01e align=1 (i32.const 0))) + (local.set 0x01f (i64.load offset=0x01f align=1 (i32.const 0))) + (local.set 0x020 (i64.load offset=0x020 align=1 (i32.const 0))) + (local.set 0x021 (i64.load offset=0x021 align=1 (i32.const 0))) + (local.set 0x022 (i64.load offset=0x022 align=1 (i32.const 0))) + (local.set 0x023 (i64.load offset=0x023 align=1 (i32.const 0))) + (local.set 0x024 (i64.load offset=0x024 align=1 (i32.const 0))) + (local.set 0x025 (i64.load offset=0x025 align=1 (i32.const 0))) + (local.set 0x026 (i64.load offset=0x026 align=1 (i32.const 0))) + (local.set 0x027 (i64.load offset=0x027 align=1 (i32.const 0))) + (local.set 0x028 (i64.load offset=0x028 align=1 (i32.const 0))) + (local.set 0x029 (i64.load offset=0x029 align=1 (i32.const 0))) + (local.set 0x02a (i64.load offset=0x02a align=1 (i32.const 0))) + (local.set 0x02b (i64.load offset=0x02b align=1 (i32.const 0))) + (local.set 0x02c (i64.load offset=0x02c align=1 (i32.const 0))) + (local.set 0x02d (i64.load offset=0x02d align=1 (i32.const 0))) + (local.set 0x02e (i64.load offset=0x02e align=1 (i32.const 0))) + (local.set 0x02f (i64.load offset=0x02f align=1 (i32.const 0))) + (local.set 0x030 (i64.load offset=0x030 align=1 (i32.const 0))) + (local.set 0x031 (i64.load offset=0x031 align=1 (i32.const 0))) + (local.set 0x032 (i64.load offset=0x032 align=1 (i32.const 0))) + (local.set 0x033 (i64.load offset=0x033 align=1 (i32.const 0))) + (local.set 0x034 (i64.load offset=0x034 align=1 (i32.const 0))) + (local.set 0x035 (i64.load offset=0x035 align=1 (i32.const 0))) + (local.set 0x036 (i64.load offset=0x036 align=1 (i32.const 0))) + (local.set 0x037 (i64.load offset=0x037 align=1 (i32.const 0))) + (local.set 0x038 (i64.load offset=0x038 align=1 (i32.const 0))) + (local.set 0x039 (i64.load offset=0x039 align=1 (i32.const 0))) + (local.set 0x03a (i64.load offset=0x03a align=1 (i32.const 0))) + (local.set 0x03b (i64.load offset=0x03b align=1 (i32.const 0))) + (local.set 0x03c (i64.load offset=0x03c align=1 (i32.const 0))) + (local.set 0x03d (i64.load offset=0x03d align=1 (i32.const 0))) + (local.set 0x03e (i64.load offset=0x03e align=1 (i32.const 0))) + (local.set 0x03f (i64.load offset=0x03f align=1 (i32.const 0))) + (local.set 0x040 (i64.load offset=0x040 align=1 (i32.const 0))) + (local.set 0x041 (i64.load offset=0x041 align=1 (i32.const 0))) + (local.set 0x042 (i64.load offset=0x042 align=1 (i32.const 0))) + (local.set 0x043 (i64.load offset=0x043 align=1 (i32.const 0))) + (local.set 0x044 (i64.load offset=0x044 align=1 (i32.const 0))) + (local.set 0x045 (i64.load offset=0x045 align=1 (i32.const 0))) + (local.set 0x046 (i64.load offset=0x046 align=1 (i32.const 0))) + (local.set 0x047 (i64.load offset=0x047 align=1 (i32.const 0))) + (local.set 0x048 (i64.load offset=0x048 align=1 (i32.const 0))) + (local.set 0x049 (i64.load offset=0x049 align=1 (i32.const 0))) + (local.set 0x04a (i64.load offset=0x04a align=1 (i32.const 0))) + (local.set 0x04b (i64.load offset=0x04b align=1 (i32.const 0))) + (local.set 0x04c (i64.load offset=0x04c align=1 (i32.const 0))) + (local.set 0x04d (i64.load offset=0x04d align=1 (i32.const 0))) + (local.set 0x04e (i64.load offset=0x04e align=1 (i32.const 0))) + (local.set 0x04f (i64.load offset=0x04f align=1 (i32.const 0))) + (local.set 0x050 (i64.load offset=0x050 align=1 (i32.const 0))) + (local.set 0x051 (i64.load offset=0x051 align=1 (i32.const 0))) + (local.set 0x052 (i64.load offset=0x052 align=1 (i32.const 0))) + (local.set 0x053 (i64.load offset=0x053 align=1 (i32.const 0))) + (local.set 0x054 (i64.load offset=0x054 align=1 (i32.const 0))) + (local.set 0x055 (i64.load offset=0x055 align=1 (i32.const 0))) + (local.set 0x056 (i64.load offset=0x056 align=1 (i32.const 0))) + (local.set 0x057 (i64.load offset=0x057 align=1 (i32.const 0))) + (local.set 0x058 (i64.load offset=0x058 align=1 (i32.const 0))) + (local.set 0x059 (i64.load offset=0x059 align=1 (i32.const 0))) + (local.set 0x05a (i64.load offset=0x05a align=1 (i32.const 0))) + (local.set 0x05b (i64.load offset=0x05b align=1 (i32.const 0))) + (local.set 0x05c (i64.load offset=0x05c align=1 (i32.const 0))) + (local.set 0x05d (i64.load offset=0x05d align=1 (i32.const 0))) + (local.set 0x05e (i64.load offset=0x05e align=1 (i32.const 0))) + (local.set 0x05f (i64.load offset=0x05f align=1 (i32.const 0))) + (local.set 0x060 (i64.load offset=0x060 align=1 (i32.const 0))) + (local.set 0x061 (i64.load offset=0x061 align=1 (i32.const 0))) + (local.set 0x062 (i64.load offset=0x062 align=1 (i32.const 0))) + (local.set 0x063 (i64.load offset=0x063 align=1 (i32.const 0))) + (local.set 0x064 (i64.load offset=0x064 align=1 (i32.const 0))) + (local.set 0x065 (i64.load offset=0x065 align=1 (i32.const 0))) + (local.set 0x066 (i64.load offset=0x066 align=1 (i32.const 0))) + (local.set 0x067 (i64.load offset=0x067 align=1 (i32.const 0))) + (local.set 0x068 (i64.load offset=0x068 align=1 (i32.const 0))) + (local.set 0x069 (i64.load offset=0x069 align=1 (i32.const 0))) + (local.set 0x06a (i64.load offset=0x06a align=1 (i32.const 0))) + (local.set 0x06b (i64.load offset=0x06b align=1 (i32.const 0))) + (local.set 0x06c (i64.load offset=0x06c align=1 (i32.const 0))) + (local.set 0x06d (i64.load offset=0x06d align=1 (i32.const 0))) + (local.set 0x06e (i64.load offset=0x06e align=1 (i32.const 0))) + (local.set 0x06f (i64.load offset=0x06f align=1 (i32.const 0))) + (local.set 0x070 (i64.load offset=0x070 align=1 (i32.const 0))) + (local.set 0x071 (i64.load offset=0x071 align=1 (i32.const 0))) + (local.set 0x072 (i64.load offset=0x072 align=1 (i32.const 0))) + (local.set 0x073 (i64.load offset=0x073 align=1 (i32.const 0))) + (local.set 0x074 (i64.load offset=0x074 align=1 (i32.const 0))) + (local.set 0x075 (i64.load offset=0x075 align=1 (i32.const 0))) + (local.set 0x076 (i64.load offset=0x076 align=1 (i32.const 0))) + (local.set 0x077 (i64.load offset=0x077 align=1 (i32.const 0))) + (local.set 0x078 (i64.load offset=0x078 align=1 (i32.const 0))) + (local.set 0x079 (i64.load offset=0x079 align=1 (i32.const 0))) + (local.set 0x07a (i64.load offset=0x07a align=1 (i32.const 0))) + (local.set 0x07b (i64.load offset=0x07b align=1 (i32.const 0))) + (local.set 0x07c (i64.load offset=0x07c align=1 (i32.const 0))) + (local.set 0x07d (i64.load offset=0x07d align=1 (i32.const 0))) + (local.set 0x07e (i64.load offset=0x07e align=1 (i32.const 0))) + (local.set 0x07f (i64.load offset=0x07f align=1 (i32.const 0))) + (local.set 0x080 (i64.load offset=0x080 align=1 (i32.const 0))) + (local.set 0x081 (i64.load offset=0x081 align=1 (i32.const 0))) + (local.set 0x082 (i64.load offset=0x082 align=1 (i32.const 0))) + (local.set 0x083 (i64.load offset=0x083 align=1 (i32.const 0))) + (local.set 0x084 (i64.load offset=0x084 align=1 (i32.const 0))) + (local.set 0x085 (i64.load offset=0x085 align=1 (i32.const 0))) + (local.set 0x086 (i64.load offset=0x086 align=1 (i32.const 0))) + (local.set 0x087 (i64.load offset=0x087 align=1 (i32.const 0))) + (local.set 0x088 (i64.load offset=0x088 align=1 (i32.const 0))) + (local.set 0x089 (i64.load offset=0x089 align=1 (i32.const 0))) + (local.set 0x08a (i64.load offset=0x08a align=1 (i32.const 0))) + (local.set 0x08b (i64.load offset=0x08b align=1 (i32.const 0))) + (local.set 0x08c (i64.load offset=0x08c align=1 (i32.const 0))) + (local.set 0x08d (i64.load offset=0x08d align=1 (i32.const 0))) + (local.set 0x08e (i64.load offset=0x08e align=1 (i32.const 0))) + (local.set 0x08f (i64.load offset=0x08f align=1 (i32.const 0))) + (local.set 0x090 (i64.load offset=0x090 align=1 (i32.const 0))) + (local.set 0x091 (i64.load offset=0x091 align=1 (i32.const 0))) + (local.set 0x092 (i64.load offset=0x092 align=1 (i32.const 0))) + (local.set 0x093 (i64.load offset=0x093 align=1 (i32.const 0))) + (local.set 0x094 (i64.load offset=0x094 align=1 (i32.const 0))) + (local.set 0x095 (i64.load offset=0x095 align=1 (i32.const 0))) + (local.set 0x096 (i64.load offset=0x096 align=1 (i32.const 0))) + (local.set 0x097 (i64.load offset=0x097 align=1 (i32.const 0))) + (local.set 0x098 (i64.load offset=0x098 align=1 (i32.const 0))) + (local.set 0x099 (i64.load offset=0x099 align=1 (i32.const 0))) + (local.set 0x09a (i64.load offset=0x09a align=1 (i32.const 0))) + (local.set 0x09b (i64.load offset=0x09b align=1 (i32.const 0))) + (local.set 0x09c (i64.load offset=0x09c align=1 (i32.const 0))) + (local.set 0x09d (i64.load offset=0x09d align=1 (i32.const 0))) + (local.set 0x09e (i64.load offset=0x09e align=1 (i32.const 0))) + (local.set 0x09f (i64.load offset=0x09f align=1 (i32.const 0))) + (local.set 0x0a0 (i64.load offset=0x0a0 align=1 (i32.const 0))) + (local.set 0x0a1 (i64.load offset=0x0a1 align=1 (i32.const 0))) + (local.set 0x0a2 (i64.load offset=0x0a2 align=1 (i32.const 0))) + (local.set 0x0a3 (i64.load offset=0x0a3 align=1 (i32.const 0))) + (local.set 0x0a4 (i64.load offset=0x0a4 align=1 (i32.const 0))) + (local.set 0x0a5 (i64.load offset=0x0a5 align=1 (i32.const 0))) + (local.set 0x0a6 (i64.load offset=0x0a6 align=1 (i32.const 0))) + (local.set 0x0a7 (i64.load offset=0x0a7 align=1 (i32.const 0))) + (local.set 0x0a8 (i64.load offset=0x0a8 align=1 (i32.const 0))) + (local.set 0x0a9 (i64.load offset=0x0a9 align=1 (i32.const 0))) + (local.set 0x0aa (i64.load offset=0x0aa align=1 (i32.const 0))) + (local.set 0x0ab (i64.load offset=0x0ab align=1 (i32.const 0))) + (local.set 0x0ac (i64.load offset=0x0ac align=1 (i32.const 0))) + (local.set 0x0ad (i64.load offset=0x0ad align=1 (i32.const 0))) + (local.set 0x0ae (i64.load offset=0x0ae align=1 (i32.const 0))) + (local.set 0x0af (i64.load offset=0x0af align=1 (i32.const 0))) + (local.set 0x0b0 (i64.load offset=0x0b0 align=1 (i32.const 0))) + (local.set 0x0b1 (i64.load offset=0x0b1 align=1 (i32.const 0))) + (local.set 0x0b2 (i64.load offset=0x0b2 align=1 (i32.const 0))) + (local.set 0x0b3 (i64.load offset=0x0b3 align=1 (i32.const 0))) + (local.set 0x0b4 (i64.load offset=0x0b4 align=1 (i32.const 0))) + (local.set 0x0b5 (i64.load offset=0x0b5 align=1 (i32.const 0))) + (local.set 0x0b6 (i64.load offset=0x0b6 align=1 (i32.const 0))) + (local.set 0x0b7 (i64.load offset=0x0b7 align=1 (i32.const 0))) + (local.set 0x0b8 (i64.load offset=0x0b8 align=1 (i32.const 0))) + (local.set 0x0b9 (i64.load offset=0x0b9 align=1 (i32.const 0))) + (local.set 0x0ba (i64.load offset=0x0ba align=1 (i32.const 0))) + (local.set 0x0bb (i64.load offset=0x0bb align=1 (i32.const 0))) + (local.set 0x0bc (i64.load offset=0x0bc align=1 (i32.const 0))) + (local.set 0x0bd (i64.load offset=0x0bd align=1 (i32.const 0))) + (local.set 0x0be (i64.load offset=0x0be align=1 (i32.const 0))) + (local.set 0x0bf (i64.load offset=0x0bf align=1 (i32.const 0))) + (local.set 0x0c0 (i64.load offset=0x0c0 align=1 (i32.const 0))) + (local.set 0x0c1 (i64.load offset=0x0c1 align=1 (i32.const 0))) + (local.set 0x0c2 (i64.load offset=0x0c2 align=1 (i32.const 0))) + (local.set 0x0c3 (i64.load offset=0x0c3 align=1 (i32.const 0))) + (local.set 0x0c4 (i64.load offset=0x0c4 align=1 (i32.const 0))) + (local.set 0x0c5 (i64.load offset=0x0c5 align=1 (i32.const 0))) + (local.set 0x0c6 (i64.load offset=0x0c6 align=1 (i32.const 0))) + (local.set 0x0c7 (i64.load offset=0x0c7 align=1 (i32.const 0))) + (local.set 0x0c8 (i64.load offset=0x0c8 align=1 (i32.const 0))) + (local.set 0x0c9 (i64.load offset=0x0c9 align=1 (i32.const 0))) + (local.set 0x0ca (i64.load offset=0x0ca align=1 (i32.const 0))) + (local.set 0x0cb (i64.load offset=0x0cb align=1 (i32.const 0))) + (local.set 0x0cc (i64.load offset=0x0cc align=1 (i32.const 0))) + (local.set 0x0cd (i64.load offset=0x0cd align=1 (i32.const 0))) + (local.set 0x0ce (i64.load offset=0x0ce align=1 (i32.const 0))) + (local.set 0x0cf (i64.load offset=0x0cf align=1 (i32.const 0))) + (local.set 0x0d0 (i64.load offset=0x0d0 align=1 (i32.const 0))) + (local.set 0x0d1 (i64.load offset=0x0d1 align=1 (i32.const 0))) + (local.set 0x0d2 (i64.load offset=0x0d2 align=1 (i32.const 0))) + (local.set 0x0d3 (i64.load offset=0x0d3 align=1 (i32.const 0))) + (local.set 0x0d4 (i64.load offset=0x0d4 align=1 (i32.const 0))) + (local.set 0x0d5 (i64.load offset=0x0d5 align=1 (i32.const 0))) + (local.set 0x0d6 (i64.load offset=0x0d6 align=1 (i32.const 0))) + (local.set 0x0d7 (i64.load offset=0x0d7 align=1 (i32.const 0))) + (local.set 0x0d8 (i64.load offset=0x0d8 align=1 (i32.const 0))) + (local.set 0x0d9 (i64.load offset=0x0d9 align=1 (i32.const 0))) + (local.set 0x0da (i64.load offset=0x0da align=1 (i32.const 0))) + (local.set 0x0db (i64.load offset=0x0db align=1 (i32.const 0))) + (local.set 0x0dc (i64.load offset=0x0dc align=1 (i32.const 0))) + (local.set 0x0dd (i64.load offset=0x0dd align=1 (i32.const 0))) + (local.set 0x0de (i64.load offset=0x0de align=1 (i32.const 0))) + (local.set 0x0df (i64.load offset=0x0df align=1 (i32.const 0))) + (local.set 0x0e0 (i64.load offset=0x0e0 align=1 (i32.const 0))) + (local.set 0x0e1 (i64.load offset=0x0e1 align=1 (i32.const 0))) + (local.set 0x0e2 (i64.load offset=0x0e2 align=1 (i32.const 0))) + (local.set 0x0e3 (i64.load offset=0x0e3 align=1 (i32.const 0))) + (local.set 0x0e4 (i64.load offset=0x0e4 align=1 (i32.const 0))) + (local.set 0x0e5 (i64.load offset=0x0e5 align=1 (i32.const 0))) + (local.set 0x0e6 (i64.load offset=0x0e6 align=1 (i32.const 0))) + (local.set 0x0e7 (i64.load offset=0x0e7 align=1 (i32.const 0))) + (local.set 0x0e8 (i64.load offset=0x0e8 align=1 (i32.const 0))) + (local.set 0x0e9 (i64.load offset=0x0e9 align=1 (i32.const 0))) + (local.set 0x0ea (i64.load offset=0x0ea align=1 (i32.const 0))) + (local.set 0x0eb (i64.load offset=0x0eb align=1 (i32.const 0))) + (local.set 0x0ec (i64.load offset=0x0ec align=1 (i32.const 0))) + (local.set 0x0ed (i64.load offset=0x0ed align=1 (i32.const 0))) + (local.set 0x0ee (i64.load offset=0x0ee align=1 (i32.const 0))) + (local.set 0x0ef (i64.load offset=0x0ef align=1 (i32.const 0))) + (local.set 0x0f0 (i64.load offset=0x0f0 align=1 (i32.const 0))) + (local.set 0x0f1 (i64.load offset=0x0f1 align=1 (i32.const 0))) + (local.set 0x0f2 (i64.load offset=0x0f2 align=1 (i32.const 0))) + (local.set 0x0f3 (i64.load offset=0x0f3 align=1 (i32.const 0))) + (local.set 0x0f4 (i64.load offset=0x0f4 align=1 (i32.const 0))) + (local.set 0x0f5 (i64.load offset=0x0f5 align=1 (i32.const 0))) + (local.set 0x0f6 (i64.load offset=0x0f6 align=1 (i32.const 0))) + (local.set 0x0f7 (i64.load offset=0x0f7 align=1 (i32.const 0))) + (local.set 0x0f8 (i64.load offset=0x0f8 align=1 (i32.const 0))) + (local.set 0x0f9 (i64.load offset=0x0f9 align=1 (i32.const 0))) + (local.set 0x0fa (i64.load offset=0x0fa align=1 (i32.const 0))) + (local.set 0x0fb (i64.load offset=0x0fb align=1 (i32.const 0))) + (local.set 0x0fc (i64.load offset=0x0fc align=1 (i32.const 0))) + (local.set 0x0fd (i64.load offset=0x0fd align=1 (i32.const 0))) + (local.set 0x0fe (i64.load offset=0x0fe align=1 (i32.const 0))) + (local.set 0x0ff (i64.load offset=0x0ff align=1 (i32.const 0))) + (local.set 0x100 (i64.load offset=0x100 align=1 (i32.const 0))) + (local.set 0x101 (i64.load offset=0x101 align=1 (i32.const 0))) + (local.set 0x102 (i64.load offset=0x102 align=1 (i32.const 0))) + (local.set 0x103 (i64.load offset=0x103 align=1 (i32.const 0))) + (local.set 0x104 (i64.load offset=0x104 align=1 (i32.const 0))) + (local.set 0x105 (i64.load offset=0x105 align=1 (i32.const 0))) + (local.set 0x106 (i64.load offset=0x106 align=1 (i32.const 0))) + (local.set 0x107 (i64.load offset=0x107 align=1 (i32.const 0))) + (local.set 0x108 (i64.load offset=0x108 align=1 (i32.const 0))) + (local.set 0x109 (i64.load offset=0x109 align=1 (i32.const 0))) + (local.set 0x10a (i64.load offset=0x10a align=1 (i32.const 0))) + (local.set 0x10b (i64.load offset=0x10b align=1 (i32.const 0))) + (local.set 0x10c (i64.load offset=0x10c align=1 (i32.const 0))) + (local.set 0x10d (i64.load offset=0x10d align=1 (i32.const 0))) + (local.set 0x10e (i64.load offset=0x10e align=1 (i32.const 0))) + (local.set 0x10f (i64.load offset=0x10f align=1 (i32.const 0))) + (local.set 0x110 (i64.load offset=0x110 align=1 (i32.const 0))) + (local.set 0x111 (i64.load offset=0x111 align=1 (i32.const 0))) + (local.set 0x112 (i64.load offset=0x112 align=1 (i32.const 0))) + (local.set 0x113 (i64.load offset=0x113 align=1 (i32.const 0))) + (local.set 0x114 (i64.load offset=0x114 align=1 (i32.const 0))) + (local.set 0x115 (i64.load offset=0x115 align=1 (i32.const 0))) + (local.set 0x116 (i64.load offset=0x116 align=1 (i32.const 0))) + (local.set 0x117 (i64.load offset=0x117 align=1 (i32.const 0))) + (local.set 0x118 (i64.load offset=0x118 align=1 (i32.const 0))) + (local.set 0x119 (i64.load offset=0x119 align=1 (i32.const 0))) + (local.set 0x11a (i64.load offset=0x11a align=1 (i32.const 0))) + (local.set 0x11b (i64.load offset=0x11b align=1 (i32.const 0))) + (local.set 0x11c (i64.load offset=0x11c align=1 (i32.const 0))) + (local.set 0x11d (i64.load offset=0x11d align=1 (i32.const 0))) + (local.set 0x11e (i64.load offset=0x11e align=1 (i32.const 0))) + (local.set 0x11f (i64.load offset=0x11f align=1 (i32.const 0))) + (local.set 0x120 (i64.load offset=0x120 align=1 (i32.const 0))) + (local.set 0x121 (i64.load offset=0x121 align=1 (i32.const 0))) + (local.set 0x122 (i64.load offset=0x122 align=1 (i32.const 0))) + (local.set 0x123 (i64.load offset=0x123 align=1 (i32.const 0))) + (local.set 0x124 (i64.load offset=0x124 align=1 (i32.const 0))) + (local.set 0x125 (i64.load offset=0x125 align=1 (i32.const 0))) + (local.set 0x126 (i64.load offset=0x126 align=1 (i32.const 0))) + (local.set 0x127 (i64.load offset=0x127 align=1 (i32.const 0))) + (local.set 0x128 (i64.load offset=0x128 align=1 (i32.const 0))) + (local.set 0x129 (i64.load offset=0x129 align=1 (i32.const 0))) + (local.set 0x12a (i64.load offset=0x12a align=1 (i32.const 0))) + (local.set 0x12b (i64.load offset=0x12b align=1 (i32.const 0))) + (local.set 0x12c (i64.load offset=0x12c align=1 (i32.const 0))) + (local.set 0x12d (i64.load offset=0x12d align=1 (i32.const 0))) + (local.set 0x12e (i64.load offset=0x12e align=1 (i32.const 0))) + (local.set 0x12f (i64.load offset=0x12f align=1 (i32.const 0))) + (local.set 0x130 (i64.load offset=0x130 align=1 (i32.const 0))) + (local.set 0x131 (i64.load offset=0x131 align=1 (i32.const 0))) + (local.set 0x132 (i64.load offset=0x132 align=1 (i32.const 0))) + (local.set 0x133 (i64.load offset=0x133 align=1 (i32.const 0))) + (local.set 0x134 (i64.load offset=0x134 align=1 (i32.const 0))) + (local.set 0x135 (i64.load offset=0x135 align=1 (i32.const 0))) + (local.set 0x136 (i64.load offset=0x136 align=1 (i32.const 0))) + (local.set 0x137 (i64.load offset=0x137 align=1 (i32.const 0))) + (local.set 0x138 (i64.load offset=0x138 align=1 (i32.const 0))) + (local.set 0x139 (i64.load offset=0x139 align=1 (i32.const 0))) + (local.set 0x13a (i64.load offset=0x13a align=1 (i32.const 0))) + (local.set 0x13b (i64.load offset=0x13b align=1 (i32.const 0))) + (local.set 0x13c (i64.load offset=0x13c align=1 (i32.const 0))) + (local.set 0x13d (i64.load offset=0x13d align=1 (i32.const 0))) + (local.set 0x13e (i64.load offset=0x13e align=1 (i32.const 0))) + (local.set 0x13f (i64.load offset=0x13f align=1 (i32.const 0))) + (local.set 0x140 (i64.load offset=0x140 align=1 (i32.const 0))) + (local.set 0x141 (i64.load offset=0x141 align=1 (i32.const 0))) + (local.set 0x142 (i64.load offset=0x142 align=1 (i32.const 0))) + (local.set 0x143 (i64.load offset=0x143 align=1 (i32.const 0))) + (local.set 0x144 (i64.load offset=0x144 align=1 (i32.const 0))) + (local.set 0x145 (i64.load offset=0x145 align=1 (i32.const 0))) + (local.set 0x146 (i64.load offset=0x146 align=1 (i32.const 0))) + (local.set 0x147 (i64.load offset=0x147 align=1 (i32.const 0))) + (local.set 0x148 (i64.load offset=0x148 align=1 (i32.const 0))) + (local.set 0x149 (i64.load offset=0x149 align=1 (i32.const 0))) + (local.set 0x14a (i64.load offset=0x14a align=1 (i32.const 0))) + (local.set 0x14b (i64.load offset=0x14b align=1 (i32.const 0))) + (local.set 0x14c (i64.load offset=0x14c align=1 (i32.const 0))) + (local.set 0x14d (i64.load offset=0x14d align=1 (i32.const 0))) + (local.set 0x14e (i64.load offset=0x14e align=1 (i32.const 0))) + (local.set 0x14f (i64.load offset=0x14f align=1 (i32.const 0))) + (local.set 0x150 (i64.load offset=0x150 align=1 (i32.const 0))) + (local.set 0x151 (i64.load offset=0x151 align=1 (i32.const 0))) + (local.set 0x152 (i64.load offset=0x152 align=1 (i32.const 0))) + (local.set 0x153 (i64.load offset=0x153 align=1 (i32.const 0))) + (local.set 0x154 (i64.load offset=0x154 align=1 (i32.const 0))) + (local.set 0x155 (i64.load offset=0x155 align=1 (i32.const 0))) + (local.set 0x156 (i64.load offset=0x156 align=1 (i32.const 0))) + (local.set 0x157 (i64.load offset=0x157 align=1 (i32.const 0))) + (local.set 0x158 (i64.load offset=0x158 align=1 (i32.const 0))) + (local.set 0x159 (i64.load offset=0x159 align=1 (i32.const 0))) + (local.set 0x15a (i64.load offset=0x15a align=1 (i32.const 0))) + (local.set 0x15b (i64.load offset=0x15b align=1 (i32.const 0))) + (local.set 0x15c (i64.load offset=0x15c align=1 (i32.const 0))) + (local.set 0x15d (i64.load offset=0x15d align=1 (i32.const 0))) + (local.set 0x15e (i64.load offset=0x15e align=1 (i32.const 0))) + (local.set 0x15f (i64.load offset=0x15f align=1 (i32.const 0))) + (local.set 0x160 (i64.load offset=0x160 align=1 (i32.const 0))) + (local.set 0x161 (i64.load offset=0x161 align=1 (i32.const 0))) + (local.set 0x162 (i64.load offset=0x162 align=1 (i32.const 0))) + (local.set 0x163 (i64.load offset=0x163 align=1 (i32.const 0))) + (local.set 0x164 (i64.load offset=0x164 align=1 (i32.const 0))) + (local.set 0x165 (i64.load offset=0x165 align=1 (i32.const 0))) + (local.set 0x166 (i64.load offset=0x166 align=1 (i32.const 0))) + (local.set 0x167 (i64.load offset=0x167 align=1 (i32.const 0))) + (local.set 0x168 (i64.load offset=0x168 align=1 (i32.const 0))) + (local.set 0x169 (i64.load offset=0x169 align=1 (i32.const 0))) + (local.set 0x16a (i64.load offset=0x16a align=1 (i32.const 0))) + (local.set 0x16b (i64.load offset=0x16b align=1 (i32.const 0))) + (local.set 0x16c (i64.load offset=0x16c align=1 (i32.const 0))) + (local.set 0x16d (i64.load offset=0x16d align=1 (i32.const 0))) + (local.set 0x16e (i64.load offset=0x16e align=1 (i32.const 0))) + (local.set 0x16f (i64.load offset=0x16f align=1 (i32.const 0))) + (local.set 0x170 (i64.load offset=0x170 align=1 (i32.const 0))) + (local.set 0x171 (i64.load offset=0x171 align=1 (i32.const 0))) + (local.set 0x172 (i64.load offset=0x172 align=1 (i32.const 0))) + (local.set 0x173 (i64.load offset=0x173 align=1 (i32.const 0))) + (local.set 0x174 (i64.load offset=0x174 align=1 (i32.const 0))) + (local.set 0x175 (i64.load offset=0x175 align=1 (i32.const 0))) + (local.set 0x176 (i64.load offset=0x176 align=1 (i32.const 0))) + (local.set 0x177 (i64.load offset=0x177 align=1 (i32.const 0))) + (local.set 0x178 (i64.load offset=0x178 align=1 (i32.const 0))) + (local.set 0x179 (i64.load offset=0x179 align=1 (i32.const 0))) + (local.set 0x17a (i64.load offset=0x17a align=1 (i32.const 0))) + (local.set 0x17b (i64.load offset=0x17b align=1 (i32.const 0))) + (local.set 0x17c (i64.load offset=0x17c align=1 (i32.const 0))) + (local.set 0x17d (i64.load offset=0x17d align=1 (i32.const 0))) + (local.set 0x17e (i64.load offset=0x17e align=1 (i32.const 0))) + (local.set 0x17f (i64.load offset=0x17f align=1 (i32.const 0))) + (local.set 0x180 (i64.load offset=0x180 align=1 (i32.const 0))) + (local.set 0x181 (i64.load offset=0x181 align=1 (i32.const 0))) + (local.set 0x182 (i64.load offset=0x182 align=1 (i32.const 0))) + (local.set 0x183 (i64.load offset=0x183 align=1 (i32.const 0))) + (local.set 0x184 (i64.load offset=0x184 align=1 (i32.const 0))) + (local.set 0x185 (i64.load offset=0x185 align=1 (i32.const 0))) + (local.set 0x186 (i64.load offset=0x186 align=1 (i32.const 0))) + (local.set 0x187 (i64.load offset=0x187 align=1 (i32.const 0))) + (local.set 0x188 (i64.load offset=0x188 align=1 (i32.const 0))) + (local.set 0x189 (i64.load offset=0x189 align=1 (i32.const 0))) + (local.set 0x18a (i64.load offset=0x18a align=1 (i32.const 0))) + (local.set 0x18b (i64.load offset=0x18b align=1 (i32.const 0))) + (local.set 0x18c (i64.load offset=0x18c align=1 (i32.const 0))) + (local.set 0x18d (i64.load offset=0x18d align=1 (i32.const 0))) + (local.set 0x18e (i64.load offset=0x18e align=1 (i32.const 0))) + (local.set 0x18f (i64.load offset=0x18f align=1 (i32.const 0))) + (local.set 0x190 (i64.load offset=0x190 align=1 (i32.const 0))) + (local.set 0x191 (i64.load offset=0x191 align=1 (i32.const 0))) + (local.set 0x192 (i64.load offset=0x192 align=1 (i32.const 0))) + (local.set 0x193 (i64.load offset=0x193 align=1 (i32.const 0))) + (local.set 0x194 (i64.load offset=0x194 align=1 (i32.const 0))) + (local.set 0x195 (i64.load offset=0x195 align=1 (i32.const 0))) + (local.set 0x196 (i64.load offset=0x196 align=1 (i32.const 0))) + (local.set 0x197 (i64.load offset=0x197 align=1 (i32.const 0))) + (local.set 0x198 (i64.load offset=0x198 align=1 (i32.const 0))) + (local.set 0x199 (i64.load offset=0x199 align=1 (i32.const 0))) + (local.set 0x19a (i64.load offset=0x19a align=1 (i32.const 0))) + (local.set 0x19b (i64.load offset=0x19b align=1 (i32.const 0))) + (local.set 0x19c (i64.load offset=0x19c align=1 (i32.const 0))) + (local.set 0x19d (i64.load offset=0x19d align=1 (i32.const 0))) + (local.set 0x19e (i64.load offset=0x19e align=1 (i32.const 0))) + (local.set 0x19f (i64.load offset=0x19f align=1 (i32.const 0))) + (local.set 0x1a0 (i64.load offset=0x1a0 align=1 (i32.const 0))) + (local.set 0x1a1 (i64.load offset=0x1a1 align=1 (i32.const 0))) + (local.set 0x1a2 (i64.load offset=0x1a2 align=1 (i32.const 0))) + (local.set 0x1a3 (i64.load offset=0x1a3 align=1 (i32.const 0))) + (local.set 0x1a4 (i64.load offset=0x1a4 align=1 (i32.const 0))) + (local.set 0x1a5 (i64.load offset=0x1a5 align=1 (i32.const 0))) + (local.set 0x1a6 (i64.load offset=0x1a6 align=1 (i32.const 0))) + (local.set 0x1a7 (i64.load offset=0x1a7 align=1 (i32.const 0))) + (local.set 0x1a8 (i64.load offset=0x1a8 align=1 (i32.const 0))) + (local.set 0x1a9 (i64.load offset=0x1a9 align=1 (i32.const 0))) + (local.set 0x1aa (i64.load offset=0x1aa align=1 (i32.const 0))) + (local.set 0x1ab (i64.load offset=0x1ab align=1 (i32.const 0))) + (local.set 0x1ac (i64.load offset=0x1ac align=1 (i32.const 0))) + (local.set 0x1ad (i64.load offset=0x1ad align=1 (i32.const 0))) + (local.set 0x1ae (i64.load offset=0x1ae align=1 (i32.const 0))) + (local.set 0x1af (i64.load offset=0x1af align=1 (i32.const 0))) + (local.set 0x1b0 (i64.load offset=0x1b0 align=1 (i32.const 0))) + (local.set 0x1b1 (i64.load offset=0x1b1 align=1 (i32.const 0))) + (local.set 0x1b2 (i64.load offset=0x1b2 align=1 (i32.const 0))) + (local.set 0x1b3 (i64.load offset=0x1b3 align=1 (i32.const 0))) + (local.set 0x1b4 (i64.load offset=0x1b4 align=1 (i32.const 0))) + (local.set 0x1b5 (i64.load offset=0x1b5 align=1 (i32.const 0))) + (local.set 0x1b6 (i64.load offset=0x1b6 align=1 (i32.const 0))) + (local.set 0x1b7 (i64.load offset=0x1b7 align=1 (i32.const 0))) + (local.set 0x1b8 (i64.load offset=0x1b8 align=1 (i32.const 0))) + (local.set 0x1b9 (i64.load offset=0x1b9 align=1 (i32.const 0))) + (local.set 0x1ba (i64.load offset=0x1ba align=1 (i32.const 0))) + (local.set 0x1bb (i64.load offset=0x1bb align=1 (i32.const 0))) + (local.set 0x1bc (i64.load offset=0x1bc align=1 (i32.const 0))) + (local.set 0x1bd (i64.load offset=0x1bd align=1 (i32.const 0))) + (local.set 0x1be (i64.load offset=0x1be align=1 (i32.const 0))) + (local.set 0x1bf (i64.load offset=0x1bf align=1 (i32.const 0))) + (local.set 0x1c0 (i64.load offset=0x1c0 align=1 (i32.const 0))) + (local.set 0x1c1 (i64.load offset=0x1c1 align=1 (i32.const 0))) + (local.set 0x1c2 (i64.load offset=0x1c2 align=1 (i32.const 0))) + (local.set 0x1c3 (i64.load offset=0x1c3 align=1 (i32.const 0))) + (local.set 0x1c4 (i64.load offset=0x1c4 align=1 (i32.const 0))) + (local.set 0x1c5 (i64.load offset=0x1c5 align=1 (i32.const 0))) + (local.set 0x1c6 (i64.load offset=0x1c6 align=1 (i32.const 0))) + (local.set 0x1c7 (i64.load offset=0x1c7 align=1 (i32.const 0))) + (local.set 0x1c8 (i64.load offset=0x1c8 align=1 (i32.const 0))) + (local.set 0x1c9 (i64.load offset=0x1c9 align=1 (i32.const 0))) + (local.set 0x1ca (i64.load offset=0x1ca align=1 (i32.const 0))) + (local.set 0x1cb (i64.load offset=0x1cb align=1 (i32.const 0))) + (local.set 0x1cc (i64.load offset=0x1cc align=1 (i32.const 0))) + (local.set 0x1cd (i64.load offset=0x1cd align=1 (i32.const 0))) + (local.set 0x1ce (i64.load offset=0x1ce align=1 (i32.const 0))) + (local.set 0x1cf (i64.load offset=0x1cf align=1 (i32.const 0))) + (local.set 0x1d0 (i64.load offset=0x1d0 align=1 (i32.const 0))) + (local.set 0x1d1 (i64.load offset=0x1d1 align=1 (i32.const 0))) + (local.set 0x1d2 (i64.load offset=0x1d2 align=1 (i32.const 0))) + (local.set 0x1d3 (i64.load offset=0x1d3 align=1 (i32.const 0))) + (local.set 0x1d4 (i64.load offset=0x1d4 align=1 (i32.const 0))) + (local.set 0x1d5 (i64.load offset=0x1d5 align=1 (i32.const 0))) + (local.set 0x1d6 (i64.load offset=0x1d6 align=1 (i32.const 0))) + (local.set 0x1d7 (i64.load offset=0x1d7 align=1 (i32.const 0))) + (local.set 0x1d8 (i64.load offset=0x1d8 align=1 (i32.const 0))) + (local.set 0x1d9 (i64.load offset=0x1d9 align=1 (i32.const 0))) + (local.set 0x1da (i64.load offset=0x1da align=1 (i32.const 0))) + (local.set 0x1db (i64.load offset=0x1db align=1 (i32.const 0))) + (local.set 0x1dc (i64.load offset=0x1dc align=1 (i32.const 0))) + (local.set 0x1dd (i64.load offset=0x1dd align=1 (i32.const 0))) + (local.set 0x1de (i64.load offset=0x1de align=1 (i32.const 0))) + (local.set 0x1df (i64.load offset=0x1df align=1 (i32.const 0))) + (local.set 0x1e0 (i64.load offset=0x1e0 align=1 (i32.const 0))) + (local.set 0x1e1 (i64.load offset=0x1e1 align=1 (i32.const 0))) + (local.set 0x1e2 (i64.load offset=0x1e2 align=1 (i32.const 0))) + (local.set 0x1e3 (i64.load offset=0x1e3 align=1 (i32.const 0))) + (local.set 0x1e4 (i64.load offset=0x1e4 align=1 (i32.const 0))) + (local.set 0x1e5 (i64.load offset=0x1e5 align=1 (i32.const 0))) + (local.set 0x1e6 (i64.load offset=0x1e6 align=1 (i32.const 0))) + (local.set 0x1e7 (i64.load offset=0x1e7 align=1 (i32.const 0))) + (local.set 0x1e8 (i64.load offset=0x1e8 align=1 (i32.const 0))) + (local.set 0x1e9 (i64.load offset=0x1e9 align=1 (i32.const 0))) + (local.set 0x1ea (i64.load offset=0x1ea align=1 (i32.const 0))) + (local.set 0x1eb (i64.load offset=0x1eb align=1 (i32.const 0))) + (local.set 0x1ec (i64.load offset=0x1ec align=1 (i32.const 0))) + (local.set 0x1ed (i64.load offset=0x1ed align=1 (i32.const 0))) + (local.set 0x1ee (i64.load offset=0x1ee align=1 (i32.const 0))) + (local.set 0x1ef (i64.load offset=0x1ef align=1 (i32.const 0))) + (local.set 0x1f0 (i64.load offset=0x1f0 align=1 (i32.const 0))) + (local.set 0x1f1 (i64.load offset=0x1f1 align=1 (i32.const 0))) + (local.set 0x1f2 (i64.load offset=0x1f2 align=1 (i32.const 0))) + (local.set 0x1f3 (i64.load offset=0x1f3 align=1 (i32.const 0))) + (local.set 0x1f4 (i64.load offset=0x1f4 align=1 (i32.const 0))) + (local.set 0x1f5 (i64.load offset=0x1f5 align=1 (i32.const 0))) + (local.set 0x1f6 (i64.load offset=0x1f6 align=1 (i32.const 0))) + (local.set 0x1f7 (i64.load offset=0x1f7 align=1 (i32.const 0))) + (local.set 0x1f8 (i64.load offset=0x1f8 align=1 (i32.const 0))) + (local.set 0x1f9 (i64.load offset=0x1f9 align=1 (i32.const 0))) + (local.set 0x1fa (i64.load offset=0x1fa align=1 (i32.const 0))) + (local.set 0x1fb (i64.load offset=0x1fb align=1 (i32.const 0))) + (local.set 0x1fc (i64.load offset=0x1fc align=1 (i32.const 0))) + (local.set 0x1fd (i64.load offset=0x1fd align=1 (i32.const 0))) + (local.set 0x1fe (i64.load offset=0x1fe align=1 (i32.const 0))) + (local.set 0x1ff (i64.load offset=0x1ff align=1 (i32.const 0))) + (local.set 0x200 (i64.load offset=0x200 align=1 (i32.const 0))) + (local.set 0x201 (i64.load offset=0x201 align=1 (i32.const 0))) + (local.set 0x202 (i64.load offset=0x202 align=1 (i32.const 0))) + (local.set 0x203 (i64.load offset=0x203 align=1 (i32.const 0))) + (local.set 0x204 (i64.load offset=0x204 align=1 (i32.const 0))) + (local.set 0x205 (i64.load offset=0x205 align=1 (i32.const 0))) + (local.set 0x206 (i64.load offset=0x206 align=1 (i32.const 0))) + (local.set 0x207 (i64.load offset=0x207 align=1 (i32.const 0))) + (local.set 0x208 (i64.load offset=0x208 align=1 (i32.const 0))) + (local.set 0x209 (i64.load offset=0x209 align=1 (i32.const 0))) + (local.set 0x20a (i64.load offset=0x20a align=1 (i32.const 0))) + (local.set 0x20b (i64.load offset=0x20b align=1 (i32.const 0))) + (local.set 0x20c (i64.load offset=0x20c align=1 (i32.const 0))) + (local.set 0x20d (i64.load offset=0x20d align=1 (i32.const 0))) + (local.set 0x20e (i64.load offset=0x20e align=1 (i32.const 0))) + (local.set 0x20f (i64.load offset=0x20f align=1 (i32.const 0))) + (local.set 0x210 (i64.load offset=0x210 align=1 (i32.const 0))) + (local.set 0x211 (i64.load offset=0x211 align=1 (i32.const 0))) + (local.set 0x212 (i64.load offset=0x212 align=1 (i32.const 0))) + (local.set 0x213 (i64.load offset=0x213 align=1 (i32.const 0))) + (local.set 0x214 (i64.load offset=0x214 align=1 (i32.const 0))) + (local.set 0x215 (i64.load offset=0x215 align=1 (i32.const 0))) + (local.set 0x216 (i64.load offset=0x216 align=1 (i32.const 0))) + (local.set 0x217 (i64.load offset=0x217 align=1 (i32.const 0))) + (local.set 0x218 (i64.load offset=0x218 align=1 (i32.const 0))) + (local.set 0x219 (i64.load offset=0x219 align=1 (i32.const 0))) + (local.set 0x21a (i64.load offset=0x21a align=1 (i32.const 0))) + (local.set 0x21b (i64.load offset=0x21b align=1 (i32.const 0))) + (local.set 0x21c (i64.load offset=0x21c align=1 (i32.const 0))) + (local.set 0x21d (i64.load offset=0x21d align=1 (i32.const 0))) + (local.set 0x21e (i64.load offset=0x21e align=1 (i32.const 0))) + (local.set 0x21f (i64.load offset=0x21f align=1 (i32.const 0))) + (local.set 0x220 (i64.load offset=0x220 align=1 (i32.const 0))) + (local.set 0x221 (i64.load offset=0x221 align=1 (i32.const 0))) + (local.set 0x222 (i64.load offset=0x222 align=1 (i32.const 0))) + (local.set 0x223 (i64.load offset=0x223 align=1 (i32.const 0))) + (local.set 0x224 (i64.load offset=0x224 align=1 (i32.const 0))) + (local.set 0x225 (i64.load offset=0x225 align=1 (i32.const 0))) + (local.set 0x226 (i64.load offset=0x226 align=1 (i32.const 0))) + (local.set 0x227 (i64.load offset=0x227 align=1 (i32.const 0))) + (local.set 0x228 (i64.load offset=0x228 align=1 (i32.const 0))) + (local.set 0x229 (i64.load offset=0x229 align=1 (i32.const 0))) + (local.set 0x22a (i64.load offset=0x22a align=1 (i32.const 0))) + (local.set 0x22b (i64.load offset=0x22b align=1 (i32.const 0))) + (local.set 0x22c (i64.load offset=0x22c align=1 (i32.const 0))) + (local.set 0x22d (i64.load offset=0x22d align=1 (i32.const 0))) + (local.set 0x22e (i64.load offset=0x22e align=1 (i32.const 0))) + (local.set 0x22f (i64.load offset=0x22f align=1 (i32.const 0))) + (local.set 0x230 (i64.load offset=0x230 align=1 (i32.const 0))) + (local.set 0x231 (i64.load offset=0x231 align=1 (i32.const 0))) + (local.set 0x232 (i64.load offset=0x232 align=1 (i32.const 0))) + (local.set 0x233 (i64.load offset=0x233 align=1 (i32.const 0))) + (local.set 0x234 (i64.load offset=0x234 align=1 (i32.const 0))) + (local.set 0x235 (i64.load offset=0x235 align=1 (i32.const 0))) + (local.set 0x236 (i64.load offset=0x236 align=1 (i32.const 0))) + (local.set 0x237 (i64.load offset=0x237 align=1 (i32.const 0))) + (local.set 0x238 (i64.load offset=0x238 align=1 (i32.const 0))) + (local.set 0x239 (i64.load offset=0x239 align=1 (i32.const 0))) + (local.set 0x23a (i64.load offset=0x23a align=1 (i32.const 0))) + (local.set 0x23b (i64.load offset=0x23b align=1 (i32.const 0))) + (local.set 0x23c (i64.load offset=0x23c align=1 (i32.const 0))) + (local.set 0x23d (i64.load offset=0x23d align=1 (i32.const 0))) + (local.set 0x23e (i64.load offset=0x23e align=1 (i32.const 0))) + (local.set 0x23f (i64.load offset=0x23f align=1 (i32.const 0))) + (local.set 0x240 (i64.load offset=0x240 align=1 (i32.const 0))) + (local.set 0x241 (i64.load offset=0x241 align=1 (i32.const 0))) + (local.set 0x242 (i64.load offset=0x242 align=1 (i32.const 0))) + (local.set 0x243 (i64.load offset=0x243 align=1 (i32.const 0))) + (local.set 0x244 (i64.load offset=0x244 align=1 (i32.const 0))) + (local.set 0x245 (i64.load offset=0x245 align=1 (i32.const 0))) + (local.set 0x246 (i64.load offset=0x246 align=1 (i32.const 0))) + (local.set 0x247 (i64.load offset=0x247 align=1 (i32.const 0))) + (local.set 0x248 (i64.load offset=0x248 align=1 (i32.const 0))) + (local.set 0x249 (i64.load offset=0x249 align=1 (i32.const 0))) + (local.set 0x24a (i64.load offset=0x24a align=1 (i32.const 0))) + (local.set 0x24b (i64.load offset=0x24b align=1 (i32.const 0))) + (local.set 0x24c (i64.load offset=0x24c align=1 (i32.const 0))) + (local.set 0x24d (i64.load offset=0x24d align=1 (i32.const 0))) + (local.set 0x24e (i64.load offset=0x24e align=1 (i32.const 0))) + (local.set 0x24f (i64.load offset=0x24f align=1 (i32.const 0))) + (local.set 0x250 (i64.load offset=0x250 align=1 (i32.const 0))) + (local.set 0x251 (i64.load offset=0x251 align=1 (i32.const 0))) + (local.set 0x252 (i64.load offset=0x252 align=1 (i32.const 0))) + (local.set 0x253 (i64.load offset=0x253 align=1 (i32.const 0))) + (local.set 0x254 (i64.load offset=0x254 align=1 (i32.const 0))) + (local.set 0x255 (i64.load offset=0x255 align=1 (i32.const 0))) + (local.set 0x256 (i64.load offset=0x256 align=1 (i32.const 0))) + (local.set 0x257 (i64.load offset=0x257 align=1 (i32.const 0))) + (local.set 0x258 (i64.load offset=0x258 align=1 (i32.const 0))) + (local.set 0x259 (i64.load offset=0x259 align=1 (i32.const 0))) + (local.set 0x25a (i64.load offset=0x25a align=1 (i32.const 0))) + (local.set 0x25b (i64.load offset=0x25b align=1 (i32.const 0))) + (local.set 0x25c (i64.load offset=0x25c align=1 (i32.const 0))) + (local.set 0x25d (i64.load offset=0x25d align=1 (i32.const 0))) + (local.set 0x25e (i64.load offset=0x25e align=1 (i32.const 0))) + (local.set 0x25f (i64.load offset=0x25f align=1 (i32.const 0))) + (local.set 0x260 (i64.load offset=0x260 align=1 (i32.const 0))) + (local.set 0x261 (i64.load offset=0x261 align=1 (i32.const 0))) + (local.set 0x262 (i64.load offset=0x262 align=1 (i32.const 0))) + (local.set 0x263 (i64.load offset=0x263 align=1 (i32.const 0))) + (local.set 0x264 (i64.load offset=0x264 align=1 (i32.const 0))) + (local.set 0x265 (i64.load offset=0x265 align=1 (i32.const 0))) + (local.set 0x266 (i64.load offset=0x266 align=1 (i32.const 0))) + (local.set 0x267 (i64.load offset=0x267 align=1 (i32.const 0))) + (local.set 0x268 (i64.load offset=0x268 align=1 (i32.const 0))) + (local.set 0x269 (i64.load offset=0x269 align=1 (i32.const 0))) + (local.set 0x26a (i64.load offset=0x26a align=1 (i32.const 0))) + (local.set 0x26b (i64.load offset=0x26b align=1 (i32.const 0))) + (local.set 0x26c (i64.load offset=0x26c align=1 (i32.const 0))) + (local.set 0x26d (i64.load offset=0x26d align=1 (i32.const 0))) + (local.set 0x26e (i64.load offset=0x26e align=1 (i32.const 0))) + (local.set 0x26f (i64.load offset=0x26f align=1 (i32.const 0))) + (local.set 0x270 (i64.load offset=0x270 align=1 (i32.const 0))) + (local.set 0x271 (i64.load offset=0x271 align=1 (i32.const 0))) + (local.set 0x272 (i64.load offset=0x272 align=1 (i32.const 0))) + (local.set 0x273 (i64.load offset=0x273 align=1 (i32.const 0))) + (local.set 0x274 (i64.load offset=0x274 align=1 (i32.const 0))) + (local.set 0x275 (i64.load offset=0x275 align=1 (i32.const 0))) + (local.set 0x276 (i64.load offset=0x276 align=1 (i32.const 0))) + (local.set 0x277 (i64.load offset=0x277 align=1 (i32.const 0))) + (local.set 0x278 (i64.load offset=0x278 align=1 (i32.const 0))) + (local.set 0x279 (i64.load offset=0x279 align=1 (i32.const 0))) + (local.set 0x27a (i64.load offset=0x27a align=1 (i32.const 0))) + (local.set 0x27b (i64.load offset=0x27b align=1 (i32.const 0))) + (local.set 0x27c (i64.load offset=0x27c align=1 (i32.const 0))) + (local.set 0x27d (i64.load offset=0x27d align=1 (i32.const 0))) + (local.set 0x27e (i64.load offset=0x27e align=1 (i32.const 0))) + (local.set 0x27f (i64.load offset=0x27f align=1 (i32.const 0))) + (local.set 0x280 (i64.load offset=0x280 align=1 (i32.const 0))) + (local.set 0x281 (i64.load offset=0x281 align=1 (i32.const 0))) + (local.set 0x282 (i64.load offset=0x282 align=1 (i32.const 0))) + (local.set 0x283 (i64.load offset=0x283 align=1 (i32.const 0))) + (local.set 0x284 (i64.load offset=0x284 align=1 (i32.const 0))) + (local.set 0x285 (i64.load offset=0x285 align=1 (i32.const 0))) + (local.set 0x286 (i64.load offset=0x286 align=1 (i32.const 0))) + (local.set 0x287 (i64.load offset=0x287 align=1 (i32.const 0))) + (local.set 0x288 (i64.load offset=0x288 align=1 (i32.const 0))) + (local.set 0x289 (i64.load offset=0x289 align=1 (i32.const 0))) + (local.set 0x28a (i64.load offset=0x28a align=1 (i32.const 0))) + (local.set 0x28b (i64.load offset=0x28b align=1 (i32.const 0))) + (local.set 0x28c (i64.load offset=0x28c align=1 (i32.const 0))) + (local.set 0x28d (i64.load offset=0x28d align=1 (i32.const 0))) + (local.set 0x28e (i64.load offset=0x28e align=1 (i32.const 0))) + (local.set 0x28f (i64.load offset=0x28f align=1 (i32.const 0))) + (local.set 0x290 (i64.load offset=0x290 align=1 (i32.const 0))) + (local.set 0x291 (i64.load offset=0x291 align=1 (i32.const 0))) + (local.set 0x292 (i64.load offset=0x292 align=1 (i32.const 0))) + (local.set 0x293 (i64.load offset=0x293 align=1 (i32.const 0))) + (local.set 0x294 (i64.load offset=0x294 align=1 (i32.const 0))) + (local.set 0x295 (i64.load offset=0x295 align=1 (i32.const 0))) + (local.set 0x296 (i64.load offset=0x296 align=1 (i32.const 0))) + (local.set 0x297 (i64.load offset=0x297 align=1 (i32.const 0))) + (local.set 0x298 (i64.load offset=0x298 align=1 (i32.const 0))) + (local.set 0x299 (i64.load offset=0x299 align=1 (i32.const 0))) + (local.set 0x29a (i64.load offset=0x29a align=1 (i32.const 0))) + (local.set 0x29b (i64.load offset=0x29b align=1 (i32.const 0))) + (local.set 0x29c (i64.load offset=0x29c align=1 (i32.const 0))) + (local.set 0x29d (i64.load offset=0x29d align=1 (i32.const 0))) + (local.set 0x29e (i64.load offset=0x29e align=1 (i32.const 0))) + (local.set 0x29f (i64.load offset=0x29f align=1 (i32.const 0))) + (local.set 0x2a0 (i64.load offset=0x2a0 align=1 (i32.const 0))) + (local.set 0x2a1 (i64.load offset=0x2a1 align=1 (i32.const 0))) + (local.set 0x2a2 (i64.load offset=0x2a2 align=1 (i32.const 0))) + (local.set 0x2a3 (i64.load offset=0x2a3 align=1 (i32.const 0))) + (local.set 0x2a4 (i64.load offset=0x2a4 align=1 (i32.const 0))) + (local.set 0x2a5 (i64.load offset=0x2a5 align=1 (i32.const 0))) + (local.set 0x2a6 (i64.load offset=0x2a6 align=1 (i32.const 0))) + (local.set 0x2a7 (i64.load offset=0x2a7 align=1 (i32.const 0))) + (local.set 0x2a8 (i64.load offset=0x2a8 align=1 (i32.const 0))) + (local.set 0x2a9 (i64.load offset=0x2a9 align=1 (i32.const 0))) + (local.set 0x2aa (i64.load offset=0x2aa align=1 (i32.const 0))) + (local.set 0x2ab (i64.load offset=0x2ab align=1 (i32.const 0))) + (local.set 0x2ac (i64.load offset=0x2ac align=1 (i32.const 0))) + (local.set 0x2ad (i64.load offset=0x2ad align=1 (i32.const 0))) + (local.set 0x2ae (i64.load offset=0x2ae align=1 (i32.const 0))) + (local.set 0x2af (i64.load offset=0x2af align=1 (i32.const 0))) + (local.set 0x2b0 (i64.load offset=0x2b0 align=1 (i32.const 0))) + (local.set 0x2b1 (i64.load offset=0x2b1 align=1 (i32.const 0))) + (local.set 0x2b2 (i64.load offset=0x2b2 align=1 (i32.const 0))) + (local.set 0x2b3 (i64.load offset=0x2b3 align=1 (i32.const 0))) + (local.set 0x2b4 (i64.load offset=0x2b4 align=1 (i32.const 0))) + (local.set 0x2b5 (i64.load offset=0x2b5 align=1 (i32.const 0))) + (local.set 0x2b6 (i64.load offset=0x2b6 align=1 (i32.const 0))) + (local.set 0x2b7 (i64.load offset=0x2b7 align=1 (i32.const 0))) + (local.set 0x2b8 (i64.load offset=0x2b8 align=1 (i32.const 0))) + (local.set 0x2b9 (i64.load offset=0x2b9 align=1 (i32.const 0))) + (local.set 0x2ba (i64.load offset=0x2ba align=1 (i32.const 0))) + (local.set 0x2bb (i64.load offset=0x2bb align=1 (i32.const 0))) + (local.set 0x2bc (i64.load offset=0x2bc align=1 (i32.const 0))) + (local.set 0x2bd (i64.load offset=0x2bd align=1 (i32.const 0))) + (local.set 0x2be (i64.load offset=0x2be align=1 (i32.const 0))) + (local.set 0x2bf (i64.load offset=0x2bf align=1 (i32.const 0))) + (local.set 0x2c0 (i64.load offset=0x2c0 align=1 (i32.const 0))) + (local.set 0x2c1 (i64.load offset=0x2c1 align=1 (i32.const 0))) + (local.set 0x2c2 (i64.load offset=0x2c2 align=1 (i32.const 0))) + (local.set 0x2c3 (i64.load offset=0x2c3 align=1 (i32.const 0))) + (local.set 0x2c4 (i64.load offset=0x2c4 align=1 (i32.const 0))) + (local.set 0x2c5 (i64.load offset=0x2c5 align=1 (i32.const 0))) + (local.set 0x2c6 (i64.load offset=0x2c6 align=1 (i32.const 0))) + (local.set 0x2c7 (i64.load offset=0x2c7 align=1 (i32.const 0))) + (local.set 0x2c8 (i64.load offset=0x2c8 align=1 (i32.const 0))) + (local.set 0x2c9 (i64.load offset=0x2c9 align=1 (i32.const 0))) + (local.set 0x2ca (i64.load offset=0x2ca align=1 (i32.const 0))) + (local.set 0x2cb (i64.load offset=0x2cb align=1 (i32.const 0))) + (local.set 0x2cc (i64.load offset=0x2cc align=1 (i32.const 0))) + (local.set 0x2cd (i64.load offset=0x2cd align=1 (i32.const 0))) + (local.set 0x2ce (i64.load offset=0x2ce align=1 (i32.const 0))) + (local.set 0x2cf (i64.load offset=0x2cf align=1 (i32.const 0))) + (local.set 0x2d0 (i64.load offset=0x2d0 align=1 (i32.const 0))) + (local.set 0x2d1 (i64.load offset=0x2d1 align=1 (i32.const 0))) + (local.set 0x2d2 (i64.load offset=0x2d2 align=1 (i32.const 0))) + (local.set 0x2d3 (i64.load offset=0x2d3 align=1 (i32.const 0))) + (local.set 0x2d4 (i64.load offset=0x2d4 align=1 (i32.const 0))) + (local.set 0x2d5 (i64.load offset=0x2d5 align=1 (i32.const 0))) + (local.set 0x2d6 (i64.load offset=0x2d6 align=1 (i32.const 0))) + (local.set 0x2d7 (i64.load offset=0x2d7 align=1 (i32.const 0))) + (local.set 0x2d8 (i64.load offset=0x2d8 align=1 (i32.const 0))) + (local.set 0x2d9 (i64.load offset=0x2d9 align=1 (i32.const 0))) + (local.set 0x2da (i64.load offset=0x2da align=1 (i32.const 0))) + (local.set 0x2db (i64.load offset=0x2db align=1 (i32.const 0))) + (local.set 0x2dc (i64.load offset=0x2dc align=1 (i32.const 0))) + (local.set 0x2dd (i64.load offset=0x2dd align=1 (i32.const 0))) + (local.set 0x2de (i64.load offset=0x2de align=1 (i32.const 0))) + (local.set 0x2df (i64.load offset=0x2df align=1 (i32.const 0))) + (local.set 0x2e0 (i64.load offset=0x2e0 align=1 (i32.const 0))) + (local.set 0x2e1 (i64.load offset=0x2e1 align=1 (i32.const 0))) + (local.set 0x2e2 (i64.load offset=0x2e2 align=1 (i32.const 0))) + (local.set 0x2e3 (i64.load offset=0x2e3 align=1 (i32.const 0))) + (local.set 0x2e4 (i64.load offset=0x2e4 align=1 (i32.const 0))) + (local.set 0x2e5 (i64.load offset=0x2e5 align=1 (i32.const 0))) + (local.set 0x2e6 (i64.load offset=0x2e6 align=1 (i32.const 0))) + (local.set 0x2e7 (i64.load offset=0x2e7 align=1 (i32.const 0))) + (local.set 0x2e8 (i64.load offset=0x2e8 align=1 (i32.const 0))) + (local.set 0x2e9 (i64.load offset=0x2e9 align=1 (i32.const 0))) + (local.set 0x2ea (i64.load offset=0x2ea align=1 (i32.const 0))) + (local.set 0x2eb (i64.load offset=0x2eb align=1 (i32.const 0))) + (local.set 0x2ec (i64.load offset=0x2ec align=1 (i32.const 0))) + (local.set 0x2ed (i64.load offset=0x2ed align=1 (i32.const 0))) + (local.set 0x2ee (i64.load offset=0x2ee align=1 (i32.const 0))) + (local.set 0x2ef (i64.load offset=0x2ef align=1 (i32.const 0))) + (local.set 0x2f0 (i64.load offset=0x2f0 align=1 (i32.const 0))) + (local.set 0x2f1 (i64.load offset=0x2f1 align=1 (i32.const 0))) + (local.set 0x2f2 (i64.load offset=0x2f2 align=1 (i32.const 0))) + (local.set 0x2f3 (i64.load offset=0x2f3 align=1 (i32.const 0))) + (local.set 0x2f4 (i64.load offset=0x2f4 align=1 (i32.const 0))) + (local.set 0x2f5 (i64.load offset=0x2f5 align=1 (i32.const 0))) + (local.set 0x2f6 (i64.load offset=0x2f6 align=1 (i32.const 0))) + (local.set 0x2f7 (i64.load offset=0x2f7 align=1 (i32.const 0))) + (local.set 0x2f8 (i64.load offset=0x2f8 align=1 (i32.const 0))) + (local.set 0x2f9 (i64.load offset=0x2f9 align=1 (i32.const 0))) + (local.set 0x2fa (i64.load offset=0x2fa align=1 (i32.const 0))) + (local.set 0x2fb (i64.load offset=0x2fb align=1 (i32.const 0))) + (local.set 0x2fc (i64.load offset=0x2fc align=1 (i32.const 0))) + (local.set 0x2fd (i64.load offset=0x2fd align=1 (i32.const 0))) + (local.set 0x2fe (i64.load offset=0x2fe align=1 (i32.const 0))) + (local.set 0x2ff (i64.load offset=0x2ff align=1 (i32.const 0))) + (local.set 0x300 (i64.load offset=0x300 align=1 (i32.const 0))) + (local.set 0x301 (i64.load offset=0x301 align=1 (i32.const 0))) + (local.set 0x302 (i64.load offset=0x302 align=1 (i32.const 0))) + (local.set 0x303 (i64.load offset=0x303 align=1 (i32.const 0))) + (local.set 0x304 (i64.load offset=0x304 align=1 (i32.const 0))) + (local.set 0x305 (i64.load offset=0x305 align=1 (i32.const 0))) + (local.set 0x306 (i64.load offset=0x306 align=1 (i32.const 0))) + (local.set 0x307 (i64.load offset=0x307 align=1 (i32.const 0))) + (local.set 0x308 (i64.load offset=0x308 align=1 (i32.const 0))) + (local.set 0x309 (i64.load offset=0x309 align=1 (i32.const 0))) + (local.set 0x30a (i64.load offset=0x30a align=1 (i32.const 0))) + (local.set 0x30b (i64.load offset=0x30b align=1 (i32.const 0))) + (local.set 0x30c (i64.load offset=0x30c align=1 (i32.const 0))) + (local.set 0x30d (i64.load offset=0x30d align=1 (i32.const 0))) + (local.set 0x30e (i64.load offset=0x30e align=1 (i32.const 0))) + (local.set 0x30f (i64.load offset=0x30f align=1 (i32.const 0))) + (local.set 0x310 (i64.load offset=0x310 align=1 (i32.const 0))) + (local.set 0x311 (i64.load offset=0x311 align=1 (i32.const 0))) + (local.set 0x312 (i64.load offset=0x312 align=1 (i32.const 0))) + (local.set 0x313 (i64.load offset=0x313 align=1 (i32.const 0))) + (local.set 0x314 (i64.load offset=0x314 align=1 (i32.const 0))) + (local.set 0x315 (i64.load offset=0x315 align=1 (i32.const 0))) + (local.set 0x316 (i64.load offset=0x316 align=1 (i32.const 0))) + (local.set 0x317 (i64.load offset=0x317 align=1 (i32.const 0))) + (local.set 0x318 (i64.load offset=0x318 align=1 (i32.const 0))) + (local.set 0x319 (i64.load offset=0x319 align=1 (i32.const 0))) + (local.set 0x31a (i64.load offset=0x31a align=1 (i32.const 0))) + (local.set 0x31b (i64.load offset=0x31b align=1 (i32.const 0))) + (local.set 0x31c (i64.load offset=0x31c align=1 (i32.const 0))) + (local.set 0x31d (i64.load offset=0x31d align=1 (i32.const 0))) + (local.set 0x31e (i64.load offset=0x31e align=1 (i32.const 0))) + (local.set 0x31f (i64.load offset=0x31f align=1 (i32.const 0))) + (local.set 0x320 (i64.load offset=0x320 align=1 (i32.const 0))) + (local.set 0x321 (i64.load offset=0x321 align=1 (i32.const 0))) + (local.set 0x322 (i64.load offset=0x322 align=1 (i32.const 0))) + (local.set 0x323 (i64.load offset=0x323 align=1 (i32.const 0))) + (local.set 0x324 (i64.load offset=0x324 align=1 (i32.const 0))) + (local.set 0x325 (i64.load offset=0x325 align=1 (i32.const 0))) + (local.set 0x326 (i64.load offset=0x326 align=1 (i32.const 0))) + (local.set 0x327 (i64.load offset=0x327 align=1 (i32.const 0))) + (local.set 0x328 (i64.load offset=0x328 align=1 (i32.const 0))) + (local.set 0x329 (i64.load offset=0x329 align=1 (i32.const 0))) + (local.set 0x32a (i64.load offset=0x32a align=1 (i32.const 0))) + (local.set 0x32b (i64.load offset=0x32b align=1 (i32.const 0))) + (local.set 0x32c (i64.load offset=0x32c align=1 (i32.const 0))) + (local.set 0x32d (i64.load offset=0x32d align=1 (i32.const 0))) + (local.set 0x32e (i64.load offset=0x32e align=1 (i32.const 0))) + (local.set 0x32f (i64.load offset=0x32f align=1 (i32.const 0))) + (local.set 0x330 (i64.load offset=0x330 align=1 (i32.const 0))) + (local.set 0x331 (i64.load offset=0x331 align=1 (i32.const 0))) + (local.set 0x332 (i64.load offset=0x332 align=1 (i32.const 0))) + (local.set 0x333 (i64.load offset=0x333 align=1 (i32.const 0))) + (local.set 0x334 (i64.load offset=0x334 align=1 (i32.const 0))) + (local.set 0x335 (i64.load offset=0x335 align=1 (i32.const 0))) + (local.set 0x336 (i64.load offset=0x336 align=1 (i32.const 0))) + (local.set 0x337 (i64.load offset=0x337 align=1 (i32.const 0))) + (local.set 0x338 (i64.load offset=0x338 align=1 (i32.const 0))) + (local.set 0x339 (i64.load offset=0x339 align=1 (i32.const 0))) + (local.set 0x33a (i64.load offset=0x33a align=1 (i32.const 0))) + (local.set 0x33b (i64.load offset=0x33b align=1 (i32.const 0))) + (local.set 0x33c (i64.load offset=0x33c align=1 (i32.const 0))) + (local.set 0x33d (i64.load offset=0x33d align=1 (i32.const 0))) + (local.set 0x33e (i64.load offset=0x33e align=1 (i32.const 0))) + (local.set 0x33f (i64.load offset=0x33f align=1 (i32.const 0))) + (local.set 0x340 (i64.load offset=0x340 align=1 (i32.const 0))) + (local.set 0x341 (i64.load offset=0x341 align=1 (i32.const 0))) + (local.set 0x342 (i64.load offset=0x342 align=1 (i32.const 0))) + (local.set 0x343 (i64.load offset=0x343 align=1 (i32.const 0))) + (local.set 0x344 (i64.load offset=0x344 align=1 (i32.const 0))) + (local.set 0x345 (i64.load offset=0x345 align=1 (i32.const 0))) + (local.set 0x346 (i64.load offset=0x346 align=1 (i32.const 0))) + (local.set 0x347 (i64.load offset=0x347 align=1 (i32.const 0))) + (local.set 0x348 (i64.load offset=0x348 align=1 (i32.const 0))) + (local.set 0x349 (i64.load offset=0x349 align=1 (i32.const 0))) + (local.set 0x34a (i64.load offset=0x34a align=1 (i32.const 0))) + (local.set 0x34b (i64.load offset=0x34b align=1 (i32.const 0))) + (local.set 0x34c (i64.load offset=0x34c align=1 (i32.const 0))) + (local.set 0x34d (i64.load offset=0x34d align=1 (i32.const 0))) + (local.set 0x34e (i64.load offset=0x34e align=1 (i32.const 0))) + (local.set 0x34f (i64.load offset=0x34f align=1 (i32.const 0))) + (local.set 0x350 (i64.load offset=0x350 align=1 (i32.const 0))) + (local.set 0x351 (i64.load offset=0x351 align=1 (i32.const 0))) + (local.set 0x352 (i64.load offset=0x352 align=1 (i32.const 0))) + (local.set 0x353 (i64.load offset=0x353 align=1 (i32.const 0))) + (local.set 0x354 (i64.load offset=0x354 align=1 (i32.const 0))) + (local.set 0x355 (i64.load offset=0x355 align=1 (i32.const 0))) + (local.set 0x356 (i64.load offset=0x356 align=1 (i32.const 0))) + (local.set 0x357 (i64.load offset=0x357 align=1 (i32.const 0))) + (local.set 0x358 (i64.load offset=0x358 align=1 (i32.const 0))) + (local.set 0x359 (i64.load offset=0x359 align=1 (i32.const 0))) + (local.set 0x35a (i64.load offset=0x35a align=1 (i32.const 0))) + (local.set 0x35b (i64.load offset=0x35b align=1 (i32.const 0))) + (local.set 0x35c (i64.load offset=0x35c align=1 (i32.const 0))) + (local.set 0x35d (i64.load offset=0x35d align=1 (i32.const 0))) + (local.set 0x35e (i64.load offset=0x35e align=1 (i32.const 0))) + (local.set 0x35f (i64.load offset=0x35f align=1 (i32.const 0))) + (local.set 0x360 (i64.load offset=0x360 align=1 (i32.const 0))) + (local.set 0x361 (i64.load offset=0x361 align=1 (i32.const 0))) + (local.set 0x362 (i64.load offset=0x362 align=1 (i32.const 0))) + (local.set 0x363 (i64.load offset=0x363 align=1 (i32.const 0))) + (local.set 0x364 (i64.load offset=0x364 align=1 (i32.const 0))) + (local.set 0x365 (i64.load offset=0x365 align=1 (i32.const 0))) + (local.set 0x366 (i64.load offset=0x366 align=1 (i32.const 0))) + (local.set 0x367 (i64.load offset=0x367 align=1 (i32.const 0))) + (local.set 0x368 (i64.load offset=0x368 align=1 (i32.const 0))) + (local.set 0x369 (i64.load offset=0x369 align=1 (i32.const 0))) + (local.set 0x36a (i64.load offset=0x36a align=1 (i32.const 0))) + (local.set 0x36b (i64.load offset=0x36b align=1 (i32.const 0))) + (local.set 0x36c (i64.load offset=0x36c align=1 (i32.const 0))) + (local.set 0x36d (i64.load offset=0x36d align=1 (i32.const 0))) + (local.set 0x36e (i64.load offset=0x36e align=1 (i32.const 0))) + (local.set 0x36f (i64.load offset=0x36f align=1 (i32.const 0))) + (local.set 0x370 (i64.load offset=0x370 align=1 (i32.const 0))) + (local.set 0x371 (i64.load offset=0x371 align=1 (i32.const 0))) + (local.set 0x372 (i64.load offset=0x372 align=1 (i32.const 0))) + (local.set 0x373 (i64.load offset=0x373 align=1 (i32.const 0))) + (local.set 0x374 (i64.load offset=0x374 align=1 (i32.const 0))) + (local.set 0x375 (i64.load offset=0x375 align=1 (i32.const 0))) + (local.set 0x376 (i64.load offset=0x376 align=1 (i32.const 0))) + (local.set 0x377 (i64.load offset=0x377 align=1 (i32.const 0))) + (local.set 0x378 (i64.load offset=0x378 align=1 (i32.const 0))) + (local.set 0x379 (i64.load offset=0x379 align=1 (i32.const 0))) + (local.set 0x37a (i64.load offset=0x37a align=1 (i32.const 0))) + (local.set 0x37b (i64.load offset=0x37b align=1 (i32.const 0))) + (local.set 0x37c (i64.load offset=0x37c align=1 (i32.const 0))) + (local.set 0x37d (i64.load offset=0x37d align=1 (i32.const 0))) + (local.set 0x37e (i64.load offset=0x37e align=1 (i32.const 0))) + (local.set 0x37f (i64.load offset=0x37f align=1 (i32.const 0))) + (local.set 0x380 (i64.load offset=0x380 align=1 (i32.const 0))) + (local.set 0x381 (i64.load offset=0x381 align=1 (i32.const 0))) + (local.set 0x382 (i64.load offset=0x382 align=1 (i32.const 0))) + (local.set 0x383 (i64.load offset=0x383 align=1 (i32.const 0))) + (local.set 0x384 (i64.load offset=0x384 align=1 (i32.const 0))) + (local.set 0x385 (i64.load offset=0x385 align=1 (i32.const 0))) + (local.set 0x386 (i64.load offset=0x386 align=1 (i32.const 0))) + (local.set 0x387 (i64.load offset=0x387 align=1 (i32.const 0))) + (local.set 0x388 (i64.load offset=0x388 align=1 (i32.const 0))) + (local.set 0x389 (i64.load offset=0x389 align=1 (i32.const 0))) + (local.set 0x38a (i64.load offset=0x38a align=1 (i32.const 0))) + (local.set 0x38b (i64.load offset=0x38b align=1 (i32.const 0))) + (local.set 0x38c (i64.load offset=0x38c align=1 (i32.const 0))) + (local.set 0x38d (i64.load offset=0x38d align=1 (i32.const 0))) + (local.set 0x38e (i64.load offset=0x38e align=1 (i32.const 0))) + (local.set 0x38f (i64.load offset=0x38f align=1 (i32.const 0))) + (local.set 0x390 (i64.load offset=0x390 align=1 (i32.const 0))) + (local.set 0x391 (i64.load offset=0x391 align=1 (i32.const 0))) + (local.set 0x392 (i64.load offset=0x392 align=1 (i32.const 0))) + (local.set 0x393 (i64.load offset=0x393 align=1 (i32.const 0))) + (local.set 0x394 (i64.load offset=0x394 align=1 (i32.const 0))) + (local.set 0x395 (i64.load offset=0x395 align=1 (i32.const 0))) + (local.set 0x396 (i64.load offset=0x396 align=1 (i32.const 0))) + (local.set 0x397 (i64.load offset=0x397 align=1 (i32.const 0))) + (local.set 0x398 (i64.load offset=0x398 align=1 (i32.const 0))) + (local.set 0x399 (i64.load offset=0x399 align=1 (i32.const 0))) + (local.set 0x39a (i64.load offset=0x39a align=1 (i32.const 0))) + (local.set 0x39b (i64.load offset=0x39b align=1 (i32.const 0))) + (local.set 0x39c (i64.load offset=0x39c align=1 (i32.const 0))) + (local.set 0x39d (i64.load offset=0x39d align=1 (i32.const 0))) + (local.set 0x39e (i64.load offset=0x39e align=1 (i32.const 0))) + (local.set 0x39f (i64.load offset=0x39f align=1 (i32.const 0))) + (local.set 0x3a0 (i64.load offset=0x3a0 align=1 (i32.const 0))) + (local.set 0x3a1 (i64.load offset=0x3a1 align=1 (i32.const 0))) + (local.set 0x3a2 (i64.load offset=0x3a2 align=1 (i32.const 0))) + (local.set 0x3a3 (i64.load offset=0x3a3 align=1 (i32.const 0))) + (local.set 0x3a4 (i64.load offset=0x3a4 align=1 (i32.const 0))) + (local.set 0x3a5 (i64.load offset=0x3a5 align=1 (i32.const 0))) + (local.set 0x3a6 (i64.load offset=0x3a6 align=1 (i32.const 0))) + (local.set 0x3a7 (i64.load offset=0x3a7 align=1 (i32.const 0))) + (local.set 0x3a8 (i64.load offset=0x3a8 align=1 (i32.const 0))) + (local.set 0x3a9 (i64.load offset=0x3a9 align=1 (i32.const 0))) + (local.set 0x3aa (i64.load offset=0x3aa align=1 (i32.const 0))) + (local.set 0x3ab (i64.load offset=0x3ab align=1 (i32.const 0))) + (local.set 0x3ac (i64.load offset=0x3ac align=1 (i32.const 0))) + (local.set 0x3ad (i64.load offset=0x3ad align=1 (i32.const 0))) + (local.set 0x3ae (i64.load offset=0x3ae align=1 (i32.const 0))) + (local.set 0x3af (i64.load offset=0x3af align=1 (i32.const 0))) + (local.set 0x3b0 (i64.load offset=0x3b0 align=1 (i32.const 0))) + (local.set 0x3b1 (i64.load offset=0x3b1 align=1 (i32.const 0))) + (local.set 0x3b2 (i64.load offset=0x3b2 align=1 (i32.const 0))) + (local.set 0x3b3 (i64.load offset=0x3b3 align=1 (i32.const 0))) + (local.set 0x3b4 (i64.load offset=0x3b4 align=1 (i32.const 0))) + (local.set 0x3b5 (i64.load offset=0x3b5 align=1 (i32.const 0))) + (local.set 0x3b6 (i64.load offset=0x3b6 align=1 (i32.const 0))) + (local.set 0x3b7 (i64.load offset=0x3b7 align=1 (i32.const 0))) + (local.set 0x3b8 (i64.load offset=0x3b8 align=1 (i32.const 0))) + (local.set 0x3b9 (i64.load offset=0x3b9 align=1 (i32.const 0))) + (local.set 0x3ba (i64.load offset=0x3ba align=1 (i32.const 0))) + (local.set 0x3bb (i64.load offset=0x3bb align=1 (i32.const 0))) + (local.set 0x3bc (i64.load offset=0x3bc align=1 (i32.const 0))) + (local.set 0x3bd (i64.load offset=0x3bd align=1 (i32.const 0))) + (local.set 0x3be (i64.load offset=0x3be align=1 (i32.const 0))) + (local.set 0x3bf (i64.load offset=0x3bf align=1 (i32.const 0))) + (local.set 0x3c0 (i64.load offset=0x3c0 align=1 (i32.const 0))) + (local.set 0x3c1 (i64.load offset=0x3c1 align=1 (i32.const 0))) + (local.set 0x3c2 (i64.load offset=0x3c2 align=1 (i32.const 0))) + (local.set 0x3c3 (i64.load offset=0x3c3 align=1 (i32.const 0))) + (local.set 0x3c4 (i64.load offset=0x3c4 align=1 (i32.const 0))) + (local.set 0x3c5 (i64.load offset=0x3c5 align=1 (i32.const 0))) + (local.set 0x3c6 (i64.load offset=0x3c6 align=1 (i32.const 0))) + (local.set 0x3c7 (i64.load offset=0x3c7 align=1 (i32.const 0))) + (local.set 0x3c8 (i64.load offset=0x3c8 align=1 (i32.const 0))) + (local.set 0x3c9 (i64.load offset=0x3c9 align=1 (i32.const 0))) + (local.set 0x3ca (i64.load offset=0x3ca align=1 (i32.const 0))) + (local.set 0x3cb (i64.load offset=0x3cb align=1 (i32.const 0))) + (local.set 0x3cc (i64.load offset=0x3cc align=1 (i32.const 0))) + (local.set 0x3cd (i64.load offset=0x3cd align=1 (i32.const 0))) + (local.set 0x3ce (i64.load offset=0x3ce align=1 (i32.const 0))) + (local.set 0x3cf (i64.load offset=0x3cf align=1 (i32.const 0))) + (local.set 0x3d0 (i64.load offset=0x3d0 align=1 (i32.const 0))) + (local.set 0x3d1 (i64.load offset=0x3d1 align=1 (i32.const 0))) + (local.set 0x3d2 (i64.load offset=0x3d2 align=1 (i32.const 0))) + (local.set 0x3d3 (i64.load offset=0x3d3 align=1 (i32.const 0))) + (local.set 0x3d4 (i64.load offset=0x3d4 align=1 (i32.const 0))) + (local.set 0x3d5 (i64.load offset=0x3d5 align=1 (i32.const 0))) + (local.set 0x3d6 (i64.load offset=0x3d6 align=1 (i32.const 0))) + (local.set 0x3d7 (i64.load offset=0x3d7 align=1 (i32.const 0))) + (local.set 0x3d8 (i64.load offset=0x3d8 align=1 (i32.const 0))) + (local.set 0x3d9 (i64.load offset=0x3d9 align=1 (i32.const 0))) + (local.set 0x3da (i64.load offset=0x3da align=1 (i32.const 0))) + (local.set 0x3db (i64.load offset=0x3db align=1 (i32.const 0))) + (local.set 0x3dc (i64.load offset=0x3dc align=1 (i32.const 0))) + (local.set 0x3dd (i64.load offset=0x3dd align=1 (i32.const 0))) + (local.set 0x3de (i64.load offset=0x3de align=1 (i32.const 0))) + (local.set 0x3df (i64.load offset=0x3df align=1 (i32.const 0))) + (local.set 0x3e0 (i64.load offset=0x3e0 align=1 (i32.const 0))) + (local.set 0x3e1 (i64.load offset=0x3e1 align=1 (i32.const 0))) + (local.set 0x3e2 (i64.load offset=0x3e2 align=1 (i32.const 0))) + (local.set 0x3e3 (i64.load offset=0x3e3 align=1 (i32.const 0))) + (local.set 0x3e4 (i64.load offset=0x3e4 align=1 (i32.const 0))) + (local.set 0x3e5 (i64.load offset=0x3e5 align=1 (i32.const 0))) + (local.set 0x3e6 (i64.load offset=0x3e6 align=1 (i32.const 0))) + (local.set 0x3e7 (i64.load offset=0x3e7 align=1 (i32.const 0))) + (local.set 0x3e8 (i64.load offset=0x3e8 align=1 (i32.const 0))) + (local.set 0x3e9 (i64.load offset=0x3e9 align=1 (i32.const 0))) + (local.set 0x3ea (i64.load offset=0x3ea align=1 (i32.const 0))) + (local.set 0x3eb (i64.load offset=0x3eb align=1 (i32.const 0))) + (local.set 0x3ec (i64.load offset=0x3ec align=1 (i32.const 0))) + (local.set 0x3ed (i64.load offset=0x3ed align=1 (i32.const 0))) + (local.set 0x3ee (i64.load offset=0x3ee align=1 (i32.const 0))) + (local.set 0x3ef (i64.load offset=0x3ef align=1 (i32.const 0))) + (local.set 0x3f0 (i64.load offset=0x3f0 align=1 (i32.const 0))) + (local.set 0x3f1 (i64.load offset=0x3f1 align=1 (i32.const 0))) + (local.set 0x3f2 (i64.load offset=0x3f2 align=1 (i32.const 0))) + (local.set 0x3f3 (i64.load offset=0x3f3 align=1 (i32.const 0))) + (local.set 0x3f4 (i64.load offset=0x3f4 align=1 (i32.const 0))) + (local.set 0x3f5 (i64.load offset=0x3f5 align=1 (i32.const 0))) + (local.set 0x3f6 (i64.load offset=0x3f6 align=1 (i32.const 0))) + (local.set 0x3f7 (i64.load offset=0x3f7 align=1 (i32.const 0))) + (local.set 0x3f8 (i64.load offset=0x3f8 align=1 (i32.const 0))) + (local.set 0x3f9 (i64.load offset=0x3f9 align=1 (i32.const 0))) + (local.set 0x3fa (i64.load offset=0x3fa align=1 (i32.const 0))) + (local.set 0x3fb (i64.load offset=0x3fb align=1 (i32.const 0))) + (local.set 0x3fc (i64.load offset=0x3fc align=1 (i32.const 0))) + (local.set 0x3fd (i64.load offset=0x3fd align=1 (i32.const 0))) + (local.set 0x3fe (i64.load offset=0x3fe align=1 (i32.const 0))) + (local.set 0x3ff (i64.load offset=0x3ff align=1 (i32.const 0))) + (local.set 0x400 (i64.load offset=0x400 align=1 (i32.const 0))) + (local.set 0x401 (i64.load offset=0x401 align=1 (i32.const 0))) + (local.set 0x402 (i64.load offset=0x402 align=1 (i32.const 0))) + (local.set 0x403 (i64.load offset=0x403 align=1 (i32.const 0))) + (local.set 0x404 (i64.load offset=0x404 align=1 (i32.const 0))) + (local.set 0x405 (i64.load offset=0x405 align=1 (i32.const 0))) + (local.set 0x406 (i64.load offset=0x406 align=1 (i32.const 0))) + (local.set 0x407 (i64.load offset=0x407 align=1 (i32.const 0))) + (local.set 0x408 (i64.load offset=0x408 align=1 (i32.const 0))) + (local.set 0x409 (i64.load offset=0x409 align=1 (i32.const 0))) + (local.set 0x40a (i64.load offset=0x40a align=1 (i32.const 0))) + (local.set 0x40b (i64.load offset=0x40b align=1 (i32.const 0))) + (local.set 0x40c (i64.load offset=0x40c align=1 (i32.const 0))) + (local.set 0x40d (i64.load offset=0x40d align=1 (i32.const 0))) + (local.set 0x40e (i64.load offset=0x40e align=1 (i32.const 0))) + (local.set 0x40f (i64.load offset=0x40f align=1 (i32.const 0))) + (local.set 0x410 (i64.load offset=0x410 align=1 (i32.const 0))) + (local.set 0x411 (i64.load offset=0x411 align=1 (i32.const 0))) + (local.set 0x412 (i64.load offset=0x412 align=1 (i32.const 0))) + (local.set 0x413 (i64.load offset=0x413 align=1 (i32.const 0))) + (local.set 0x414 (i64.load offset=0x414 align=1 (i32.const 0))) + (local.set 0x415 (i64.load offset=0x415 align=1 (i32.const 0))) + (local.set 0x416 (i64.load offset=0x416 align=1 (i32.const 0))) + (local.set 0x417 (i64.load offset=0x417 align=1 (i32.const 0))) + (local.set 0x418 (i64.load offset=0x418 align=1 (i32.const 0))) + (local.set 0x419 (i64.load offset=0x419 align=1 (i32.const 0))) + (local.set 0x41a (i64.load offset=0x41a align=1 (i32.const 0))) + (local.set 0x41b (i64.load offset=0x41b align=1 (i32.const 0))) + (local.set 0x41c (i64.load offset=0x41c align=1 (i32.const 0))) + (local.set 0x41d (i64.load offset=0x41d align=1 (i32.const 0))) + (local.set 0x41e (i64.load offset=0x41e align=1 (i32.const 0))) + (local.set 0x41f (i64.load offset=0x41f align=1 (i32.const 0))) + + ;; store the locals back to memory + (i64.store offset=0x000 align=1 (i32.const 0) (local.get 0x000)) + (i64.store offset=0x001 align=1 (i32.const 0) (local.get 0x001)) + (i64.store offset=0x002 align=1 (i32.const 0) (local.get 0x002)) + (i64.store offset=0x003 align=1 (i32.const 0) (local.get 0x003)) + (i64.store offset=0x004 align=1 (i32.const 0) (local.get 0x004)) + (i64.store offset=0x005 align=1 (i32.const 0) (local.get 0x005)) + (i64.store offset=0x006 align=1 (i32.const 0) (local.get 0x006)) + (i64.store offset=0x007 align=1 (i32.const 0) (local.get 0x007)) + (i64.store offset=0x008 align=1 (i32.const 0) (local.get 0x008)) + (i64.store offset=0x009 align=1 (i32.const 0) (local.get 0x009)) + (i64.store offset=0x00a align=1 (i32.const 0) (local.get 0x00a)) + (i64.store offset=0x00b align=1 (i32.const 0) (local.get 0x00b)) + (i64.store offset=0x00c align=1 (i32.const 0) (local.get 0x00c)) + (i64.store offset=0x00d align=1 (i32.const 0) (local.get 0x00d)) + (i64.store offset=0x00e align=1 (i32.const 0) (local.get 0x00e)) + (i64.store offset=0x00f align=1 (i32.const 0) (local.get 0x00f)) + (i64.store offset=0x010 align=1 (i32.const 0) (local.get 0x010)) + (i64.store offset=0x011 align=1 (i32.const 0) (local.get 0x011)) + (i64.store offset=0x012 align=1 (i32.const 0) (local.get 0x012)) + (i64.store offset=0x013 align=1 (i32.const 0) (local.get 0x013)) + (i64.store offset=0x014 align=1 (i32.const 0) (local.get 0x014)) + (i64.store offset=0x015 align=1 (i32.const 0) (local.get 0x015)) + (i64.store offset=0x016 align=1 (i32.const 0) (local.get 0x016)) + (i64.store offset=0x017 align=1 (i32.const 0) (local.get 0x017)) + (i64.store offset=0x018 align=1 (i32.const 0) (local.get 0x018)) + (i64.store offset=0x019 align=1 (i32.const 0) (local.get 0x019)) + (i64.store offset=0x01a align=1 (i32.const 0) (local.get 0x01a)) + (i64.store offset=0x01b align=1 (i32.const 0) (local.get 0x01b)) + (i64.store offset=0x01c align=1 (i32.const 0) (local.get 0x01c)) + (i64.store offset=0x01d align=1 (i32.const 0) (local.get 0x01d)) + (i64.store offset=0x01e align=1 (i32.const 0) (local.get 0x01e)) + (i64.store offset=0x01f align=1 (i32.const 0) (local.get 0x01f)) + (i64.store offset=0x020 align=1 (i32.const 0) (local.get 0x020)) + (i64.store offset=0x021 align=1 (i32.const 0) (local.get 0x021)) + (i64.store offset=0x022 align=1 (i32.const 0) (local.get 0x022)) + (i64.store offset=0x023 align=1 (i32.const 0) (local.get 0x023)) + (i64.store offset=0x024 align=1 (i32.const 0) (local.get 0x024)) + (i64.store offset=0x025 align=1 (i32.const 0) (local.get 0x025)) + (i64.store offset=0x026 align=1 (i32.const 0) (local.get 0x026)) + (i64.store offset=0x027 align=1 (i32.const 0) (local.get 0x027)) + (i64.store offset=0x028 align=1 (i32.const 0) (local.get 0x028)) + (i64.store offset=0x029 align=1 (i32.const 0) (local.get 0x029)) + (i64.store offset=0x02a align=1 (i32.const 0) (local.get 0x02a)) + (i64.store offset=0x02b align=1 (i32.const 0) (local.get 0x02b)) + (i64.store offset=0x02c align=1 (i32.const 0) (local.get 0x02c)) + (i64.store offset=0x02d align=1 (i32.const 0) (local.get 0x02d)) + (i64.store offset=0x02e align=1 (i32.const 0) (local.get 0x02e)) + (i64.store offset=0x02f align=1 (i32.const 0) (local.get 0x02f)) + (i64.store offset=0x030 align=1 (i32.const 0) (local.get 0x030)) + (i64.store offset=0x031 align=1 (i32.const 0) (local.get 0x031)) + (i64.store offset=0x032 align=1 (i32.const 0) (local.get 0x032)) + (i64.store offset=0x033 align=1 (i32.const 0) (local.get 0x033)) + (i64.store offset=0x034 align=1 (i32.const 0) (local.get 0x034)) + (i64.store offset=0x035 align=1 (i32.const 0) (local.get 0x035)) + (i64.store offset=0x036 align=1 (i32.const 0) (local.get 0x036)) + (i64.store offset=0x037 align=1 (i32.const 0) (local.get 0x037)) + (i64.store offset=0x038 align=1 (i32.const 0) (local.get 0x038)) + (i64.store offset=0x039 align=1 (i32.const 0) (local.get 0x039)) + (i64.store offset=0x03a align=1 (i32.const 0) (local.get 0x03a)) + (i64.store offset=0x03b align=1 (i32.const 0) (local.get 0x03b)) + (i64.store offset=0x03c align=1 (i32.const 0) (local.get 0x03c)) + (i64.store offset=0x03d align=1 (i32.const 0) (local.get 0x03d)) + (i64.store offset=0x03e align=1 (i32.const 0) (local.get 0x03e)) + (i64.store offset=0x03f align=1 (i32.const 0) (local.get 0x03f)) + (i64.store offset=0x040 align=1 (i32.const 0) (local.get 0x040)) + (i64.store offset=0x041 align=1 (i32.const 0) (local.get 0x041)) + (i64.store offset=0x042 align=1 (i32.const 0) (local.get 0x042)) + (i64.store offset=0x043 align=1 (i32.const 0) (local.get 0x043)) + (i64.store offset=0x044 align=1 (i32.const 0) (local.get 0x044)) + (i64.store offset=0x045 align=1 (i32.const 0) (local.get 0x045)) + (i64.store offset=0x046 align=1 (i32.const 0) (local.get 0x046)) + (i64.store offset=0x047 align=1 (i32.const 0) (local.get 0x047)) + (i64.store offset=0x048 align=1 (i32.const 0) (local.get 0x048)) + (i64.store offset=0x049 align=1 (i32.const 0) (local.get 0x049)) + (i64.store offset=0x04a align=1 (i32.const 0) (local.get 0x04a)) + (i64.store offset=0x04b align=1 (i32.const 0) (local.get 0x04b)) + (i64.store offset=0x04c align=1 (i32.const 0) (local.get 0x04c)) + (i64.store offset=0x04d align=1 (i32.const 0) (local.get 0x04d)) + (i64.store offset=0x04e align=1 (i32.const 0) (local.get 0x04e)) + (i64.store offset=0x04f align=1 (i32.const 0) (local.get 0x04f)) + (i64.store offset=0x050 align=1 (i32.const 0) (local.get 0x050)) + (i64.store offset=0x051 align=1 (i32.const 0) (local.get 0x051)) + (i64.store offset=0x052 align=1 (i32.const 0) (local.get 0x052)) + (i64.store offset=0x053 align=1 (i32.const 0) (local.get 0x053)) + (i64.store offset=0x054 align=1 (i32.const 0) (local.get 0x054)) + (i64.store offset=0x055 align=1 (i32.const 0) (local.get 0x055)) + (i64.store offset=0x056 align=1 (i32.const 0) (local.get 0x056)) + (i64.store offset=0x057 align=1 (i32.const 0) (local.get 0x057)) + (i64.store offset=0x058 align=1 (i32.const 0) (local.get 0x058)) + (i64.store offset=0x059 align=1 (i32.const 0) (local.get 0x059)) + (i64.store offset=0x05a align=1 (i32.const 0) (local.get 0x05a)) + (i64.store offset=0x05b align=1 (i32.const 0) (local.get 0x05b)) + (i64.store offset=0x05c align=1 (i32.const 0) (local.get 0x05c)) + (i64.store offset=0x05d align=1 (i32.const 0) (local.get 0x05d)) + (i64.store offset=0x05e align=1 (i32.const 0) (local.get 0x05e)) + (i64.store offset=0x05f align=1 (i32.const 0) (local.get 0x05f)) + (i64.store offset=0x060 align=1 (i32.const 0) (local.get 0x060)) + (i64.store offset=0x061 align=1 (i32.const 0) (local.get 0x061)) + (i64.store offset=0x062 align=1 (i32.const 0) (local.get 0x062)) + (i64.store offset=0x063 align=1 (i32.const 0) (local.get 0x063)) + (i64.store offset=0x064 align=1 (i32.const 0) (local.get 0x064)) + (i64.store offset=0x065 align=1 (i32.const 0) (local.get 0x065)) + (i64.store offset=0x066 align=1 (i32.const 0) (local.get 0x066)) + (i64.store offset=0x067 align=1 (i32.const 0) (local.get 0x067)) + (i64.store offset=0x068 align=1 (i32.const 0) (local.get 0x068)) + (i64.store offset=0x069 align=1 (i32.const 0) (local.get 0x069)) + (i64.store offset=0x06a align=1 (i32.const 0) (local.get 0x06a)) + (i64.store offset=0x06b align=1 (i32.const 0) (local.get 0x06b)) + (i64.store offset=0x06c align=1 (i32.const 0) (local.get 0x06c)) + (i64.store offset=0x06d align=1 (i32.const 0) (local.get 0x06d)) + (i64.store offset=0x06e align=1 (i32.const 0) (local.get 0x06e)) + (i64.store offset=0x06f align=1 (i32.const 0) (local.get 0x06f)) + (i64.store offset=0x070 align=1 (i32.const 0) (local.get 0x070)) + (i64.store offset=0x071 align=1 (i32.const 0) (local.get 0x071)) + (i64.store offset=0x072 align=1 (i32.const 0) (local.get 0x072)) + (i64.store offset=0x073 align=1 (i32.const 0) (local.get 0x073)) + (i64.store offset=0x074 align=1 (i32.const 0) (local.get 0x074)) + (i64.store offset=0x075 align=1 (i32.const 0) (local.get 0x075)) + (i64.store offset=0x076 align=1 (i32.const 0) (local.get 0x076)) + (i64.store offset=0x077 align=1 (i32.const 0) (local.get 0x077)) + (i64.store offset=0x078 align=1 (i32.const 0) (local.get 0x078)) + (i64.store offset=0x079 align=1 (i32.const 0) (local.get 0x079)) + (i64.store offset=0x07a align=1 (i32.const 0) (local.get 0x07a)) + (i64.store offset=0x07b align=1 (i32.const 0) (local.get 0x07b)) + (i64.store offset=0x07c align=1 (i32.const 0) (local.get 0x07c)) + (i64.store offset=0x07d align=1 (i32.const 0) (local.get 0x07d)) + (i64.store offset=0x07e align=1 (i32.const 0) (local.get 0x07e)) + (i64.store offset=0x07f align=1 (i32.const 0) (local.get 0x07f)) + (i64.store offset=0x080 align=1 (i32.const 0) (local.get 0x080)) + (i64.store offset=0x081 align=1 (i32.const 0) (local.get 0x081)) + (i64.store offset=0x082 align=1 (i32.const 0) (local.get 0x082)) + (i64.store offset=0x083 align=1 (i32.const 0) (local.get 0x083)) + (i64.store offset=0x084 align=1 (i32.const 0) (local.get 0x084)) + (i64.store offset=0x085 align=1 (i32.const 0) (local.get 0x085)) + (i64.store offset=0x086 align=1 (i32.const 0) (local.get 0x086)) + (i64.store offset=0x087 align=1 (i32.const 0) (local.get 0x087)) + (i64.store offset=0x088 align=1 (i32.const 0) (local.get 0x088)) + (i64.store offset=0x089 align=1 (i32.const 0) (local.get 0x089)) + (i64.store offset=0x08a align=1 (i32.const 0) (local.get 0x08a)) + (i64.store offset=0x08b align=1 (i32.const 0) (local.get 0x08b)) + (i64.store offset=0x08c align=1 (i32.const 0) (local.get 0x08c)) + (i64.store offset=0x08d align=1 (i32.const 0) (local.get 0x08d)) + (i64.store offset=0x08e align=1 (i32.const 0) (local.get 0x08e)) + (i64.store offset=0x08f align=1 (i32.const 0) (local.get 0x08f)) + (i64.store offset=0x090 align=1 (i32.const 0) (local.get 0x090)) + (i64.store offset=0x091 align=1 (i32.const 0) (local.get 0x091)) + (i64.store offset=0x092 align=1 (i32.const 0) (local.get 0x092)) + (i64.store offset=0x093 align=1 (i32.const 0) (local.get 0x093)) + (i64.store offset=0x094 align=1 (i32.const 0) (local.get 0x094)) + (i64.store offset=0x095 align=1 (i32.const 0) (local.get 0x095)) + (i64.store offset=0x096 align=1 (i32.const 0) (local.get 0x096)) + (i64.store offset=0x097 align=1 (i32.const 0) (local.get 0x097)) + (i64.store offset=0x098 align=1 (i32.const 0) (local.get 0x098)) + (i64.store offset=0x099 align=1 (i32.const 0) (local.get 0x099)) + (i64.store offset=0x09a align=1 (i32.const 0) (local.get 0x09a)) + (i64.store offset=0x09b align=1 (i32.const 0) (local.get 0x09b)) + (i64.store offset=0x09c align=1 (i32.const 0) (local.get 0x09c)) + (i64.store offset=0x09d align=1 (i32.const 0) (local.get 0x09d)) + (i64.store offset=0x09e align=1 (i32.const 0) (local.get 0x09e)) + (i64.store offset=0x09f align=1 (i32.const 0) (local.get 0x09f)) + (i64.store offset=0x0a0 align=1 (i32.const 0) (local.get 0x0a0)) + (i64.store offset=0x0a1 align=1 (i32.const 0) (local.get 0x0a1)) + (i64.store offset=0x0a2 align=1 (i32.const 0) (local.get 0x0a2)) + (i64.store offset=0x0a3 align=1 (i32.const 0) (local.get 0x0a3)) + (i64.store offset=0x0a4 align=1 (i32.const 0) (local.get 0x0a4)) + (i64.store offset=0x0a5 align=1 (i32.const 0) (local.get 0x0a5)) + (i64.store offset=0x0a6 align=1 (i32.const 0) (local.get 0x0a6)) + (i64.store offset=0x0a7 align=1 (i32.const 0) (local.get 0x0a7)) + (i64.store offset=0x0a8 align=1 (i32.const 0) (local.get 0x0a8)) + (i64.store offset=0x0a9 align=1 (i32.const 0) (local.get 0x0a9)) + (i64.store offset=0x0aa align=1 (i32.const 0) (local.get 0x0aa)) + (i64.store offset=0x0ab align=1 (i32.const 0) (local.get 0x0ab)) + (i64.store offset=0x0ac align=1 (i32.const 0) (local.get 0x0ac)) + (i64.store offset=0x0ad align=1 (i32.const 0) (local.get 0x0ad)) + (i64.store offset=0x0ae align=1 (i32.const 0) (local.get 0x0ae)) + (i64.store offset=0x0af align=1 (i32.const 0) (local.get 0x0af)) + (i64.store offset=0x0b0 align=1 (i32.const 0) (local.get 0x0b0)) + (i64.store offset=0x0b1 align=1 (i32.const 0) (local.get 0x0b1)) + (i64.store offset=0x0b2 align=1 (i32.const 0) (local.get 0x0b2)) + (i64.store offset=0x0b3 align=1 (i32.const 0) (local.get 0x0b3)) + (i64.store offset=0x0b4 align=1 (i32.const 0) (local.get 0x0b4)) + (i64.store offset=0x0b5 align=1 (i32.const 0) (local.get 0x0b5)) + (i64.store offset=0x0b6 align=1 (i32.const 0) (local.get 0x0b6)) + (i64.store offset=0x0b7 align=1 (i32.const 0) (local.get 0x0b7)) + (i64.store offset=0x0b8 align=1 (i32.const 0) (local.get 0x0b8)) + (i64.store offset=0x0b9 align=1 (i32.const 0) (local.get 0x0b9)) + (i64.store offset=0x0ba align=1 (i32.const 0) (local.get 0x0ba)) + (i64.store offset=0x0bb align=1 (i32.const 0) (local.get 0x0bb)) + (i64.store offset=0x0bc align=1 (i32.const 0) (local.get 0x0bc)) + (i64.store offset=0x0bd align=1 (i32.const 0) (local.get 0x0bd)) + (i64.store offset=0x0be align=1 (i32.const 0) (local.get 0x0be)) + (i64.store offset=0x0bf align=1 (i32.const 0) (local.get 0x0bf)) + (i64.store offset=0x0c0 align=1 (i32.const 0) (local.get 0x0c0)) + (i64.store offset=0x0c1 align=1 (i32.const 0) (local.get 0x0c1)) + (i64.store offset=0x0c2 align=1 (i32.const 0) (local.get 0x0c2)) + (i64.store offset=0x0c3 align=1 (i32.const 0) (local.get 0x0c3)) + (i64.store offset=0x0c4 align=1 (i32.const 0) (local.get 0x0c4)) + (i64.store offset=0x0c5 align=1 (i32.const 0) (local.get 0x0c5)) + (i64.store offset=0x0c6 align=1 (i32.const 0) (local.get 0x0c6)) + (i64.store offset=0x0c7 align=1 (i32.const 0) (local.get 0x0c7)) + (i64.store offset=0x0c8 align=1 (i32.const 0) (local.get 0x0c8)) + (i64.store offset=0x0c9 align=1 (i32.const 0) (local.get 0x0c9)) + (i64.store offset=0x0ca align=1 (i32.const 0) (local.get 0x0ca)) + (i64.store offset=0x0cb align=1 (i32.const 0) (local.get 0x0cb)) + (i64.store offset=0x0cc align=1 (i32.const 0) (local.get 0x0cc)) + (i64.store offset=0x0cd align=1 (i32.const 0) (local.get 0x0cd)) + (i64.store offset=0x0ce align=1 (i32.const 0) (local.get 0x0ce)) + (i64.store offset=0x0cf align=1 (i32.const 0) (local.get 0x0cf)) + (i64.store offset=0x0d0 align=1 (i32.const 0) (local.get 0x0d0)) + (i64.store offset=0x0d1 align=1 (i32.const 0) (local.get 0x0d1)) + (i64.store offset=0x0d2 align=1 (i32.const 0) (local.get 0x0d2)) + (i64.store offset=0x0d3 align=1 (i32.const 0) (local.get 0x0d3)) + (i64.store offset=0x0d4 align=1 (i32.const 0) (local.get 0x0d4)) + (i64.store offset=0x0d5 align=1 (i32.const 0) (local.get 0x0d5)) + (i64.store offset=0x0d6 align=1 (i32.const 0) (local.get 0x0d6)) + (i64.store offset=0x0d7 align=1 (i32.const 0) (local.get 0x0d7)) + (i64.store offset=0x0d8 align=1 (i32.const 0) (local.get 0x0d8)) + (i64.store offset=0x0d9 align=1 (i32.const 0) (local.get 0x0d9)) + (i64.store offset=0x0da align=1 (i32.const 0) (local.get 0x0da)) + (i64.store offset=0x0db align=1 (i32.const 0) (local.get 0x0db)) + (i64.store offset=0x0dc align=1 (i32.const 0) (local.get 0x0dc)) + (i64.store offset=0x0dd align=1 (i32.const 0) (local.get 0x0dd)) + (i64.store offset=0x0de align=1 (i32.const 0) (local.get 0x0de)) + (i64.store offset=0x0df align=1 (i32.const 0) (local.get 0x0df)) + (i64.store offset=0x0e0 align=1 (i32.const 0) (local.get 0x0e0)) + (i64.store offset=0x0e1 align=1 (i32.const 0) (local.get 0x0e1)) + (i64.store offset=0x0e2 align=1 (i32.const 0) (local.get 0x0e2)) + (i64.store offset=0x0e3 align=1 (i32.const 0) (local.get 0x0e3)) + (i64.store offset=0x0e4 align=1 (i32.const 0) (local.get 0x0e4)) + (i64.store offset=0x0e5 align=1 (i32.const 0) (local.get 0x0e5)) + (i64.store offset=0x0e6 align=1 (i32.const 0) (local.get 0x0e6)) + (i64.store offset=0x0e7 align=1 (i32.const 0) (local.get 0x0e7)) + (i64.store offset=0x0e8 align=1 (i32.const 0) (local.get 0x0e8)) + (i64.store offset=0x0e9 align=1 (i32.const 0) (local.get 0x0e9)) + (i64.store offset=0x0ea align=1 (i32.const 0) (local.get 0x0ea)) + (i64.store offset=0x0eb align=1 (i32.const 0) (local.get 0x0eb)) + (i64.store offset=0x0ec align=1 (i32.const 0) (local.get 0x0ec)) + (i64.store offset=0x0ed align=1 (i32.const 0) (local.get 0x0ed)) + (i64.store offset=0x0ee align=1 (i32.const 0) (local.get 0x0ee)) + (i64.store offset=0x0ef align=1 (i32.const 0) (local.get 0x0ef)) + (i64.store offset=0x0f0 align=1 (i32.const 0) (local.get 0x0f0)) + (i64.store offset=0x0f1 align=1 (i32.const 0) (local.get 0x0f1)) + (i64.store offset=0x0f2 align=1 (i32.const 0) (local.get 0x0f2)) + (i64.store offset=0x0f3 align=1 (i32.const 0) (local.get 0x0f3)) + (i64.store offset=0x0f4 align=1 (i32.const 0) (local.get 0x0f4)) + (i64.store offset=0x0f5 align=1 (i32.const 0) (local.get 0x0f5)) + (i64.store offset=0x0f6 align=1 (i32.const 0) (local.get 0x0f6)) + (i64.store offset=0x0f7 align=1 (i32.const 0) (local.get 0x0f7)) + (i64.store offset=0x0f8 align=1 (i32.const 0) (local.get 0x0f8)) + (i64.store offset=0x0f9 align=1 (i32.const 0) (local.get 0x0f9)) + (i64.store offset=0x0fa align=1 (i32.const 0) (local.get 0x0fa)) + (i64.store offset=0x0fb align=1 (i32.const 0) (local.get 0x0fb)) + (i64.store offset=0x0fc align=1 (i32.const 0) (local.get 0x0fc)) + (i64.store offset=0x0fd align=1 (i32.const 0) (local.get 0x0fd)) + (i64.store offset=0x0fe align=1 (i32.const 0) (local.get 0x0fe)) + (i64.store offset=0x0ff align=1 (i32.const 0) (local.get 0x0ff)) + (i64.store offset=0x100 align=1 (i32.const 0) (local.get 0x100)) + (i64.store offset=0x101 align=1 (i32.const 0) (local.get 0x101)) + (i64.store offset=0x102 align=1 (i32.const 0) (local.get 0x102)) + (i64.store offset=0x103 align=1 (i32.const 0) (local.get 0x103)) + (i64.store offset=0x104 align=1 (i32.const 0) (local.get 0x104)) + (i64.store offset=0x105 align=1 (i32.const 0) (local.get 0x105)) + (i64.store offset=0x106 align=1 (i32.const 0) (local.get 0x106)) + (i64.store offset=0x107 align=1 (i32.const 0) (local.get 0x107)) + (i64.store offset=0x108 align=1 (i32.const 0) (local.get 0x108)) + (i64.store offset=0x109 align=1 (i32.const 0) (local.get 0x109)) + (i64.store offset=0x10a align=1 (i32.const 0) (local.get 0x10a)) + (i64.store offset=0x10b align=1 (i32.const 0) (local.get 0x10b)) + (i64.store offset=0x10c align=1 (i32.const 0) (local.get 0x10c)) + (i64.store offset=0x10d align=1 (i32.const 0) (local.get 0x10d)) + (i64.store offset=0x10e align=1 (i32.const 0) (local.get 0x10e)) + (i64.store offset=0x10f align=1 (i32.const 0) (local.get 0x10f)) + (i64.store offset=0x110 align=1 (i32.const 0) (local.get 0x110)) + (i64.store offset=0x111 align=1 (i32.const 0) (local.get 0x111)) + (i64.store offset=0x112 align=1 (i32.const 0) (local.get 0x112)) + (i64.store offset=0x113 align=1 (i32.const 0) (local.get 0x113)) + (i64.store offset=0x114 align=1 (i32.const 0) (local.get 0x114)) + (i64.store offset=0x115 align=1 (i32.const 0) (local.get 0x115)) + (i64.store offset=0x116 align=1 (i32.const 0) (local.get 0x116)) + (i64.store offset=0x117 align=1 (i32.const 0) (local.get 0x117)) + (i64.store offset=0x118 align=1 (i32.const 0) (local.get 0x118)) + (i64.store offset=0x119 align=1 (i32.const 0) (local.get 0x119)) + (i64.store offset=0x11a align=1 (i32.const 0) (local.get 0x11a)) + (i64.store offset=0x11b align=1 (i32.const 0) (local.get 0x11b)) + (i64.store offset=0x11c align=1 (i32.const 0) (local.get 0x11c)) + (i64.store offset=0x11d align=1 (i32.const 0) (local.get 0x11d)) + (i64.store offset=0x11e align=1 (i32.const 0) (local.get 0x11e)) + (i64.store offset=0x11f align=1 (i32.const 0) (local.get 0x11f)) + (i64.store offset=0x120 align=1 (i32.const 0) (local.get 0x120)) + (i64.store offset=0x121 align=1 (i32.const 0) (local.get 0x121)) + (i64.store offset=0x122 align=1 (i32.const 0) (local.get 0x122)) + (i64.store offset=0x123 align=1 (i32.const 0) (local.get 0x123)) + (i64.store offset=0x124 align=1 (i32.const 0) (local.get 0x124)) + (i64.store offset=0x125 align=1 (i32.const 0) (local.get 0x125)) + (i64.store offset=0x126 align=1 (i32.const 0) (local.get 0x126)) + (i64.store offset=0x127 align=1 (i32.const 0) (local.get 0x127)) + (i64.store offset=0x128 align=1 (i32.const 0) (local.get 0x128)) + (i64.store offset=0x129 align=1 (i32.const 0) (local.get 0x129)) + (i64.store offset=0x12a align=1 (i32.const 0) (local.get 0x12a)) + (i64.store offset=0x12b align=1 (i32.const 0) (local.get 0x12b)) + (i64.store offset=0x12c align=1 (i32.const 0) (local.get 0x12c)) + (i64.store offset=0x12d align=1 (i32.const 0) (local.get 0x12d)) + (i64.store offset=0x12e align=1 (i32.const 0) (local.get 0x12e)) + (i64.store offset=0x12f align=1 (i32.const 0) (local.get 0x12f)) + (i64.store offset=0x130 align=1 (i32.const 0) (local.get 0x130)) + (i64.store offset=0x131 align=1 (i32.const 0) (local.get 0x131)) + (i64.store offset=0x132 align=1 (i32.const 0) (local.get 0x132)) + (i64.store offset=0x133 align=1 (i32.const 0) (local.get 0x133)) + (i64.store offset=0x134 align=1 (i32.const 0) (local.get 0x134)) + (i64.store offset=0x135 align=1 (i32.const 0) (local.get 0x135)) + (i64.store offset=0x136 align=1 (i32.const 0) (local.get 0x136)) + (i64.store offset=0x137 align=1 (i32.const 0) (local.get 0x137)) + (i64.store offset=0x138 align=1 (i32.const 0) (local.get 0x138)) + (i64.store offset=0x139 align=1 (i32.const 0) (local.get 0x139)) + (i64.store offset=0x13a align=1 (i32.const 0) (local.get 0x13a)) + (i64.store offset=0x13b align=1 (i32.const 0) (local.get 0x13b)) + (i64.store offset=0x13c align=1 (i32.const 0) (local.get 0x13c)) + (i64.store offset=0x13d align=1 (i32.const 0) (local.get 0x13d)) + (i64.store offset=0x13e align=1 (i32.const 0) (local.get 0x13e)) + (i64.store offset=0x13f align=1 (i32.const 0) (local.get 0x13f)) + (i64.store offset=0x140 align=1 (i32.const 0) (local.get 0x140)) + (i64.store offset=0x141 align=1 (i32.const 0) (local.get 0x141)) + (i64.store offset=0x142 align=1 (i32.const 0) (local.get 0x142)) + (i64.store offset=0x143 align=1 (i32.const 0) (local.get 0x143)) + (i64.store offset=0x144 align=1 (i32.const 0) (local.get 0x144)) + (i64.store offset=0x145 align=1 (i32.const 0) (local.get 0x145)) + (i64.store offset=0x146 align=1 (i32.const 0) (local.get 0x146)) + (i64.store offset=0x147 align=1 (i32.const 0) (local.get 0x147)) + (i64.store offset=0x148 align=1 (i32.const 0) (local.get 0x148)) + (i64.store offset=0x149 align=1 (i32.const 0) (local.get 0x149)) + (i64.store offset=0x14a align=1 (i32.const 0) (local.get 0x14a)) + (i64.store offset=0x14b align=1 (i32.const 0) (local.get 0x14b)) + (i64.store offset=0x14c align=1 (i32.const 0) (local.get 0x14c)) + (i64.store offset=0x14d align=1 (i32.const 0) (local.get 0x14d)) + (i64.store offset=0x14e align=1 (i32.const 0) (local.get 0x14e)) + (i64.store offset=0x14f align=1 (i32.const 0) (local.get 0x14f)) + (i64.store offset=0x150 align=1 (i32.const 0) (local.get 0x150)) + (i64.store offset=0x151 align=1 (i32.const 0) (local.get 0x151)) + (i64.store offset=0x152 align=1 (i32.const 0) (local.get 0x152)) + (i64.store offset=0x153 align=1 (i32.const 0) (local.get 0x153)) + (i64.store offset=0x154 align=1 (i32.const 0) (local.get 0x154)) + (i64.store offset=0x155 align=1 (i32.const 0) (local.get 0x155)) + (i64.store offset=0x156 align=1 (i32.const 0) (local.get 0x156)) + (i64.store offset=0x157 align=1 (i32.const 0) (local.get 0x157)) + (i64.store offset=0x158 align=1 (i32.const 0) (local.get 0x158)) + (i64.store offset=0x159 align=1 (i32.const 0) (local.get 0x159)) + (i64.store offset=0x15a align=1 (i32.const 0) (local.get 0x15a)) + (i64.store offset=0x15b align=1 (i32.const 0) (local.get 0x15b)) + (i64.store offset=0x15c align=1 (i32.const 0) (local.get 0x15c)) + (i64.store offset=0x15d align=1 (i32.const 0) (local.get 0x15d)) + (i64.store offset=0x15e align=1 (i32.const 0) (local.get 0x15e)) + (i64.store offset=0x15f align=1 (i32.const 0) (local.get 0x15f)) + (i64.store offset=0x160 align=1 (i32.const 0) (local.get 0x160)) + (i64.store offset=0x161 align=1 (i32.const 0) (local.get 0x161)) + (i64.store offset=0x162 align=1 (i32.const 0) (local.get 0x162)) + (i64.store offset=0x163 align=1 (i32.const 0) (local.get 0x163)) + (i64.store offset=0x164 align=1 (i32.const 0) (local.get 0x164)) + (i64.store offset=0x165 align=1 (i32.const 0) (local.get 0x165)) + (i64.store offset=0x166 align=1 (i32.const 0) (local.get 0x166)) + (i64.store offset=0x167 align=1 (i32.const 0) (local.get 0x167)) + (i64.store offset=0x168 align=1 (i32.const 0) (local.get 0x168)) + (i64.store offset=0x169 align=1 (i32.const 0) (local.get 0x169)) + (i64.store offset=0x16a align=1 (i32.const 0) (local.get 0x16a)) + (i64.store offset=0x16b align=1 (i32.const 0) (local.get 0x16b)) + (i64.store offset=0x16c align=1 (i32.const 0) (local.get 0x16c)) + (i64.store offset=0x16d align=1 (i32.const 0) (local.get 0x16d)) + (i64.store offset=0x16e align=1 (i32.const 0) (local.get 0x16e)) + (i64.store offset=0x16f align=1 (i32.const 0) (local.get 0x16f)) + (i64.store offset=0x170 align=1 (i32.const 0) (local.get 0x170)) + (i64.store offset=0x171 align=1 (i32.const 0) (local.get 0x171)) + (i64.store offset=0x172 align=1 (i32.const 0) (local.get 0x172)) + (i64.store offset=0x173 align=1 (i32.const 0) (local.get 0x173)) + (i64.store offset=0x174 align=1 (i32.const 0) (local.get 0x174)) + (i64.store offset=0x175 align=1 (i32.const 0) (local.get 0x175)) + (i64.store offset=0x176 align=1 (i32.const 0) (local.get 0x176)) + (i64.store offset=0x177 align=1 (i32.const 0) (local.get 0x177)) + (i64.store offset=0x178 align=1 (i32.const 0) (local.get 0x178)) + (i64.store offset=0x179 align=1 (i32.const 0) (local.get 0x179)) + (i64.store offset=0x17a align=1 (i32.const 0) (local.get 0x17a)) + (i64.store offset=0x17b align=1 (i32.const 0) (local.get 0x17b)) + (i64.store offset=0x17c align=1 (i32.const 0) (local.get 0x17c)) + (i64.store offset=0x17d align=1 (i32.const 0) (local.get 0x17d)) + (i64.store offset=0x17e align=1 (i32.const 0) (local.get 0x17e)) + (i64.store offset=0x17f align=1 (i32.const 0) (local.get 0x17f)) + (i64.store offset=0x180 align=1 (i32.const 0) (local.get 0x180)) + (i64.store offset=0x181 align=1 (i32.const 0) (local.get 0x181)) + (i64.store offset=0x182 align=1 (i32.const 0) (local.get 0x182)) + (i64.store offset=0x183 align=1 (i32.const 0) (local.get 0x183)) + (i64.store offset=0x184 align=1 (i32.const 0) (local.get 0x184)) + (i64.store offset=0x185 align=1 (i32.const 0) (local.get 0x185)) + (i64.store offset=0x186 align=1 (i32.const 0) (local.get 0x186)) + (i64.store offset=0x187 align=1 (i32.const 0) (local.get 0x187)) + (i64.store offset=0x188 align=1 (i32.const 0) (local.get 0x188)) + (i64.store offset=0x189 align=1 (i32.const 0) (local.get 0x189)) + (i64.store offset=0x18a align=1 (i32.const 0) (local.get 0x18a)) + (i64.store offset=0x18b align=1 (i32.const 0) (local.get 0x18b)) + (i64.store offset=0x18c align=1 (i32.const 0) (local.get 0x18c)) + (i64.store offset=0x18d align=1 (i32.const 0) (local.get 0x18d)) + (i64.store offset=0x18e align=1 (i32.const 0) (local.get 0x18e)) + (i64.store offset=0x18f align=1 (i32.const 0) (local.get 0x18f)) + (i64.store offset=0x190 align=1 (i32.const 0) (local.get 0x190)) + (i64.store offset=0x191 align=1 (i32.const 0) (local.get 0x191)) + (i64.store offset=0x192 align=1 (i32.const 0) (local.get 0x192)) + (i64.store offset=0x193 align=1 (i32.const 0) (local.get 0x193)) + (i64.store offset=0x194 align=1 (i32.const 0) (local.get 0x194)) + (i64.store offset=0x195 align=1 (i32.const 0) (local.get 0x195)) + (i64.store offset=0x196 align=1 (i32.const 0) (local.get 0x196)) + (i64.store offset=0x197 align=1 (i32.const 0) (local.get 0x197)) + (i64.store offset=0x198 align=1 (i32.const 0) (local.get 0x198)) + (i64.store offset=0x199 align=1 (i32.const 0) (local.get 0x199)) + (i64.store offset=0x19a align=1 (i32.const 0) (local.get 0x19a)) + (i64.store offset=0x19b align=1 (i32.const 0) (local.get 0x19b)) + (i64.store offset=0x19c align=1 (i32.const 0) (local.get 0x19c)) + (i64.store offset=0x19d align=1 (i32.const 0) (local.get 0x19d)) + (i64.store offset=0x19e align=1 (i32.const 0) (local.get 0x19e)) + (i64.store offset=0x19f align=1 (i32.const 0) (local.get 0x19f)) + (i64.store offset=0x1a0 align=1 (i32.const 0) (local.get 0x1a0)) + (i64.store offset=0x1a1 align=1 (i32.const 0) (local.get 0x1a1)) + (i64.store offset=0x1a2 align=1 (i32.const 0) (local.get 0x1a2)) + (i64.store offset=0x1a3 align=1 (i32.const 0) (local.get 0x1a3)) + (i64.store offset=0x1a4 align=1 (i32.const 0) (local.get 0x1a4)) + (i64.store offset=0x1a5 align=1 (i32.const 0) (local.get 0x1a5)) + (i64.store offset=0x1a6 align=1 (i32.const 0) (local.get 0x1a6)) + (i64.store offset=0x1a7 align=1 (i32.const 0) (local.get 0x1a7)) + (i64.store offset=0x1a8 align=1 (i32.const 0) (local.get 0x1a8)) + (i64.store offset=0x1a9 align=1 (i32.const 0) (local.get 0x1a9)) + (i64.store offset=0x1aa align=1 (i32.const 0) (local.get 0x1aa)) + (i64.store offset=0x1ab align=1 (i32.const 0) (local.get 0x1ab)) + (i64.store offset=0x1ac align=1 (i32.const 0) (local.get 0x1ac)) + (i64.store offset=0x1ad align=1 (i32.const 0) (local.get 0x1ad)) + (i64.store offset=0x1ae align=1 (i32.const 0) (local.get 0x1ae)) + (i64.store offset=0x1af align=1 (i32.const 0) (local.get 0x1af)) + (i64.store offset=0x1b0 align=1 (i32.const 0) (local.get 0x1b0)) + (i64.store offset=0x1b1 align=1 (i32.const 0) (local.get 0x1b1)) + (i64.store offset=0x1b2 align=1 (i32.const 0) (local.get 0x1b2)) + (i64.store offset=0x1b3 align=1 (i32.const 0) (local.get 0x1b3)) + (i64.store offset=0x1b4 align=1 (i32.const 0) (local.get 0x1b4)) + (i64.store offset=0x1b5 align=1 (i32.const 0) (local.get 0x1b5)) + (i64.store offset=0x1b6 align=1 (i32.const 0) (local.get 0x1b6)) + (i64.store offset=0x1b7 align=1 (i32.const 0) (local.get 0x1b7)) + (i64.store offset=0x1b8 align=1 (i32.const 0) (local.get 0x1b8)) + (i64.store offset=0x1b9 align=1 (i32.const 0) (local.get 0x1b9)) + (i64.store offset=0x1ba align=1 (i32.const 0) (local.get 0x1ba)) + (i64.store offset=0x1bb align=1 (i32.const 0) (local.get 0x1bb)) + (i64.store offset=0x1bc align=1 (i32.const 0) (local.get 0x1bc)) + (i64.store offset=0x1bd align=1 (i32.const 0) (local.get 0x1bd)) + (i64.store offset=0x1be align=1 (i32.const 0) (local.get 0x1be)) + (i64.store offset=0x1bf align=1 (i32.const 0) (local.get 0x1bf)) + (i64.store offset=0x1c0 align=1 (i32.const 0) (local.get 0x1c0)) + (i64.store offset=0x1c1 align=1 (i32.const 0) (local.get 0x1c1)) + (i64.store offset=0x1c2 align=1 (i32.const 0) (local.get 0x1c2)) + (i64.store offset=0x1c3 align=1 (i32.const 0) (local.get 0x1c3)) + (i64.store offset=0x1c4 align=1 (i32.const 0) (local.get 0x1c4)) + (i64.store offset=0x1c5 align=1 (i32.const 0) (local.get 0x1c5)) + (i64.store offset=0x1c6 align=1 (i32.const 0) (local.get 0x1c6)) + (i64.store offset=0x1c7 align=1 (i32.const 0) (local.get 0x1c7)) + (i64.store offset=0x1c8 align=1 (i32.const 0) (local.get 0x1c8)) + (i64.store offset=0x1c9 align=1 (i32.const 0) (local.get 0x1c9)) + (i64.store offset=0x1ca align=1 (i32.const 0) (local.get 0x1ca)) + (i64.store offset=0x1cb align=1 (i32.const 0) (local.get 0x1cb)) + (i64.store offset=0x1cc align=1 (i32.const 0) (local.get 0x1cc)) + (i64.store offset=0x1cd align=1 (i32.const 0) (local.get 0x1cd)) + (i64.store offset=0x1ce align=1 (i32.const 0) (local.get 0x1ce)) + (i64.store offset=0x1cf align=1 (i32.const 0) (local.get 0x1cf)) + (i64.store offset=0x1d0 align=1 (i32.const 0) (local.get 0x1d0)) + (i64.store offset=0x1d1 align=1 (i32.const 0) (local.get 0x1d1)) + (i64.store offset=0x1d2 align=1 (i32.const 0) (local.get 0x1d2)) + (i64.store offset=0x1d3 align=1 (i32.const 0) (local.get 0x1d3)) + (i64.store offset=0x1d4 align=1 (i32.const 0) (local.get 0x1d4)) + (i64.store offset=0x1d5 align=1 (i32.const 0) (local.get 0x1d5)) + (i64.store offset=0x1d6 align=1 (i32.const 0) (local.get 0x1d6)) + (i64.store offset=0x1d7 align=1 (i32.const 0) (local.get 0x1d7)) + (i64.store offset=0x1d8 align=1 (i32.const 0) (local.get 0x1d8)) + (i64.store offset=0x1d9 align=1 (i32.const 0) (local.get 0x1d9)) + (i64.store offset=0x1da align=1 (i32.const 0) (local.get 0x1da)) + (i64.store offset=0x1db align=1 (i32.const 0) (local.get 0x1db)) + (i64.store offset=0x1dc align=1 (i32.const 0) (local.get 0x1dc)) + (i64.store offset=0x1dd align=1 (i32.const 0) (local.get 0x1dd)) + (i64.store offset=0x1de align=1 (i32.const 0) (local.get 0x1de)) + (i64.store offset=0x1df align=1 (i32.const 0) (local.get 0x1df)) + (i64.store offset=0x1e0 align=1 (i32.const 0) (local.get 0x1e0)) + (i64.store offset=0x1e1 align=1 (i32.const 0) (local.get 0x1e1)) + (i64.store offset=0x1e2 align=1 (i32.const 0) (local.get 0x1e2)) + (i64.store offset=0x1e3 align=1 (i32.const 0) (local.get 0x1e3)) + (i64.store offset=0x1e4 align=1 (i32.const 0) (local.get 0x1e4)) + (i64.store offset=0x1e5 align=1 (i32.const 0) (local.get 0x1e5)) + (i64.store offset=0x1e6 align=1 (i32.const 0) (local.get 0x1e6)) + (i64.store offset=0x1e7 align=1 (i32.const 0) (local.get 0x1e7)) + (i64.store offset=0x1e8 align=1 (i32.const 0) (local.get 0x1e8)) + (i64.store offset=0x1e9 align=1 (i32.const 0) (local.get 0x1e9)) + (i64.store offset=0x1ea align=1 (i32.const 0) (local.get 0x1ea)) + (i64.store offset=0x1eb align=1 (i32.const 0) (local.get 0x1eb)) + (i64.store offset=0x1ec align=1 (i32.const 0) (local.get 0x1ec)) + (i64.store offset=0x1ed align=1 (i32.const 0) (local.get 0x1ed)) + (i64.store offset=0x1ee align=1 (i32.const 0) (local.get 0x1ee)) + (i64.store offset=0x1ef align=1 (i32.const 0) (local.get 0x1ef)) + (i64.store offset=0x1f0 align=1 (i32.const 0) (local.get 0x1f0)) + (i64.store offset=0x1f1 align=1 (i32.const 0) (local.get 0x1f1)) + (i64.store offset=0x1f2 align=1 (i32.const 0) (local.get 0x1f2)) + (i64.store offset=0x1f3 align=1 (i32.const 0) (local.get 0x1f3)) + (i64.store offset=0x1f4 align=1 (i32.const 0) (local.get 0x1f4)) + (i64.store offset=0x1f5 align=1 (i32.const 0) (local.get 0x1f5)) + (i64.store offset=0x1f6 align=1 (i32.const 0) (local.get 0x1f6)) + (i64.store offset=0x1f7 align=1 (i32.const 0) (local.get 0x1f7)) + (i64.store offset=0x1f8 align=1 (i32.const 0) (local.get 0x1f8)) + (i64.store offset=0x1f9 align=1 (i32.const 0) (local.get 0x1f9)) + (i64.store offset=0x1fa align=1 (i32.const 0) (local.get 0x1fa)) + (i64.store offset=0x1fb align=1 (i32.const 0) (local.get 0x1fb)) + (i64.store offset=0x1fc align=1 (i32.const 0) (local.get 0x1fc)) + (i64.store offset=0x1fd align=1 (i32.const 0) (local.get 0x1fd)) + (i64.store offset=0x1fe align=1 (i32.const 0) (local.get 0x1fe)) + (i64.store offset=0x1ff align=1 (i32.const 0) (local.get 0x1ff)) + (i64.store offset=0x200 align=1 (i32.const 0) (local.get 0x200)) + (i64.store offset=0x201 align=1 (i32.const 0) (local.get 0x201)) + (i64.store offset=0x202 align=1 (i32.const 0) (local.get 0x202)) + (i64.store offset=0x203 align=1 (i32.const 0) (local.get 0x203)) + (i64.store offset=0x204 align=1 (i32.const 0) (local.get 0x204)) + (i64.store offset=0x205 align=1 (i32.const 0) (local.get 0x205)) + (i64.store offset=0x206 align=1 (i32.const 0) (local.get 0x206)) + (i64.store offset=0x207 align=1 (i32.const 0) (local.get 0x207)) + (i64.store offset=0x208 align=1 (i32.const 0) (local.get 0x208)) + (i64.store offset=0x209 align=1 (i32.const 0) (local.get 0x209)) + (i64.store offset=0x20a align=1 (i32.const 0) (local.get 0x20a)) + (i64.store offset=0x20b align=1 (i32.const 0) (local.get 0x20b)) + (i64.store offset=0x20c align=1 (i32.const 0) (local.get 0x20c)) + (i64.store offset=0x20d align=1 (i32.const 0) (local.get 0x20d)) + (i64.store offset=0x20e align=1 (i32.const 0) (local.get 0x20e)) + (i64.store offset=0x20f align=1 (i32.const 0) (local.get 0x20f)) + (i64.store offset=0x210 align=1 (i32.const 0) (local.get 0x210)) + (i64.store offset=0x211 align=1 (i32.const 0) (local.get 0x211)) + (i64.store offset=0x212 align=1 (i32.const 0) (local.get 0x212)) + (i64.store offset=0x213 align=1 (i32.const 0) (local.get 0x213)) + (i64.store offset=0x214 align=1 (i32.const 0) (local.get 0x214)) + (i64.store offset=0x215 align=1 (i32.const 0) (local.get 0x215)) + (i64.store offset=0x216 align=1 (i32.const 0) (local.get 0x216)) + (i64.store offset=0x217 align=1 (i32.const 0) (local.get 0x217)) + (i64.store offset=0x218 align=1 (i32.const 0) (local.get 0x218)) + (i64.store offset=0x219 align=1 (i32.const 0) (local.get 0x219)) + (i64.store offset=0x21a align=1 (i32.const 0) (local.get 0x21a)) + (i64.store offset=0x21b align=1 (i32.const 0) (local.get 0x21b)) + (i64.store offset=0x21c align=1 (i32.const 0) (local.get 0x21c)) + (i64.store offset=0x21d align=1 (i32.const 0) (local.get 0x21d)) + (i64.store offset=0x21e align=1 (i32.const 0) (local.get 0x21e)) + (i64.store offset=0x21f align=1 (i32.const 0) (local.get 0x21f)) + (i64.store offset=0x220 align=1 (i32.const 0) (local.get 0x220)) + (i64.store offset=0x221 align=1 (i32.const 0) (local.get 0x221)) + (i64.store offset=0x222 align=1 (i32.const 0) (local.get 0x222)) + (i64.store offset=0x223 align=1 (i32.const 0) (local.get 0x223)) + (i64.store offset=0x224 align=1 (i32.const 0) (local.get 0x224)) + (i64.store offset=0x225 align=1 (i32.const 0) (local.get 0x225)) + (i64.store offset=0x226 align=1 (i32.const 0) (local.get 0x226)) + (i64.store offset=0x227 align=1 (i32.const 0) (local.get 0x227)) + (i64.store offset=0x228 align=1 (i32.const 0) (local.get 0x228)) + (i64.store offset=0x229 align=1 (i32.const 0) (local.get 0x229)) + (i64.store offset=0x22a align=1 (i32.const 0) (local.get 0x22a)) + (i64.store offset=0x22b align=1 (i32.const 0) (local.get 0x22b)) + (i64.store offset=0x22c align=1 (i32.const 0) (local.get 0x22c)) + (i64.store offset=0x22d align=1 (i32.const 0) (local.get 0x22d)) + (i64.store offset=0x22e align=1 (i32.const 0) (local.get 0x22e)) + (i64.store offset=0x22f align=1 (i32.const 0) (local.get 0x22f)) + (i64.store offset=0x230 align=1 (i32.const 0) (local.get 0x230)) + (i64.store offset=0x231 align=1 (i32.const 0) (local.get 0x231)) + (i64.store offset=0x232 align=1 (i32.const 0) (local.get 0x232)) + (i64.store offset=0x233 align=1 (i32.const 0) (local.get 0x233)) + (i64.store offset=0x234 align=1 (i32.const 0) (local.get 0x234)) + (i64.store offset=0x235 align=1 (i32.const 0) (local.get 0x235)) + (i64.store offset=0x236 align=1 (i32.const 0) (local.get 0x236)) + (i64.store offset=0x237 align=1 (i32.const 0) (local.get 0x237)) + (i64.store offset=0x238 align=1 (i32.const 0) (local.get 0x238)) + (i64.store offset=0x239 align=1 (i32.const 0) (local.get 0x239)) + (i64.store offset=0x23a align=1 (i32.const 0) (local.get 0x23a)) + (i64.store offset=0x23b align=1 (i32.const 0) (local.get 0x23b)) + (i64.store offset=0x23c align=1 (i32.const 0) (local.get 0x23c)) + (i64.store offset=0x23d align=1 (i32.const 0) (local.get 0x23d)) + (i64.store offset=0x23e align=1 (i32.const 0) (local.get 0x23e)) + (i64.store offset=0x23f align=1 (i32.const 0) (local.get 0x23f)) + (i64.store offset=0x240 align=1 (i32.const 0) (local.get 0x240)) + (i64.store offset=0x241 align=1 (i32.const 0) (local.get 0x241)) + (i64.store offset=0x242 align=1 (i32.const 0) (local.get 0x242)) + (i64.store offset=0x243 align=1 (i32.const 0) (local.get 0x243)) + (i64.store offset=0x244 align=1 (i32.const 0) (local.get 0x244)) + (i64.store offset=0x245 align=1 (i32.const 0) (local.get 0x245)) + (i64.store offset=0x246 align=1 (i32.const 0) (local.get 0x246)) + (i64.store offset=0x247 align=1 (i32.const 0) (local.get 0x247)) + (i64.store offset=0x248 align=1 (i32.const 0) (local.get 0x248)) + (i64.store offset=0x249 align=1 (i32.const 0) (local.get 0x249)) + (i64.store offset=0x24a align=1 (i32.const 0) (local.get 0x24a)) + (i64.store offset=0x24b align=1 (i32.const 0) (local.get 0x24b)) + (i64.store offset=0x24c align=1 (i32.const 0) (local.get 0x24c)) + (i64.store offset=0x24d align=1 (i32.const 0) (local.get 0x24d)) + (i64.store offset=0x24e align=1 (i32.const 0) (local.get 0x24e)) + (i64.store offset=0x24f align=1 (i32.const 0) (local.get 0x24f)) + (i64.store offset=0x250 align=1 (i32.const 0) (local.get 0x250)) + (i64.store offset=0x251 align=1 (i32.const 0) (local.get 0x251)) + (i64.store offset=0x252 align=1 (i32.const 0) (local.get 0x252)) + (i64.store offset=0x253 align=1 (i32.const 0) (local.get 0x253)) + (i64.store offset=0x254 align=1 (i32.const 0) (local.get 0x254)) + (i64.store offset=0x255 align=1 (i32.const 0) (local.get 0x255)) + (i64.store offset=0x256 align=1 (i32.const 0) (local.get 0x256)) + (i64.store offset=0x257 align=1 (i32.const 0) (local.get 0x257)) + (i64.store offset=0x258 align=1 (i32.const 0) (local.get 0x258)) + (i64.store offset=0x259 align=1 (i32.const 0) (local.get 0x259)) + (i64.store offset=0x25a align=1 (i32.const 0) (local.get 0x25a)) + (i64.store offset=0x25b align=1 (i32.const 0) (local.get 0x25b)) + (i64.store offset=0x25c align=1 (i32.const 0) (local.get 0x25c)) + (i64.store offset=0x25d align=1 (i32.const 0) (local.get 0x25d)) + (i64.store offset=0x25e align=1 (i32.const 0) (local.get 0x25e)) + (i64.store offset=0x25f align=1 (i32.const 0) (local.get 0x25f)) + (i64.store offset=0x260 align=1 (i32.const 0) (local.get 0x260)) + (i64.store offset=0x261 align=1 (i32.const 0) (local.get 0x261)) + (i64.store offset=0x262 align=1 (i32.const 0) (local.get 0x262)) + (i64.store offset=0x263 align=1 (i32.const 0) (local.get 0x263)) + (i64.store offset=0x264 align=1 (i32.const 0) (local.get 0x264)) + (i64.store offset=0x265 align=1 (i32.const 0) (local.get 0x265)) + (i64.store offset=0x266 align=1 (i32.const 0) (local.get 0x266)) + (i64.store offset=0x267 align=1 (i32.const 0) (local.get 0x267)) + (i64.store offset=0x268 align=1 (i32.const 0) (local.get 0x268)) + (i64.store offset=0x269 align=1 (i32.const 0) (local.get 0x269)) + (i64.store offset=0x26a align=1 (i32.const 0) (local.get 0x26a)) + (i64.store offset=0x26b align=1 (i32.const 0) (local.get 0x26b)) + (i64.store offset=0x26c align=1 (i32.const 0) (local.get 0x26c)) + (i64.store offset=0x26d align=1 (i32.const 0) (local.get 0x26d)) + (i64.store offset=0x26e align=1 (i32.const 0) (local.get 0x26e)) + (i64.store offset=0x26f align=1 (i32.const 0) (local.get 0x26f)) + (i64.store offset=0x270 align=1 (i32.const 0) (local.get 0x270)) + (i64.store offset=0x271 align=1 (i32.const 0) (local.get 0x271)) + (i64.store offset=0x272 align=1 (i32.const 0) (local.get 0x272)) + (i64.store offset=0x273 align=1 (i32.const 0) (local.get 0x273)) + (i64.store offset=0x274 align=1 (i32.const 0) (local.get 0x274)) + (i64.store offset=0x275 align=1 (i32.const 0) (local.get 0x275)) + (i64.store offset=0x276 align=1 (i32.const 0) (local.get 0x276)) + (i64.store offset=0x277 align=1 (i32.const 0) (local.get 0x277)) + (i64.store offset=0x278 align=1 (i32.const 0) (local.get 0x278)) + (i64.store offset=0x279 align=1 (i32.const 0) (local.get 0x279)) + (i64.store offset=0x27a align=1 (i32.const 0) (local.get 0x27a)) + (i64.store offset=0x27b align=1 (i32.const 0) (local.get 0x27b)) + (i64.store offset=0x27c align=1 (i32.const 0) (local.get 0x27c)) + (i64.store offset=0x27d align=1 (i32.const 0) (local.get 0x27d)) + (i64.store offset=0x27e align=1 (i32.const 0) (local.get 0x27e)) + (i64.store offset=0x27f align=1 (i32.const 0) (local.get 0x27f)) + (i64.store offset=0x280 align=1 (i32.const 0) (local.get 0x280)) + (i64.store offset=0x281 align=1 (i32.const 0) (local.get 0x281)) + (i64.store offset=0x282 align=1 (i32.const 0) (local.get 0x282)) + (i64.store offset=0x283 align=1 (i32.const 0) (local.get 0x283)) + (i64.store offset=0x284 align=1 (i32.const 0) (local.get 0x284)) + (i64.store offset=0x285 align=1 (i32.const 0) (local.get 0x285)) + (i64.store offset=0x286 align=1 (i32.const 0) (local.get 0x286)) + (i64.store offset=0x287 align=1 (i32.const 0) (local.get 0x287)) + (i64.store offset=0x288 align=1 (i32.const 0) (local.get 0x288)) + (i64.store offset=0x289 align=1 (i32.const 0) (local.get 0x289)) + (i64.store offset=0x28a align=1 (i32.const 0) (local.get 0x28a)) + (i64.store offset=0x28b align=1 (i32.const 0) (local.get 0x28b)) + (i64.store offset=0x28c align=1 (i32.const 0) (local.get 0x28c)) + (i64.store offset=0x28d align=1 (i32.const 0) (local.get 0x28d)) + (i64.store offset=0x28e align=1 (i32.const 0) (local.get 0x28e)) + (i64.store offset=0x28f align=1 (i32.const 0) (local.get 0x28f)) + (i64.store offset=0x290 align=1 (i32.const 0) (local.get 0x290)) + (i64.store offset=0x291 align=1 (i32.const 0) (local.get 0x291)) + (i64.store offset=0x292 align=1 (i32.const 0) (local.get 0x292)) + (i64.store offset=0x293 align=1 (i32.const 0) (local.get 0x293)) + (i64.store offset=0x294 align=1 (i32.const 0) (local.get 0x294)) + (i64.store offset=0x295 align=1 (i32.const 0) (local.get 0x295)) + (i64.store offset=0x296 align=1 (i32.const 0) (local.get 0x296)) + (i64.store offset=0x297 align=1 (i32.const 0) (local.get 0x297)) + (i64.store offset=0x298 align=1 (i32.const 0) (local.get 0x298)) + (i64.store offset=0x299 align=1 (i32.const 0) (local.get 0x299)) + (i64.store offset=0x29a align=1 (i32.const 0) (local.get 0x29a)) + (i64.store offset=0x29b align=1 (i32.const 0) (local.get 0x29b)) + (i64.store offset=0x29c align=1 (i32.const 0) (local.get 0x29c)) + (i64.store offset=0x29d align=1 (i32.const 0) (local.get 0x29d)) + (i64.store offset=0x29e align=1 (i32.const 0) (local.get 0x29e)) + (i64.store offset=0x29f align=1 (i32.const 0) (local.get 0x29f)) + (i64.store offset=0x2a0 align=1 (i32.const 0) (local.get 0x2a0)) + (i64.store offset=0x2a1 align=1 (i32.const 0) (local.get 0x2a1)) + (i64.store offset=0x2a2 align=1 (i32.const 0) (local.get 0x2a2)) + (i64.store offset=0x2a3 align=1 (i32.const 0) (local.get 0x2a3)) + (i64.store offset=0x2a4 align=1 (i32.const 0) (local.get 0x2a4)) + (i64.store offset=0x2a5 align=1 (i32.const 0) (local.get 0x2a5)) + (i64.store offset=0x2a6 align=1 (i32.const 0) (local.get 0x2a6)) + (i64.store offset=0x2a7 align=1 (i32.const 0) (local.get 0x2a7)) + (i64.store offset=0x2a8 align=1 (i32.const 0) (local.get 0x2a8)) + (i64.store offset=0x2a9 align=1 (i32.const 0) (local.get 0x2a9)) + (i64.store offset=0x2aa align=1 (i32.const 0) (local.get 0x2aa)) + (i64.store offset=0x2ab align=1 (i32.const 0) (local.get 0x2ab)) + (i64.store offset=0x2ac align=1 (i32.const 0) (local.get 0x2ac)) + (i64.store offset=0x2ad align=1 (i32.const 0) (local.get 0x2ad)) + (i64.store offset=0x2ae align=1 (i32.const 0) (local.get 0x2ae)) + (i64.store offset=0x2af align=1 (i32.const 0) (local.get 0x2af)) + (i64.store offset=0x2b0 align=1 (i32.const 0) (local.get 0x2b0)) + (i64.store offset=0x2b1 align=1 (i32.const 0) (local.get 0x2b1)) + (i64.store offset=0x2b2 align=1 (i32.const 0) (local.get 0x2b2)) + (i64.store offset=0x2b3 align=1 (i32.const 0) (local.get 0x2b3)) + (i64.store offset=0x2b4 align=1 (i32.const 0) (local.get 0x2b4)) + (i64.store offset=0x2b5 align=1 (i32.const 0) (local.get 0x2b5)) + (i64.store offset=0x2b6 align=1 (i32.const 0) (local.get 0x2b6)) + (i64.store offset=0x2b7 align=1 (i32.const 0) (local.get 0x2b7)) + (i64.store offset=0x2b8 align=1 (i32.const 0) (local.get 0x2b8)) + (i64.store offset=0x2b9 align=1 (i32.const 0) (local.get 0x2b9)) + (i64.store offset=0x2ba align=1 (i32.const 0) (local.get 0x2ba)) + (i64.store offset=0x2bb align=1 (i32.const 0) (local.get 0x2bb)) + (i64.store offset=0x2bc align=1 (i32.const 0) (local.get 0x2bc)) + (i64.store offset=0x2bd align=1 (i32.const 0) (local.get 0x2bd)) + (i64.store offset=0x2be align=1 (i32.const 0) (local.get 0x2be)) + (i64.store offset=0x2bf align=1 (i32.const 0) (local.get 0x2bf)) + (i64.store offset=0x2c0 align=1 (i32.const 0) (local.get 0x2c0)) + (i64.store offset=0x2c1 align=1 (i32.const 0) (local.get 0x2c1)) + (i64.store offset=0x2c2 align=1 (i32.const 0) (local.get 0x2c2)) + (i64.store offset=0x2c3 align=1 (i32.const 0) (local.get 0x2c3)) + (i64.store offset=0x2c4 align=1 (i32.const 0) (local.get 0x2c4)) + (i64.store offset=0x2c5 align=1 (i32.const 0) (local.get 0x2c5)) + (i64.store offset=0x2c6 align=1 (i32.const 0) (local.get 0x2c6)) + (i64.store offset=0x2c7 align=1 (i32.const 0) (local.get 0x2c7)) + (i64.store offset=0x2c8 align=1 (i32.const 0) (local.get 0x2c8)) + (i64.store offset=0x2c9 align=1 (i32.const 0) (local.get 0x2c9)) + (i64.store offset=0x2ca align=1 (i32.const 0) (local.get 0x2ca)) + (i64.store offset=0x2cb align=1 (i32.const 0) (local.get 0x2cb)) + (i64.store offset=0x2cc align=1 (i32.const 0) (local.get 0x2cc)) + (i64.store offset=0x2cd align=1 (i32.const 0) (local.get 0x2cd)) + (i64.store offset=0x2ce align=1 (i32.const 0) (local.get 0x2ce)) + (i64.store offset=0x2cf align=1 (i32.const 0) (local.get 0x2cf)) + (i64.store offset=0x2d0 align=1 (i32.const 0) (local.get 0x2d0)) + (i64.store offset=0x2d1 align=1 (i32.const 0) (local.get 0x2d1)) + (i64.store offset=0x2d2 align=1 (i32.const 0) (local.get 0x2d2)) + (i64.store offset=0x2d3 align=1 (i32.const 0) (local.get 0x2d3)) + (i64.store offset=0x2d4 align=1 (i32.const 0) (local.get 0x2d4)) + (i64.store offset=0x2d5 align=1 (i32.const 0) (local.get 0x2d5)) + (i64.store offset=0x2d6 align=1 (i32.const 0) (local.get 0x2d6)) + (i64.store offset=0x2d7 align=1 (i32.const 0) (local.get 0x2d7)) + (i64.store offset=0x2d8 align=1 (i32.const 0) (local.get 0x2d8)) + (i64.store offset=0x2d9 align=1 (i32.const 0) (local.get 0x2d9)) + (i64.store offset=0x2da align=1 (i32.const 0) (local.get 0x2da)) + (i64.store offset=0x2db align=1 (i32.const 0) (local.get 0x2db)) + (i64.store offset=0x2dc align=1 (i32.const 0) (local.get 0x2dc)) + (i64.store offset=0x2dd align=1 (i32.const 0) (local.get 0x2dd)) + (i64.store offset=0x2de align=1 (i32.const 0) (local.get 0x2de)) + (i64.store offset=0x2df align=1 (i32.const 0) (local.get 0x2df)) + (i64.store offset=0x2e0 align=1 (i32.const 0) (local.get 0x2e0)) + (i64.store offset=0x2e1 align=1 (i32.const 0) (local.get 0x2e1)) + (i64.store offset=0x2e2 align=1 (i32.const 0) (local.get 0x2e2)) + (i64.store offset=0x2e3 align=1 (i32.const 0) (local.get 0x2e3)) + (i64.store offset=0x2e4 align=1 (i32.const 0) (local.get 0x2e4)) + (i64.store offset=0x2e5 align=1 (i32.const 0) (local.get 0x2e5)) + (i64.store offset=0x2e6 align=1 (i32.const 0) (local.get 0x2e6)) + (i64.store offset=0x2e7 align=1 (i32.const 0) (local.get 0x2e7)) + (i64.store offset=0x2e8 align=1 (i32.const 0) (local.get 0x2e8)) + (i64.store offset=0x2e9 align=1 (i32.const 0) (local.get 0x2e9)) + (i64.store offset=0x2ea align=1 (i32.const 0) (local.get 0x2ea)) + (i64.store offset=0x2eb align=1 (i32.const 0) (local.get 0x2eb)) + (i64.store offset=0x2ec align=1 (i32.const 0) (local.get 0x2ec)) + (i64.store offset=0x2ed align=1 (i32.const 0) (local.get 0x2ed)) + (i64.store offset=0x2ee align=1 (i32.const 0) (local.get 0x2ee)) + (i64.store offset=0x2ef align=1 (i32.const 0) (local.get 0x2ef)) + (i64.store offset=0x2f0 align=1 (i32.const 0) (local.get 0x2f0)) + (i64.store offset=0x2f1 align=1 (i32.const 0) (local.get 0x2f1)) + (i64.store offset=0x2f2 align=1 (i32.const 0) (local.get 0x2f2)) + (i64.store offset=0x2f3 align=1 (i32.const 0) (local.get 0x2f3)) + (i64.store offset=0x2f4 align=1 (i32.const 0) (local.get 0x2f4)) + (i64.store offset=0x2f5 align=1 (i32.const 0) (local.get 0x2f5)) + (i64.store offset=0x2f6 align=1 (i32.const 0) (local.get 0x2f6)) + (i64.store offset=0x2f7 align=1 (i32.const 0) (local.get 0x2f7)) + (i64.store offset=0x2f8 align=1 (i32.const 0) (local.get 0x2f8)) + (i64.store offset=0x2f9 align=1 (i32.const 0) (local.get 0x2f9)) + (i64.store offset=0x2fa align=1 (i32.const 0) (local.get 0x2fa)) + (i64.store offset=0x2fb align=1 (i32.const 0) (local.get 0x2fb)) + (i64.store offset=0x2fc align=1 (i32.const 0) (local.get 0x2fc)) + (i64.store offset=0x2fd align=1 (i32.const 0) (local.get 0x2fd)) + (i64.store offset=0x2fe align=1 (i32.const 0) (local.get 0x2fe)) + (i64.store offset=0x2ff align=1 (i32.const 0) (local.get 0x2ff)) + (i64.store offset=0x300 align=1 (i32.const 0) (local.get 0x300)) + (i64.store offset=0x301 align=1 (i32.const 0) (local.get 0x301)) + (i64.store offset=0x302 align=1 (i32.const 0) (local.get 0x302)) + (i64.store offset=0x303 align=1 (i32.const 0) (local.get 0x303)) + (i64.store offset=0x304 align=1 (i32.const 0) (local.get 0x304)) + (i64.store offset=0x305 align=1 (i32.const 0) (local.get 0x305)) + (i64.store offset=0x306 align=1 (i32.const 0) (local.get 0x306)) + (i64.store offset=0x307 align=1 (i32.const 0) (local.get 0x307)) + (i64.store offset=0x308 align=1 (i32.const 0) (local.get 0x308)) + (i64.store offset=0x309 align=1 (i32.const 0) (local.get 0x309)) + (i64.store offset=0x30a align=1 (i32.const 0) (local.get 0x30a)) + (i64.store offset=0x30b align=1 (i32.const 0) (local.get 0x30b)) + (i64.store offset=0x30c align=1 (i32.const 0) (local.get 0x30c)) + (i64.store offset=0x30d align=1 (i32.const 0) (local.get 0x30d)) + (i64.store offset=0x30e align=1 (i32.const 0) (local.get 0x30e)) + (i64.store offset=0x30f align=1 (i32.const 0) (local.get 0x30f)) + (i64.store offset=0x310 align=1 (i32.const 0) (local.get 0x310)) + (i64.store offset=0x311 align=1 (i32.const 0) (local.get 0x311)) + (i64.store offset=0x312 align=1 (i32.const 0) (local.get 0x312)) + (i64.store offset=0x313 align=1 (i32.const 0) (local.get 0x313)) + (i64.store offset=0x314 align=1 (i32.const 0) (local.get 0x314)) + (i64.store offset=0x315 align=1 (i32.const 0) (local.get 0x315)) + (i64.store offset=0x316 align=1 (i32.const 0) (local.get 0x316)) + (i64.store offset=0x317 align=1 (i32.const 0) (local.get 0x317)) + (i64.store offset=0x318 align=1 (i32.const 0) (local.get 0x318)) + (i64.store offset=0x319 align=1 (i32.const 0) (local.get 0x319)) + (i64.store offset=0x31a align=1 (i32.const 0) (local.get 0x31a)) + (i64.store offset=0x31b align=1 (i32.const 0) (local.get 0x31b)) + (i64.store offset=0x31c align=1 (i32.const 0) (local.get 0x31c)) + (i64.store offset=0x31d align=1 (i32.const 0) (local.get 0x31d)) + (i64.store offset=0x31e align=1 (i32.const 0) (local.get 0x31e)) + (i64.store offset=0x31f align=1 (i32.const 0) (local.get 0x31f)) + (i64.store offset=0x320 align=1 (i32.const 0) (local.get 0x320)) + (i64.store offset=0x321 align=1 (i32.const 0) (local.get 0x321)) + (i64.store offset=0x322 align=1 (i32.const 0) (local.get 0x322)) + (i64.store offset=0x323 align=1 (i32.const 0) (local.get 0x323)) + (i64.store offset=0x324 align=1 (i32.const 0) (local.get 0x324)) + (i64.store offset=0x325 align=1 (i32.const 0) (local.get 0x325)) + (i64.store offset=0x326 align=1 (i32.const 0) (local.get 0x326)) + (i64.store offset=0x327 align=1 (i32.const 0) (local.get 0x327)) + (i64.store offset=0x328 align=1 (i32.const 0) (local.get 0x328)) + (i64.store offset=0x329 align=1 (i32.const 0) (local.get 0x329)) + (i64.store offset=0x32a align=1 (i32.const 0) (local.get 0x32a)) + (i64.store offset=0x32b align=1 (i32.const 0) (local.get 0x32b)) + (i64.store offset=0x32c align=1 (i32.const 0) (local.get 0x32c)) + (i64.store offset=0x32d align=1 (i32.const 0) (local.get 0x32d)) + (i64.store offset=0x32e align=1 (i32.const 0) (local.get 0x32e)) + (i64.store offset=0x32f align=1 (i32.const 0) (local.get 0x32f)) + (i64.store offset=0x330 align=1 (i32.const 0) (local.get 0x330)) + (i64.store offset=0x331 align=1 (i32.const 0) (local.get 0x331)) + (i64.store offset=0x332 align=1 (i32.const 0) (local.get 0x332)) + (i64.store offset=0x333 align=1 (i32.const 0) (local.get 0x333)) + (i64.store offset=0x334 align=1 (i32.const 0) (local.get 0x334)) + (i64.store offset=0x335 align=1 (i32.const 0) (local.get 0x335)) + (i64.store offset=0x336 align=1 (i32.const 0) (local.get 0x336)) + (i64.store offset=0x337 align=1 (i32.const 0) (local.get 0x337)) + (i64.store offset=0x338 align=1 (i32.const 0) (local.get 0x338)) + (i64.store offset=0x339 align=1 (i32.const 0) (local.get 0x339)) + (i64.store offset=0x33a align=1 (i32.const 0) (local.get 0x33a)) + (i64.store offset=0x33b align=1 (i32.const 0) (local.get 0x33b)) + (i64.store offset=0x33c align=1 (i32.const 0) (local.get 0x33c)) + (i64.store offset=0x33d align=1 (i32.const 0) (local.get 0x33d)) + (i64.store offset=0x33e align=1 (i32.const 0) (local.get 0x33e)) + (i64.store offset=0x33f align=1 (i32.const 0) (local.get 0x33f)) + (i64.store offset=0x340 align=1 (i32.const 0) (local.get 0x340)) + (i64.store offset=0x341 align=1 (i32.const 0) (local.get 0x341)) + (i64.store offset=0x342 align=1 (i32.const 0) (local.get 0x342)) + (i64.store offset=0x343 align=1 (i32.const 0) (local.get 0x343)) + (i64.store offset=0x344 align=1 (i32.const 0) (local.get 0x344)) + (i64.store offset=0x345 align=1 (i32.const 0) (local.get 0x345)) + (i64.store offset=0x346 align=1 (i32.const 0) (local.get 0x346)) + (i64.store offset=0x347 align=1 (i32.const 0) (local.get 0x347)) + (i64.store offset=0x348 align=1 (i32.const 0) (local.get 0x348)) + (i64.store offset=0x349 align=1 (i32.const 0) (local.get 0x349)) + (i64.store offset=0x34a align=1 (i32.const 0) (local.get 0x34a)) + (i64.store offset=0x34b align=1 (i32.const 0) (local.get 0x34b)) + (i64.store offset=0x34c align=1 (i32.const 0) (local.get 0x34c)) + (i64.store offset=0x34d align=1 (i32.const 0) (local.get 0x34d)) + (i64.store offset=0x34e align=1 (i32.const 0) (local.get 0x34e)) + (i64.store offset=0x34f align=1 (i32.const 0) (local.get 0x34f)) + (i64.store offset=0x350 align=1 (i32.const 0) (local.get 0x350)) + (i64.store offset=0x351 align=1 (i32.const 0) (local.get 0x351)) + (i64.store offset=0x352 align=1 (i32.const 0) (local.get 0x352)) + (i64.store offset=0x353 align=1 (i32.const 0) (local.get 0x353)) + (i64.store offset=0x354 align=1 (i32.const 0) (local.get 0x354)) + (i64.store offset=0x355 align=1 (i32.const 0) (local.get 0x355)) + (i64.store offset=0x356 align=1 (i32.const 0) (local.get 0x356)) + (i64.store offset=0x357 align=1 (i32.const 0) (local.get 0x357)) + (i64.store offset=0x358 align=1 (i32.const 0) (local.get 0x358)) + (i64.store offset=0x359 align=1 (i32.const 0) (local.get 0x359)) + (i64.store offset=0x35a align=1 (i32.const 0) (local.get 0x35a)) + (i64.store offset=0x35b align=1 (i32.const 0) (local.get 0x35b)) + (i64.store offset=0x35c align=1 (i32.const 0) (local.get 0x35c)) + (i64.store offset=0x35d align=1 (i32.const 0) (local.get 0x35d)) + (i64.store offset=0x35e align=1 (i32.const 0) (local.get 0x35e)) + (i64.store offset=0x35f align=1 (i32.const 0) (local.get 0x35f)) + (i64.store offset=0x360 align=1 (i32.const 0) (local.get 0x360)) + (i64.store offset=0x361 align=1 (i32.const 0) (local.get 0x361)) + (i64.store offset=0x362 align=1 (i32.const 0) (local.get 0x362)) + (i64.store offset=0x363 align=1 (i32.const 0) (local.get 0x363)) + (i64.store offset=0x364 align=1 (i32.const 0) (local.get 0x364)) + (i64.store offset=0x365 align=1 (i32.const 0) (local.get 0x365)) + (i64.store offset=0x366 align=1 (i32.const 0) (local.get 0x366)) + (i64.store offset=0x367 align=1 (i32.const 0) (local.get 0x367)) + (i64.store offset=0x368 align=1 (i32.const 0) (local.get 0x368)) + (i64.store offset=0x369 align=1 (i32.const 0) (local.get 0x369)) + (i64.store offset=0x36a align=1 (i32.const 0) (local.get 0x36a)) + (i64.store offset=0x36b align=1 (i32.const 0) (local.get 0x36b)) + (i64.store offset=0x36c align=1 (i32.const 0) (local.get 0x36c)) + (i64.store offset=0x36d align=1 (i32.const 0) (local.get 0x36d)) + (i64.store offset=0x36e align=1 (i32.const 0) (local.get 0x36e)) + (i64.store offset=0x36f align=1 (i32.const 0) (local.get 0x36f)) + (i64.store offset=0x370 align=1 (i32.const 0) (local.get 0x370)) + (i64.store offset=0x371 align=1 (i32.const 0) (local.get 0x371)) + (i64.store offset=0x372 align=1 (i32.const 0) (local.get 0x372)) + (i64.store offset=0x373 align=1 (i32.const 0) (local.get 0x373)) + (i64.store offset=0x374 align=1 (i32.const 0) (local.get 0x374)) + (i64.store offset=0x375 align=1 (i32.const 0) (local.get 0x375)) + (i64.store offset=0x376 align=1 (i32.const 0) (local.get 0x376)) + (i64.store offset=0x377 align=1 (i32.const 0) (local.get 0x377)) + (i64.store offset=0x378 align=1 (i32.const 0) (local.get 0x378)) + (i64.store offset=0x379 align=1 (i32.const 0) (local.get 0x379)) + (i64.store offset=0x37a align=1 (i32.const 0) (local.get 0x37a)) + (i64.store offset=0x37b align=1 (i32.const 0) (local.get 0x37b)) + (i64.store offset=0x37c align=1 (i32.const 0) (local.get 0x37c)) + (i64.store offset=0x37d align=1 (i32.const 0) (local.get 0x37d)) + (i64.store offset=0x37e align=1 (i32.const 0) (local.get 0x37e)) + (i64.store offset=0x37f align=1 (i32.const 0) (local.get 0x37f)) + (i64.store offset=0x380 align=1 (i32.const 0) (local.get 0x380)) + (i64.store offset=0x381 align=1 (i32.const 0) (local.get 0x381)) + (i64.store offset=0x382 align=1 (i32.const 0) (local.get 0x382)) + (i64.store offset=0x383 align=1 (i32.const 0) (local.get 0x383)) + (i64.store offset=0x384 align=1 (i32.const 0) (local.get 0x384)) + (i64.store offset=0x385 align=1 (i32.const 0) (local.get 0x385)) + (i64.store offset=0x386 align=1 (i32.const 0) (local.get 0x386)) + (i64.store offset=0x387 align=1 (i32.const 0) (local.get 0x387)) + (i64.store offset=0x388 align=1 (i32.const 0) (local.get 0x388)) + (i64.store offset=0x389 align=1 (i32.const 0) (local.get 0x389)) + (i64.store offset=0x38a align=1 (i32.const 0) (local.get 0x38a)) + (i64.store offset=0x38b align=1 (i32.const 0) (local.get 0x38b)) + (i64.store offset=0x38c align=1 (i32.const 0) (local.get 0x38c)) + (i64.store offset=0x38d align=1 (i32.const 0) (local.get 0x38d)) + (i64.store offset=0x38e align=1 (i32.const 0) (local.get 0x38e)) + (i64.store offset=0x38f align=1 (i32.const 0) (local.get 0x38f)) + (i64.store offset=0x390 align=1 (i32.const 0) (local.get 0x390)) + (i64.store offset=0x391 align=1 (i32.const 0) (local.get 0x391)) + (i64.store offset=0x392 align=1 (i32.const 0) (local.get 0x392)) + (i64.store offset=0x393 align=1 (i32.const 0) (local.get 0x393)) + (i64.store offset=0x394 align=1 (i32.const 0) (local.get 0x394)) + (i64.store offset=0x395 align=1 (i32.const 0) (local.get 0x395)) + (i64.store offset=0x396 align=1 (i32.const 0) (local.get 0x396)) + (i64.store offset=0x397 align=1 (i32.const 0) (local.get 0x397)) + (i64.store offset=0x398 align=1 (i32.const 0) (local.get 0x398)) + (i64.store offset=0x399 align=1 (i32.const 0) (local.get 0x399)) + (i64.store offset=0x39a align=1 (i32.const 0) (local.get 0x39a)) + (i64.store offset=0x39b align=1 (i32.const 0) (local.get 0x39b)) + (i64.store offset=0x39c align=1 (i32.const 0) (local.get 0x39c)) + (i64.store offset=0x39d align=1 (i32.const 0) (local.get 0x39d)) + (i64.store offset=0x39e align=1 (i32.const 0) (local.get 0x39e)) + (i64.store offset=0x39f align=1 (i32.const 0) (local.get 0x39f)) + (i64.store offset=0x3a0 align=1 (i32.const 0) (local.get 0x3a0)) + (i64.store offset=0x3a1 align=1 (i32.const 0) (local.get 0x3a1)) + (i64.store offset=0x3a2 align=1 (i32.const 0) (local.get 0x3a2)) + (i64.store offset=0x3a3 align=1 (i32.const 0) (local.get 0x3a3)) + (i64.store offset=0x3a4 align=1 (i32.const 0) (local.get 0x3a4)) + (i64.store offset=0x3a5 align=1 (i32.const 0) (local.get 0x3a5)) + (i64.store offset=0x3a6 align=1 (i32.const 0) (local.get 0x3a6)) + (i64.store offset=0x3a7 align=1 (i32.const 0) (local.get 0x3a7)) + (i64.store offset=0x3a8 align=1 (i32.const 0) (local.get 0x3a8)) + (i64.store offset=0x3a9 align=1 (i32.const 0) (local.get 0x3a9)) + (i64.store offset=0x3aa align=1 (i32.const 0) (local.get 0x3aa)) + (i64.store offset=0x3ab align=1 (i32.const 0) (local.get 0x3ab)) + (i64.store offset=0x3ac align=1 (i32.const 0) (local.get 0x3ac)) + (i64.store offset=0x3ad align=1 (i32.const 0) (local.get 0x3ad)) + (i64.store offset=0x3ae align=1 (i32.const 0) (local.get 0x3ae)) + (i64.store offset=0x3af align=1 (i32.const 0) (local.get 0x3af)) + (i64.store offset=0x3b0 align=1 (i32.const 0) (local.get 0x3b0)) + (i64.store offset=0x3b1 align=1 (i32.const 0) (local.get 0x3b1)) + (i64.store offset=0x3b2 align=1 (i32.const 0) (local.get 0x3b2)) + (i64.store offset=0x3b3 align=1 (i32.const 0) (local.get 0x3b3)) + (i64.store offset=0x3b4 align=1 (i32.const 0) (local.get 0x3b4)) + (i64.store offset=0x3b5 align=1 (i32.const 0) (local.get 0x3b5)) + (i64.store offset=0x3b6 align=1 (i32.const 0) (local.get 0x3b6)) + (i64.store offset=0x3b7 align=1 (i32.const 0) (local.get 0x3b7)) + (i64.store offset=0x3b8 align=1 (i32.const 0) (local.get 0x3b8)) + (i64.store offset=0x3b9 align=1 (i32.const 0) (local.get 0x3b9)) + (i64.store offset=0x3ba align=1 (i32.const 0) (local.get 0x3ba)) + (i64.store offset=0x3bb align=1 (i32.const 0) (local.get 0x3bb)) + (i64.store offset=0x3bc align=1 (i32.const 0) (local.get 0x3bc)) + (i64.store offset=0x3bd align=1 (i32.const 0) (local.get 0x3bd)) + (i64.store offset=0x3be align=1 (i32.const 0) (local.get 0x3be)) + (i64.store offset=0x3bf align=1 (i32.const 0) (local.get 0x3bf)) + (i64.store offset=0x3c0 align=1 (i32.const 0) (local.get 0x3c0)) + (i64.store offset=0x3c1 align=1 (i32.const 0) (local.get 0x3c1)) + (i64.store offset=0x3c2 align=1 (i32.const 0) (local.get 0x3c2)) + (i64.store offset=0x3c3 align=1 (i32.const 0) (local.get 0x3c3)) + (i64.store offset=0x3c4 align=1 (i32.const 0) (local.get 0x3c4)) + (i64.store offset=0x3c5 align=1 (i32.const 0) (local.get 0x3c5)) + (i64.store offset=0x3c6 align=1 (i32.const 0) (local.get 0x3c6)) + (i64.store offset=0x3c7 align=1 (i32.const 0) (local.get 0x3c7)) + (i64.store offset=0x3c8 align=1 (i32.const 0) (local.get 0x3c8)) + (i64.store offset=0x3c9 align=1 (i32.const 0) (local.get 0x3c9)) + (i64.store offset=0x3ca align=1 (i32.const 0) (local.get 0x3ca)) + (i64.store offset=0x3cb align=1 (i32.const 0) (local.get 0x3cb)) + (i64.store offset=0x3cc align=1 (i32.const 0) (local.get 0x3cc)) + (i64.store offset=0x3cd align=1 (i32.const 0) (local.get 0x3cd)) + (i64.store offset=0x3ce align=1 (i32.const 0) (local.get 0x3ce)) + (i64.store offset=0x3cf align=1 (i32.const 0) (local.get 0x3cf)) + (i64.store offset=0x3d0 align=1 (i32.const 0) (local.get 0x3d0)) + (i64.store offset=0x3d1 align=1 (i32.const 0) (local.get 0x3d1)) + (i64.store offset=0x3d2 align=1 (i32.const 0) (local.get 0x3d2)) + (i64.store offset=0x3d3 align=1 (i32.const 0) (local.get 0x3d3)) + (i64.store offset=0x3d4 align=1 (i32.const 0) (local.get 0x3d4)) + (i64.store offset=0x3d5 align=1 (i32.const 0) (local.get 0x3d5)) + (i64.store offset=0x3d6 align=1 (i32.const 0) (local.get 0x3d6)) + (i64.store offset=0x3d7 align=1 (i32.const 0) (local.get 0x3d7)) + (i64.store offset=0x3d8 align=1 (i32.const 0) (local.get 0x3d8)) + (i64.store offset=0x3d9 align=1 (i32.const 0) (local.get 0x3d9)) + (i64.store offset=0x3da align=1 (i32.const 0) (local.get 0x3da)) + (i64.store offset=0x3db align=1 (i32.const 0) (local.get 0x3db)) + (i64.store offset=0x3dc align=1 (i32.const 0) (local.get 0x3dc)) + (i64.store offset=0x3dd align=1 (i32.const 0) (local.get 0x3dd)) + (i64.store offset=0x3de align=1 (i32.const 0) (local.get 0x3de)) + (i64.store offset=0x3df align=1 (i32.const 0) (local.get 0x3df)) + (i64.store offset=0x3e0 align=1 (i32.const 0) (local.get 0x3e0)) + (i64.store offset=0x3e1 align=1 (i32.const 0) (local.get 0x3e1)) + (i64.store offset=0x3e2 align=1 (i32.const 0) (local.get 0x3e2)) + (i64.store offset=0x3e3 align=1 (i32.const 0) (local.get 0x3e3)) + (i64.store offset=0x3e4 align=1 (i32.const 0) (local.get 0x3e4)) + (i64.store offset=0x3e5 align=1 (i32.const 0) (local.get 0x3e5)) + (i64.store offset=0x3e6 align=1 (i32.const 0) (local.get 0x3e6)) + (i64.store offset=0x3e7 align=1 (i32.const 0) (local.get 0x3e7)) + (i64.store offset=0x3e8 align=1 (i32.const 0) (local.get 0x3e8)) + (i64.store offset=0x3e9 align=1 (i32.const 0) (local.get 0x3e9)) + (i64.store offset=0x3ea align=1 (i32.const 0) (local.get 0x3ea)) + (i64.store offset=0x3eb align=1 (i32.const 0) (local.get 0x3eb)) + (i64.store offset=0x3ec align=1 (i32.const 0) (local.get 0x3ec)) + (i64.store offset=0x3ed align=1 (i32.const 0) (local.get 0x3ed)) + (i64.store offset=0x3ee align=1 (i32.const 0) (local.get 0x3ee)) + (i64.store offset=0x3ef align=1 (i32.const 0) (local.get 0x3ef)) + (i64.store offset=0x3f0 align=1 (i32.const 0) (local.get 0x3f0)) + (i64.store offset=0x3f1 align=1 (i32.const 0) (local.get 0x3f1)) + (i64.store offset=0x3f2 align=1 (i32.const 0) (local.get 0x3f2)) + (i64.store offset=0x3f3 align=1 (i32.const 0) (local.get 0x3f3)) + (i64.store offset=0x3f4 align=1 (i32.const 0) (local.get 0x3f4)) + (i64.store offset=0x3f5 align=1 (i32.const 0) (local.get 0x3f5)) + (i64.store offset=0x3f6 align=1 (i32.const 0) (local.get 0x3f6)) + (i64.store offset=0x3f7 align=1 (i32.const 0) (local.get 0x3f7)) + (i64.store offset=0x3f8 align=1 (i32.const 0) (local.get 0x3f8)) + (i64.store offset=0x3f9 align=1 (i32.const 0) (local.get 0x3f9)) + (i64.store offset=0x3fa align=1 (i32.const 0) (local.get 0x3fa)) + (i64.store offset=0x3fb align=1 (i32.const 0) (local.get 0x3fb)) + (i64.store offset=0x3fc align=1 (i32.const 0) (local.get 0x3fc)) + (i64.store offset=0x3fd align=1 (i32.const 0) (local.get 0x3fd)) + (i64.store offset=0x3fe align=1 (i32.const 0) (local.get 0x3fe)) + (i64.store offset=0x3ff align=1 (i32.const 0) (local.get 0x3ff)) + (i64.store offset=0x400 align=1 (i32.const 0) (local.get 0x400)) + (i64.store offset=0x401 align=1 (i32.const 0) (local.get 0x401)) + (i64.store offset=0x402 align=1 (i32.const 0) (local.get 0x402)) + (i64.store offset=0x403 align=1 (i32.const 0) (local.get 0x403)) + (i64.store offset=0x404 align=1 (i32.const 0) (local.get 0x404)) + (i64.store offset=0x405 align=1 (i32.const 0) (local.get 0x405)) + (i64.store offset=0x406 align=1 (i32.const 0) (local.get 0x406)) + (i64.store offset=0x407 align=1 (i32.const 0) (local.get 0x407)) + (i64.store offset=0x408 align=1 (i32.const 0) (local.get 0x408)) + (i64.store offset=0x409 align=1 (i32.const 0) (local.get 0x409)) + (i64.store offset=0x40a align=1 (i32.const 0) (local.get 0x40a)) + (i64.store offset=0x40b align=1 (i32.const 0) (local.get 0x40b)) + (i64.store offset=0x40c align=1 (i32.const 0) (local.get 0x40c)) + (i64.store offset=0x40d align=1 (i32.const 0) (local.get 0x40d)) + (i64.store offset=0x40e align=1 (i32.const 0) (local.get 0x40e)) + (i64.store offset=0x40f align=1 (i32.const 0) (local.get 0x40f)) + (i64.store offset=0x410 align=1 (i32.const 0) (local.get 0x410)) + (i64.store offset=0x411 align=1 (i32.const 0) (local.get 0x411)) + (i64.store offset=0x412 align=1 (i32.const 0) (local.get 0x412)) + (i64.store offset=0x413 align=1 (i32.const 0) (local.get 0x413)) + (i64.store offset=0x414 align=1 (i32.const 0) (local.get 0x414)) + (i64.store offset=0x415 align=1 (i32.const 0) (local.get 0x415)) + (i64.store offset=0x416 align=1 (i32.const 0) (local.get 0x416)) + (i64.store offset=0x417 align=1 (i32.const 0) (local.get 0x417)) + (i64.store offset=0x418 align=1 (i32.const 0) (local.get 0x418)) + (i64.store offset=0x419 align=1 (i32.const 0) (local.get 0x419)) + (i64.store offset=0x41a align=1 (i32.const 0) (local.get 0x41a)) + (i64.store offset=0x41b align=1 (i32.const 0) (local.get 0x41b)) + (i64.store offset=0x41c align=1 (i32.const 0) (local.get 0x41c)) + (i64.store offset=0x41d align=1 (i32.const 0) (local.get 0x41d)) + (i64.store offset=0x41e align=1 (i32.const 0) (local.get 0x41e)) + (i64.store offset=0x41f align=1 (i32.const 0) (local.get 0x41f)) + ) +)`); + +// ./test/core/skip-stack-guard-page.wast:2275 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [0]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2276 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [100]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2277 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [200]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2278 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [300]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2279 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [400]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2280 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [500]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2281 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [600]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2282 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [700]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2283 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [800]), `call stack exhausted`); + +// ./test/core/skip-stack-guard-page.wast:2284 +assert_exhaustion(() => invoke($0, `test-guard-page-skip`, [900]), `call stack exhausted`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/stack.wast.js b/js/src/jit-test/tests/wasm/spec/spec/stack.wast.js new file mode 100644 index 0000000000..306a613cf8 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/stack.wast.js @@ -0,0 +1,263 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/stack.wast + +// ./test/core/stack.wast:1 +let $0 = instantiate(`(module + (func (export "fac-expr") (param $$n i64) (result i64) + (local $$i i64) + (local $$res i64) + (local.set $$i (local.get $$n)) + (local.set $$res (i64.const 1)) + (block $$done + (loop $$loop + (if + (i64.eq (local.get $$i) (i64.const 0)) + (then (br $$done)) + (else + (local.set $$res (i64.mul (local.get $$i) (local.get $$res))) + (local.set $$i (i64.sub (local.get $$i) (i64.const 1))) + ) + ) + (br $$loop) + ) + ) + (local.get $$res) + ) + + (func (export "fac-stack") (param $$n i64) (result i64) + (local $$i i64) + (local $$res i64) + (local.get $$n) + (local.set $$i) + (i64.const 1) + (local.set $$res) + (block $$done + (loop $$loop + (local.get $$i) + (i64.const 0) + (i64.eq) + (if + (then (br $$done)) + (else + (local.get $$i) + (local.get $$res) + (i64.mul) + (local.set $$res) + (local.get $$i) + (i64.const 1) + (i64.sub) + (local.set $$i) + ) + ) + (br $$loop) + ) + ) + (local.get $$res) + ) + + (func (export "fac-stack-raw") (param $$n i64) (result i64) + (local $$i i64) + (local $$res i64) + local.get $$n + local.set $$i + i64.const 1 + local.set $$res + block $$done + loop $$loop + local.get $$i + i64.const 0 + i64.eq + if $$body + br $$done + else $$body + local.get $$i + local.get $$res + i64.mul + local.set $$res + local.get $$i + i64.const 1 + i64.sub + local.set $$i + end $$body + br $$loop + end $$loop + end $$done + local.get $$res + ) + + (func (export "fac-mixed") (param $$n i64) (result i64) + (local $$i i64) + (local $$res i64) + (local.set $$i (local.get $$n)) + (local.set $$res (i64.const 1)) + (block $$done + (loop $$loop + (i64.eq (local.get $$i) (i64.const 0)) + (if + (then (br $$done)) + (else + (i64.mul (local.get $$i) (local.get $$res)) + (local.set $$res) + (i64.sub (local.get $$i) (i64.const 1)) + (local.set $$i) + ) + ) + (br $$loop) + ) + ) + (local.get $$res) + ) + + (func (export "fac-mixed-raw") (param $$n i64) (result i64) + (local $$i i64) + (local $$res i64) + (local.set $$i (local.get $$n)) + (local.set $$res (i64.const 1)) + block $$done + loop $$loop + (i64.eq (local.get $$i) (i64.const 0)) + if + br $$done + else + (i64.mul (local.get $$i) (local.get $$res)) + local.set $$res + (i64.sub (local.get $$i) (i64.const 1)) + local.set $$i + end + br $$loop + end + end + local.get $$res + ) + + (global $$temp (mut i32) (i32.const 0)) + (func $$add_one_to_global (result i32) + (local i32) + (global.set $$temp (i32.add (i32.const 1) (global.get $$temp))) + (global.get $$temp) + ) + (func $$add_one_to_global_and_drop + (drop (call $$add_one_to_global)) + ) + (func (export "not-quite-a-tree") (result i32) + call $$add_one_to_global + call $$add_one_to_global + call $$add_one_to_global_and_drop + i32.add + ) +)`); + +// ./test/core/stack.wast:146 +assert_return(() => invoke($0, `fac-expr`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/stack.wast:147 +assert_return(() => invoke($0, `fac-stack`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/stack.wast:148 +assert_return(() => invoke($0, `fac-mixed`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/stack.wast:150 +assert_return(() => invoke($0, `not-quite-a-tree`, []), [value("i32", 3)]); + +// ./test/core/stack.wast:151 +assert_return(() => invoke($0, `not-quite-a-tree`, []), [value("i32", 9)]); + +// ./test/core/stack.wast:156 +let $1 = instantiate(`(module + (type $$proc (func)) + (table 1 funcref) + + (func + (block i32.const 0 call_indirect) + (loop i32.const 0 call_indirect) + (if (i32.const 0) (then i32.const 0 call_indirect)) + (if (i32.const 0) + (then i32.const 0 call_indirect) + (else i32.const 0 call_indirect) + ) + (block i32.const 0 call_indirect (type $$proc)) + (loop i32.const 0 call_indirect (type $$proc)) + (if (i32.const 0) (then i32.const 0 call_indirect (type $$proc))) + (if (i32.const 0) + (then i32.const 0 call_indirect (type $$proc)) + (else i32.const 0 call_indirect (type $$proc)) + ) + (block i32.const 0 i32.const 0 call_indirect (param i32)) + (loop i32.const 0 i32.const 0 call_indirect (param i32)) + (if (i32.const 0) (then i32.const 0 i32.const 0 call_indirect (param i32))) + (if (i32.const 0) + (then i32.const 0 i32.const 0 call_indirect (param i32)) + (else i32.const 0 i32.const 0 call_indirect (param i32)) + ) + (block (result i32) i32.const 0 call_indirect (result i32)) (drop) + (loop (result i32) i32.const 0 call_indirect (result i32)) (drop) + (if (result i32) (i32.const 0) + (then i32.const 0 call_indirect (result i32)) + (else i32.const 0 call_indirect (result i32)) + ) (drop) + (block i32.const 0 call_indirect (type $$proc) (param) (result)) + (loop i32.const 0 call_indirect (type $$proc) (param) (result)) + (if (i32.const 0) + (then i32.const 0 call_indirect (type $$proc) (param) (result)) + ) + (if (i32.const 0) + (then i32.const 0 call_indirect (type $$proc) (param) (param) (result)) + (else i32.const 0 call_indirect (type $$proc) (param) (result) (result)) + ) + + block i32.const 0 call_indirect end + loop i32.const 0 call_indirect end + i32.const 0 if i32.const 0 call_indirect end + i32.const 0 if i32.const 0 call_indirect else i32.const 0 call_indirect end + block i32.const 0 call_indirect (type $$proc) end + loop i32.const 0 call_indirect (type $$proc) end + i32.const 0 if i32.const 0 call_indirect (type $$proc) end + i32.const 0 + if + i32.const 0 call_indirect (type $$proc) + else + i32.const 0 call_indirect (type $$proc) + end + block i32.const 0 i32.const 0 call_indirect (param i32) end + loop i32.const 0 i32.const 0 call_indirect (param i32) end + i32.const 0 if i32.const 0 i32.const 0 call_indirect (param i32) end + i32.const 0 + if + i32.const 0 i32.const 0 call_indirect (param i32) + else + i32.const 0 i32.const 0 call_indirect (param i32) + end + block (result i32) i32.const 0 call_indirect (result i32) end drop + loop (result i32) i32.const 0 call_indirect (result i32) end drop + i32.const 0 + if (result i32) + i32.const 0 call_indirect (result i32) + else + i32.const 0 call_indirect (result i32) + end drop + block i32.const 0 call_indirect (type $$proc) (param) (result) end + loop i32.const 0 call_indirect (type $$proc) (param) (result) end + i32.const 0 if i32.const 0 call_indirect (type $$proc) (param) (result) end + i32.const 0 + if + i32.const 0 call_indirect (type $$proc) (param) (result) + else + i32.const 0 call_indirect (type $$proc) (param) (param) (result) (result) + end + i32.const 0 call_indirect + ) +)`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/start.wast.js b/js/src/jit-test/tests/wasm/spec/spec/start.wast.js new file mode 100644 index 0000000000..7dee026a84 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/start.wast.js @@ -0,0 +1,150 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/start.wast + +// ./test/core/start.wast:1 +assert_invalid(() => instantiate(`(module (func) (start 1))`), `unknown function`); + +// ./test/core/start.wast:6 +assert_invalid( + () => instantiate(`(module + (func $$main (result i32) (return (i32.const 0))) + (start $$main) + )`), + `start function`, +); + +// ./test/core/start.wast:13 +assert_invalid( + () => instantiate(`(module + (func $$main (param $$a i32)) + (start $$main) + )`), + `start function`, +); + +// ./test/core/start.wast:21 +let $0 = instantiate(`(module + (memory (data "A")) + (func $$inc + (i32.store8 + (i32.const 0) + (i32.add + (i32.load8_u (i32.const 0)) + (i32.const 1) + ) + ) + ) + (func $$get (result i32) + (return (i32.load8_u (i32.const 0))) + ) + (func $$main + (call $$inc) + (call $$inc) + (call $$inc) + ) + + (start $$main) + (export "inc" (func $$inc)) + (export "get" (func $$get)) +)`); + +// ./test/core/start.wast:45 +assert_return(() => invoke($0, `get`, []), [value("i32", 68)]); + +// ./test/core/start.wast:46 +invoke($0, `inc`, []); + +// ./test/core/start.wast:47 +assert_return(() => invoke($0, `get`, []), [value("i32", 69)]); + +// ./test/core/start.wast:48 +invoke($0, `inc`, []); + +// ./test/core/start.wast:49 +assert_return(() => invoke($0, `get`, []), [value("i32", 70)]); + +// ./test/core/start.wast:51 +let $1 = instantiate(`(module + (memory (data "A")) + (func $$inc + (i32.store8 + (i32.const 0) + (i32.add + (i32.load8_u (i32.const 0)) + (i32.const 1) + ) + ) + ) + (func $$get (result i32) + (return (i32.load8_u (i32.const 0))) + ) + (func $$main + (call $$inc) + (call $$inc) + (call $$inc) + ) + (start 2) + (export "inc" (func $$inc)) + (export "get" (func $$get)) +)`); + +// ./test/core/start.wast:74 +assert_return(() => invoke($1, `get`, []), [value("i32", 68)]); + +// ./test/core/start.wast:75 +invoke($1, `inc`, []); + +// ./test/core/start.wast:76 +assert_return(() => invoke($1, `get`, []), [value("i32", 69)]); + +// ./test/core/start.wast:77 +invoke($1, `inc`, []); + +// ./test/core/start.wast:78 +assert_return(() => invoke($1, `get`, []), [value("i32", 70)]); + +// ./test/core/start.wast:80 +let $2 = instantiate(`(module + (func $$print_i32 (import "spectest" "print_i32") (param i32)) + (func $$main (call $$print_i32 (i32.const 1))) + (start 1) +)`); + +// ./test/core/start.wast:86 +let $3 = instantiate(`(module + (func $$print_i32 (import "spectest" "print_i32") (param i32)) + (func $$main (call $$print_i32 (i32.const 2))) + (start $$main) +)`); + +// ./test/core/start.wast:92 +let $4 = instantiate(`(module + (func $$print (import "spectest" "print")) + (start $$print) +)`); + +// ./test/core/start.wast:97 +assert_trap( + () => instantiate(`(module (func $$main (unreachable)) (start $$main))`), + `unreachable`, +); + +// ./test/core/start.wast:102 +assert_malformed( + () => instantiate(`(module (func $$a (unreachable)) (func $$b (unreachable)) (start $$a) (start $$b)) `), + `multiple start sections`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/store.wast.js b/js/src/jit-test/tests/wasm/spec/spec/store.wast.js new file mode 100644 index 0000000000..c11b459ca2 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/store.wast.js @@ -0,0 +1,583 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/store.wast + +// ./test/core/store.wast:3 +let $0 = instantiate(`(module + (memory 1) + + (func (export "as-block-value") + (block (i32.store (i32.const 0) (i32.const 1))) + ) + (func (export "as-loop-value") + (loop (i32.store (i32.const 0) (i32.const 1))) + ) + + (func (export "as-br-value") + (block (br 0 (i32.store (i32.const 0) (i32.const 1)))) + ) + (func (export "as-br_if-value") + (block + (br_if 0 (i32.store (i32.const 0) (i32.const 1)) (i32.const 1)) + ) + ) + (func (export "as-br_if-value-cond") + (block + (br_if 0 (i32.const 6) (i32.store (i32.const 0) (i32.const 1))) + ) + ) + (func (export "as-br_table-value") + (block + (br_table 0 (i32.store (i32.const 0) (i32.const 1)) (i32.const 1)) + ) + ) + + (func (export "as-return-value") + (return (i32.store (i32.const 0) (i32.const 1))) + ) + + (func (export "as-if-then") + (if (i32.const 1) (then (i32.store (i32.const 0) (i32.const 1)))) + ) + (func (export "as-if-else") + (if (i32.const 0) (then) (else (i32.store (i32.const 0) (i32.const 1)))) + ) +)`); + +// ./test/core/store.wast:44 +assert_return(() => invoke($0, `as-block-value`, []), []); + +// ./test/core/store.wast:45 +assert_return(() => invoke($0, `as-loop-value`, []), []); + +// ./test/core/store.wast:47 +assert_return(() => invoke($0, `as-br-value`, []), []); + +// ./test/core/store.wast:48 +assert_return(() => invoke($0, `as-br_if-value`, []), []); + +// ./test/core/store.wast:49 +assert_return(() => invoke($0, `as-br_if-value-cond`, []), []); + +// ./test/core/store.wast:50 +assert_return(() => invoke($0, `as-br_table-value`, []), []); + +// ./test/core/store.wast:52 +assert_return(() => invoke($0, `as-return-value`, []), []); + +// ./test/core/store.wast:54 +assert_return(() => invoke($0, `as-if-then`, []), []); + +// ./test/core/store.wast:55 +assert_return(() => invoke($0, `as-if-else`, []), []); + +// ./test/core/store.wast:57 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (i32.store32 (local.get 0) (i32.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:64 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (i32.store64 (local.get 0) (i64.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:72 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (i64.store64 (local.get 0) (i64.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:80 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (f32.store32 (local.get 0) (f32.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:87 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (f32.store64 (local.get 0) (f64.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:95 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (f64.store32 (local.get 0) (f32.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:102 +assert_malformed( + () => instantiate(`(memory 1) (func (param i32) (f64.store64 (local.get 0) (f64.const 0))) `), + `unknown operator`, +); + +// ./test/core/store.wast:111 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i32) (result i32) (i32.store (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:115 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i64) (result i64) (i64.store (i32.const 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:119 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param f32) (result f32) (f32.store (i32.const 0) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:123 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param f64) (result f64) (f64.store (i32.const 0) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:127 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i32) (result i32) (i32.store8 (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:131 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i32) (result i32) (i32.store16 (i32.const 0) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:135 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i64) (result i64) (i64.store8 (i32.const 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:139 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i64) (result i64) (i64.store16 (i32.const 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:143 +assert_invalid( + () => instantiate(`(module (memory 1) (func (param i64) (result i64) (i64.store32 (i32.const 0) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/store.wast:149 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty + (i32.store) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:158 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty + (i32.const 0) (i32.store) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:167 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-block + (i32.const 0) (i32.const 0) + (block (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:177 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-block + (i32.const 0) + (block (i32.const 0) (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:187 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-loop + (i32.const 0) (i32.const 0) + (loop (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:197 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-loop + (i32.const 0) + (loop (i32.const 0) (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:207 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-then + (i32.const 0) (i32.const 0) + (if (then (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:217 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-then + (i32.const 0) + (if (then (i32.const 0) (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:227 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:237 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-else + (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.const 0) (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:247 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-br + (i32.const 0) (i32.const 0) + (block (br 0 (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:257 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-br + (i32.const 0) + (block (br 0 (i32.const 0) (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:267 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-br_if + (i32.const 0) (i32.const 0) + (block (br_if 0 (i32.store) (i32.const 1)) ) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:277 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-br_if + (i32.const 0) + (block (br_if 0 (i32.const 0) (i32.store) (i32.const 1)) ) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:287 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-br_table + (i32.const 0) (i32.const 0) + (block (br_table 0 (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:297 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-br_table + (i32.const 0) + (block (br_table 0 (i32.const 0) (i32.store))) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:307 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-return + (return (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:316 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-return + (return (i32.const 0) (i32.store)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:325 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-select + (select (i32.store) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:334 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-select + (select (i32.const 0) (i32.store) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:343 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-address-empty-in-call + (call 1 (i32.store)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:353 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$type-value-empty-in-call + (call 1 (i32.const 0) (i32.store)) + ) + (func (param i32) (result i32) (local.get 0)) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:363 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-address-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.store) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:379 +assert_invalid( + () => instantiate(`(module + (memory 1) + (func $$f (param i32) (result i32) (local.get 0)) + (type $$sig (func (param i32) (result i32))) + (table funcref (elem $$f)) + (func $$type-value-empty-in-call_indirect + (block (result i32) + (call_indirect (type $$sig) + (i32.const 0) (i32.store) (i32.const 0) + ) + ) + ) + )`), + `type mismatch`, +); + +// ./test/core/store.wast:399 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store (f32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:400 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store8 (f32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:401 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store16 (f32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:402 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store (f32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:403 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store8 (f32.const 0) (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:404 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store16 (f32.const 0) (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:405 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store32 (f32.const 0) (i64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:406 +assert_invalid( + () => instantiate(`(module (memory 1) (func (f32.store (f32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:407 +assert_invalid( + () => instantiate(`(module (memory 1) (func (f64.store (f32.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:409 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:410 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store8 (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:411 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i32.store16 (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:412 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store (i32.const 0) (f32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:413 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store8 (i32.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:414 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store16 (i32.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:415 +assert_invalid( + () => instantiate(`(module (memory 1) (func (i64.store32 (i32.const 0) (f64.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:416 +assert_invalid( + () => instantiate(`(module (memory 1) (func (f32.store (i32.const 0) (i32.const 0))))`), + `type mismatch`, +); + +// ./test/core/store.wast:417 +assert_invalid( + () => instantiate(`(module (memory 1) (func (f64.store (i32.const 0) (i64.const 0))))`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/switch.wast.js b/js/src/jit-test/tests/wasm/spec/spec/switch.wast.js new file mode 100644 index 0000000000..403b2c3762 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/switch.wast.js @@ -0,0 +1,220 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/switch.wast + +// ./test/core/switch.wast:1 +let $0 = instantiate(`(module + ;; Statement switch + (func (export "stmt") (param $$i i32) (result i32) + (local $$j i32) + (local.set $$j (i32.const 100)) + (block $$switch + (block $$7 + (block $$default + (block $$6 + (block $$5 + (block $$4 + (block $$3 + (block $$2 + (block $$1 + (block $$0 + (br_table $$0 $$1 $$2 $$3 $$4 $$5 $$6 $$7 $$default + (local.get $$i) + ) + ) ;; 0 + (return (local.get $$i)) + ) ;; 1 + (nop) + ;; fallthrough + ) ;; 2 + ;; fallthrough + ) ;; 3 + (local.set $$j (i32.sub (i32.const 0) (local.get $$i))) + (br $$switch) + ) ;; 4 + (br $$switch) + ) ;; 5 + (local.set $$j (i32.const 101)) + (br $$switch) + ) ;; 6 + (local.set $$j (i32.const 101)) + ;; fallthrough + ) ;; default + (local.set $$j (i32.const 102)) + ) ;; 7 + ;; fallthrough + ) + (return (local.get $$j)) + ) + + ;; Expression switch + (func (export "expr") (param $$i i64) (result i64) + (local $$j i64) + (local.set $$j (i64.const 100)) + (return + (block $$switch (result i64) + (block $$7 + (block $$default + (block $$4 + (block $$5 + (block $$6 + (block $$3 + (block $$2 + (block $$1 + (block $$0 + (br_table $$0 $$1 $$2 $$3 $$4 $$5 $$6 $$7 $$default + (i32.wrap_i64 (local.get $$i)) + ) + ) ;; 0 + (return (local.get $$i)) + ) ;; 1 + (nop) + ;; fallthrough + ) ;; 2 + ;; fallthrough + ) ;; 3 + (br $$switch (i64.sub (i64.const 0) (local.get $$i))) + ) ;; 6 + (local.set $$j (i64.const 101)) + ;; fallthrough + ) ;; 4 + ;; fallthrough + ) ;; 5 + ;; fallthrough + ) ;; default + (br $$switch (local.get $$j)) + ) ;; 7 + (i64.const -5) + ) + ) + ) + + ;; Argument switch + (func (export "arg") (param $$i i32) (result i32) + (return + (block $$2 (result i32) + (i32.add (i32.const 10) + (block $$1 (result i32) + (i32.add (i32.const 100) + (block $$0 (result i32) + (i32.add (i32.const 1000) + (block $$default (result i32) + (br_table $$0 $$1 $$2 $$default + (i32.mul (i32.const 2) (local.get $$i)) + (i32.and (i32.const 3) (local.get $$i)) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ) + + ;; Corner cases + (func (export "corner") (result i32) + (block + (br_table 0 (i32.const 0)) + ) + (i32.const 1) + ) +)`); + +// ./test/core/switch.wast:120 +assert_return(() => invoke($0, `stmt`, [0]), [value("i32", 0)]); + +// ./test/core/switch.wast:121 +assert_return(() => invoke($0, `stmt`, [1]), [value("i32", -1)]); + +// ./test/core/switch.wast:122 +assert_return(() => invoke($0, `stmt`, [2]), [value("i32", -2)]); + +// ./test/core/switch.wast:123 +assert_return(() => invoke($0, `stmt`, [3]), [value("i32", -3)]); + +// ./test/core/switch.wast:124 +assert_return(() => invoke($0, `stmt`, [4]), [value("i32", 100)]); + +// ./test/core/switch.wast:125 +assert_return(() => invoke($0, `stmt`, [5]), [value("i32", 101)]); + +// ./test/core/switch.wast:126 +assert_return(() => invoke($0, `stmt`, [6]), [value("i32", 102)]); + +// ./test/core/switch.wast:127 +assert_return(() => invoke($0, `stmt`, [7]), [value("i32", 100)]); + +// ./test/core/switch.wast:128 +assert_return(() => invoke($0, `stmt`, [-10]), [value("i32", 102)]); + +// ./test/core/switch.wast:130 +assert_return(() => invoke($0, `expr`, [0n]), [value("i64", 0n)]); + +// ./test/core/switch.wast:131 +assert_return(() => invoke($0, `expr`, [1n]), [value("i64", -1n)]); + +// ./test/core/switch.wast:132 +assert_return(() => invoke($0, `expr`, [2n]), [value("i64", -2n)]); + +// ./test/core/switch.wast:133 +assert_return(() => invoke($0, `expr`, [3n]), [value("i64", -3n)]); + +// ./test/core/switch.wast:134 +assert_return(() => invoke($0, `expr`, [6n]), [value("i64", 101n)]); + +// ./test/core/switch.wast:135 +assert_return(() => invoke($0, `expr`, [7n]), [value("i64", -5n)]); + +// ./test/core/switch.wast:136 +assert_return(() => invoke($0, `expr`, [-10n]), [value("i64", 100n)]); + +// ./test/core/switch.wast:138 +assert_return(() => invoke($0, `arg`, [0]), [value("i32", 110)]); + +// ./test/core/switch.wast:139 +assert_return(() => invoke($0, `arg`, [1]), [value("i32", 12)]); + +// ./test/core/switch.wast:140 +assert_return(() => invoke($0, `arg`, [2]), [value("i32", 4)]); + +// ./test/core/switch.wast:141 +assert_return(() => invoke($0, `arg`, [3]), [value("i32", 1116)]); + +// ./test/core/switch.wast:142 +assert_return(() => invoke($0, `arg`, [4]), [value("i32", 118)]); + +// ./test/core/switch.wast:143 +assert_return(() => invoke($0, `arg`, [5]), [value("i32", 20)]); + +// ./test/core/switch.wast:144 +assert_return(() => invoke($0, `arg`, [6]), [value("i32", 12)]); + +// ./test/core/switch.wast:145 +assert_return(() => invoke($0, `arg`, [7]), [value("i32", 1124)]); + +// ./test/core/switch.wast:146 +assert_return(() => invoke($0, `arg`, [8]), [value("i32", 126)]); + +// ./test/core/switch.wast:148 +assert_return(() => invoke($0, `corner`, []), [value("i32", 1)]); + +// ./test/core/switch.wast:150 +assert_invalid( + () => instantiate(`(module (func (br_table 3 (i32.const 0))))`), + `unknown label`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/table-sub.wast.js b/js/src/jit-test/tests/wasm/spec/spec/table-sub.wast.js new file mode 100644 index 0000000000..81357fa888 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/table-sub.wast.js @@ -0,0 +1,40 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/table-sub.wast + +// ./test/core/table-sub.wast:1 +assert_invalid( + () => instantiate(`(module + (table $$t1 10 funcref) + (table $$t2 10 externref) + (func $$f + (table.copy $$t1 $$t2 (i32.const 0) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table-sub.wast:12 +assert_invalid( + () => instantiate(`(module + (table $$t 10 funcref) + (elem $$el externref) + (func $$f + (table.init $$t $$el (i32.const 0) (i32.const 1) (i32.const 2)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/table_copy.wast.js b/js/src/jit-test/tests/wasm/spec/spec/table_copy.wast.js new file mode 100644 index 0000000000..d78f54181c --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/table_copy.wast.js @@ -0,0 +1,6436 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/table_copy.wast + +// ./test/core/table_copy.wast:6 +let $0 = instantiate(`(module + (func (export "ef0") (result i32) (i32.const 0)) + (func (export "ef1") (result i32) (i32.const 1)) + (func (export "ef2") (result i32) (i32.const 2)) + (func (export "ef3") (result i32) (i32.const 3)) + (func (export "ef4") (result i32) (i32.const 4)) +)`); + +// ./test/core/table_copy.wast:13 +register($0, `a`); + +// ./test/core/table_copy.wast:15 +let $1 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (nop)) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:45 +invoke($1, `test`, []); + +// ./test/core/table_copy.wast:46 +assert_trap(() => invoke($1, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:47 +assert_trap(() => invoke($1, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:48 +assert_return(() => invoke($1, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:49 +assert_return(() => invoke($1, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:50 +assert_return(() => invoke($1, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:51 +assert_return(() => invoke($1, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:52 +assert_trap(() => invoke($1, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:53 +assert_trap(() => invoke($1, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:54 +assert_trap(() => invoke($1, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:55 +assert_trap(() => invoke($1, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:56 +assert_trap(() => invoke($1, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:57 +assert_trap(() => invoke($1, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:58 +assert_return(() => invoke($1, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:59 +assert_return(() => invoke($1, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:60 +assert_return(() => invoke($1, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:61 +assert_return(() => invoke($1, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:62 +assert_return(() => invoke($1, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:63 +assert_trap(() => invoke($1, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:64 +assert_trap(() => invoke($1, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:65 +assert_trap(() => invoke($1, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:66 +assert_trap(() => invoke($1, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:67 +assert_trap(() => invoke($1, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:68 +assert_trap(() => invoke($1, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:69 +assert_trap(() => invoke($1, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:70 +assert_trap(() => invoke($1, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:71 +assert_trap(() => invoke($1, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:72 +assert_trap(() => invoke($1, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:73 +assert_trap(() => invoke($1, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:74 +assert_trap(() => invoke($1, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:75 +assert_trap(() => invoke($1, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:76 +assert_trap(() => invoke($1, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:77 +assert_trap(() => invoke($1, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:78 +assert_trap(() => invoke($1, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:79 +assert_return(() => invoke($1, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:80 +assert_return(() => invoke($1, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:81 +assert_return(() => invoke($1, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:82 +assert_return(() => invoke($1, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:83 +assert_trap(() => invoke($1, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:84 +assert_trap(() => invoke($1, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:85 +assert_trap(() => invoke($1, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:86 +assert_trap(() => invoke($1, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:87 +assert_return(() => invoke($1, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:88 +assert_return(() => invoke($1, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:89 +assert_return(() => invoke($1, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:90 +assert_return(() => invoke($1, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:91 +assert_return(() => invoke($1, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:92 +assert_trap(() => invoke($1, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:93 +assert_trap(() => invoke($1, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:94 +assert_trap(() => invoke($1, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:95 +assert_trap(() => invoke($1, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:96 +assert_trap(() => invoke($1, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:97 +assert_trap(() => invoke($1, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:98 +assert_trap(() => invoke($1, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:99 +assert_trap(() => invoke($1, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:100 +assert_trap(() => invoke($1, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:101 +assert_trap(() => invoke($1, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:102 +assert_trap(() => invoke($1, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:103 +assert_trap(() => invoke($1, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:104 +assert_trap(() => invoke($1, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:105 +assert_trap(() => invoke($1, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:107 +let $2 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 13) (i32.const 2) (i32.const 3))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:137 +invoke($2, `test`, []); + +// ./test/core/table_copy.wast:138 +assert_trap(() => invoke($2, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:139 +assert_trap(() => invoke($2, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:140 +assert_return(() => invoke($2, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:141 +assert_return(() => invoke($2, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:142 +assert_return(() => invoke($2, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:143 +assert_return(() => invoke($2, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:144 +assert_trap(() => invoke($2, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:145 +assert_trap(() => invoke($2, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:146 +assert_trap(() => invoke($2, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:147 +assert_trap(() => invoke($2, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:148 +assert_trap(() => invoke($2, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:149 +assert_trap(() => invoke($2, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:150 +assert_return(() => invoke($2, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:151 +assert_return(() => invoke($2, `check_t0`, [13]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:152 +assert_return(() => invoke($2, `check_t0`, [14]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:153 +assert_return(() => invoke($2, `check_t0`, [15]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:154 +assert_return(() => invoke($2, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:155 +assert_trap(() => invoke($2, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:156 +assert_trap(() => invoke($2, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:157 +assert_trap(() => invoke($2, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:158 +assert_trap(() => invoke($2, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:159 +assert_trap(() => invoke($2, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:160 +assert_trap(() => invoke($2, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:161 +assert_trap(() => invoke($2, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:162 +assert_trap(() => invoke($2, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:163 +assert_trap(() => invoke($2, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:164 +assert_trap(() => invoke($2, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:165 +assert_trap(() => invoke($2, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:166 +assert_trap(() => invoke($2, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:167 +assert_trap(() => invoke($2, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:168 +assert_trap(() => invoke($2, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:169 +assert_trap(() => invoke($2, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:170 +assert_trap(() => invoke($2, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:171 +assert_return(() => invoke($2, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:172 +assert_return(() => invoke($2, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:173 +assert_return(() => invoke($2, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:174 +assert_return(() => invoke($2, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:175 +assert_trap(() => invoke($2, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:176 +assert_trap(() => invoke($2, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:177 +assert_trap(() => invoke($2, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:178 +assert_trap(() => invoke($2, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:179 +assert_return(() => invoke($2, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:180 +assert_return(() => invoke($2, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:181 +assert_return(() => invoke($2, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:182 +assert_return(() => invoke($2, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:183 +assert_return(() => invoke($2, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:184 +assert_trap(() => invoke($2, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:185 +assert_trap(() => invoke($2, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:186 +assert_trap(() => invoke($2, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:187 +assert_trap(() => invoke($2, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:188 +assert_trap(() => invoke($2, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:189 +assert_trap(() => invoke($2, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:190 +assert_trap(() => invoke($2, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:191 +assert_trap(() => invoke($2, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:192 +assert_trap(() => invoke($2, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:193 +assert_trap(() => invoke($2, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:194 +assert_trap(() => invoke($2, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:195 +assert_trap(() => invoke($2, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:196 +assert_trap(() => invoke($2, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:197 +assert_trap(() => invoke($2, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:199 +let $3 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 25) (i32.const 15) (i32.const 2))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:229 +invoke($3, `test`, []); + +// ./test/core/table_copy.wast:230 +assert_trap(() => invoke($3, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:231 +assert_trap(() => invoke($3, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:232 +assert_return(() => invoke($3, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:233 +assert_return(() => invoke($3, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:234 +assert_return(() => invoke($3, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:235 +assert_return(() => invoke($3, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:236 +assert_trap(() => invoke($3, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:237 +assert_trap(() => invoke($3, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:238 +assert_trap(() => invoke($3, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:239 +assert_trap(() => invoke($3, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:240 +assert_trap(() => invoke($3, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:241 +assert_trap(() => invoke($3, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:242 +assert_return(() => invoke($3, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:243 +assert_return(() => invoke($3, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:244 +assert_return(() => invoke($3, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:245 +assert_return(() => invoke($3, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:246 +assert_return(() => invoke($3, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:247 +assert_trap(() => invoke($3, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:248 +assert_trap(() => invoke($3, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:249 +assert_trap(() => invoke($3, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:250 +assert_trap(() => invoke($3, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:251 +assert_trap(() => invoke($3, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:252 +assert_trap(() => invoke($3, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:253 +assert_trap(() => invoke($3, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:254 +assert_trap(() => invoke($3, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:255 +assert_return(() => invoke($3, `check_t0`, [25]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:256 +assert_return(() => invoke($3, `check_t0`, [26]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:257 +assert_trap(() => invoke($3, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:258 +assert_trap(() => invoke($3, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:259 +assert_trap(() => invoke($3, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:260 +assert_trap(() => invoke($3, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:261 +assert_trap(() => invoke($3, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:262 +assert_trap(() => invoke($3, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:263 +assert_return(() => invoke($3, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:264 +assert_return(() => invoke($3, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:265 +assert_return(() => invoke($3, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:266 +assert_return(() => invoke($3, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:267 +assert_trap(() => invoke($3, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:268 +assert_trap(() => invoke($3, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:269 +assert_trap(() => invoke($3, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:270 +assert_trap(() => invoke($3, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:271 +assert_return(() => invoke($3, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:272 +assert_return(() => invoke($3, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:273 +assert_return(() => invoke($3, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:274 +assert_return(() => invoke($3, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:275 +assert_return(() => invoke($3, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:276 +assert_trap(() => invoke($3, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:277 +assert_trap(() => invoke($3, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:278 +assert_trap(() => invoke($3, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:279 +assert_trap(() => invoke($3, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:280 +assert_trap(() => invoke($3, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:281 +assert_trap(() => invoke($3, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:282 +assert_trap(() => invoke($3, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:283 +assert_trap(() => invoke($3, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:284 +assert_trap(() => invoke($3, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:285 +assert_trap(() => invoke($3, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:286 +assert_trap(() => invoke($3, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:287 +assert_trap(() => invoke($3, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:288 +assert_trap(() => invoke($3, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:289 +assert_trap(() => invoke($3, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:291 +let $4 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 13) (i32.const 25) (i32.const 3))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:321 +invoke($4, `test`, []); + +// ./test/core/table_copy.wast:322 +assert_trap(() => invoke($4, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:323 +assert_trap(() => invoke($4, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:324 +assert_return(() => invoke($4, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:325 +assert_return(() => invoke($4, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:326 +assert_return(() => invoke($4, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:327 +assert_return(() => invoke($4, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:328 +assert_trap(() => invoke($4, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:329 +assert_trap(() => invoke($4, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:330 +assert_trap(() => invoke($4, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:331 +assert_trap(() => invoke($4, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:332 +assert_trap(() => invoke($4, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:333 +assert_trap(() => invoke($4, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:334 +assert_return(() => invoke($4, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:335 +assert_trap(() => invoke($4, `check_t0`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:336 +assert_trap(() => invoke($4, `check_t0`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:337 +assert_trap(() => invoke($4, `check_t0`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:338 +assert_return(() => invoke($4, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:339 +assert_trap(() => invoke($4, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:340 +assert_trap(() => invoke($4, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:341 +assert_trap(() => invoke($4, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:342 +assert_trap(() => invoke($4, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:343 +assert_trap(() => invoke($4, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:344 +assert_trap(() => invoke($4, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:345 +assert_trap(() => invoke($4, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:346 +assert_trap(() => invoke($4, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:347 +assert_trap(() => invoke($4, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:348 +assert_trap(() => invoke($4, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:349 +assert_trap(() => invoke($4, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:350 +assert_trap(() => invoke($4, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:351 +assert_trap(() => invoke($4, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:352 +assert_trap(() => invoke($4, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:353 +assert_trap(() => invoke($4, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:354 +assert_trap(() => invoke($4, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:355 +assert_return(() => invoke($4, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:356 +assert_return(() => invoke($4, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:357 +assert_return(() => invoke($4, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:358 +assert_return(() => invoke($4, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:359 +assert_trap(() => invoke($4, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:360 +assert_trap(() => invoke($4, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:361 +assert_trap(() => invoke($4, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:362 +assert_trap(() => invoke($4, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:363 +assert_return(() => invoke($4, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:364 +assert_return(() => invoke($4, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:365 +assert_return(() => invoke($4, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:366 +assert_return(() => invoke($4, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:367 +assert_return(() => invoke($4, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:368 +assert_trap(() => invoke($4, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:369 +assert_trap(() => invoke($4, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:370 +assert_trap(() => invoke($4, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:371 +assert_trap(() => invoke($4, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:372 +assert_trap(() => invoke($4, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:373 +assert_trap(() => invoke($4, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:374 +assert_trap(() => invoke($4, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:375 +assert_trap(() => invoke($4, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:376 +assert_trap(() => invoke($4, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:377 +assert_trap(() => invoke($4, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:378 +assert_trap(() => invoke($4, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:379 +assert_trap(() => invoke($4, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:380 +assert_trap(() => invoke($4, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:381 +assert_trap(() => invoke($4, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:383 +let $5 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 20) (i32.const 22) (i32.const 4))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:413 +invoke($5, `test`, []); + +// ./test/core/table_copy.wast:414 +assert_trap(() => invoke($5, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:415 +assert_trap(() => invoke($5, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:416 +assert_return(() => invoke($5, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:417 +assert_return(() => invoke($5, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:418 +assert_return(() => invoke($5, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:419 +assert_return(() => invoke($5, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:420 +assert_trap(() => invoke($5, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:421 +assert_trap(() => invoke($5, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:422 +assert_trap(() => invoke($5, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:423 +assert_trap(() => invoke($5, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:424 +assert_trap(() => invoke($5, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:425 +assert_trap(() => invoke($5, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:426 +assert_return(() => invoke($5, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:427 +assert_return(() => invoke($5, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:428 +assert_return(() => invoke($5, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:429 +assert_return(() => invoke($5, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:430 +assert_return(() => invoke($5, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:431 +assert_trap(() => invoke($5, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:432 +assert_trap(() => invoke($5, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:433 +assert_trap(() => invoke($5, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:434 +assert_trap(() => invoke($5, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:435 +assert_trap(() => invoke($5, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:436 +assert_trap(() => invoke($5, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:437 +assert_trap(() => invoke($5, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:438 +assert_trap(() => invoke($5, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:439 +assert_trap(() => invoke($5, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:440 +assert_trap(() => invoke($5, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:441 +assert_trap(() => invoke($5, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:442 +assert_trap(() => invoke($5, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:443 +assert_trap(() => invoke($5, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:444 +assert_trap(() => invoke($5, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:445 +assert_trap(() => invoke($5, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:446 +assert_trap(() => invoke($5, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:447 +assert_return(() => invoke($5, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:448 +assert_return(() => invoke($5, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:449 +assert_return(() => invoke($5, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:450 +assert_return(() => invoke($5, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:451 +assert_trap(() => invoke($5, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:452 +assert_trap(() => invoke($5, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:453 +assert_trap(() => invoke($5, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:454 +assert_trap(() => invoke($5, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:455 +assert_return(() => invoke($5, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:456 +assert_return(() => invoke($5, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:457 +assert_return(() => invoke($5, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:458 +assert_return(() => invoke($5, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:459 +assert_return(() => invoke($5, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:460 +assert_trap(() => invoke($5, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:461 +assert_trap(() => invoke($5, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:462 +assert_trap(() => invoke($5, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:463 +assert_trap(() => invoke($5, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:464 +assert_trap(() => invoke($5, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:465 +assert_trap(() => invoke($5, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:466 +assert_trap(() => invoke($5, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:467 +assert_trap(() => invoke($5, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:468 +assert_trap(() => invoke($5, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:469 +assert_trap(() => invoke($5, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:470 +assert_trap(() => invoke($5, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:471 +assert_trap(() => invoke($5, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:472 +assert_trap(() => invoke($5, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:473 +assert_trap(() => invoke($5, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:475 +let $6 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 25) (i32.const 1) (i32.const 3))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:505 +invoke($6, `test`, []); + +// ./test/core/table_copy.wast:506 +assert_trap(() => invoke($6, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:507 +assert_trap(() => invoke($6, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:508 +assert_return(() => invoke($6, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:509 +assert_return(() => invoke($6, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:510 +assert_return(() => invoke($6, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:511 +assert_return(() => invoke($6, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:512 +assert_trap(() => invoke($6, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:513 +assert_trap(() => invoke($6, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:514 +assert_trap(() => invoke($6, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:515 +assert_trap(() => invoke($6, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:516 +assert_trap(() => invoke($6, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:517 +assert_trap(() => invoke($6, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:518 +assert_return(() => invoke($6, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:519 +assert_return(() => invoke($6, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:520 +assert_return(() => invoke($6, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:521 +assert_return(() => invoke($6, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:522 +assert_return(() => invoke($6, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:523 +assert_trap(() => invoke($6, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:524 +assert_trap(() => invoke($6, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:525 +assert_trap(() => invoke($6, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:526 +assert_trap(() => invoke($6, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:527 +assert_trap(() => invoke($6, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:528 +assert_trap(() => invoke($6, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:529 +assert_trap(() => invoke($6, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:530 +assert_trap(() => invoke($6, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:531 +assert_trap(() => invoke($6, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:532 +assert_return(() => invoke($6, `check_t0`, [26]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:533 +assert_return(() => invoke($6, `check_t0`, [27]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:534 +assert_trap(() => invoke($6, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:535 +assert_trap(() => invoke($6, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:536 +assert_trap(() => invoke($6, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:537 +assert_trap(() => invoke($6, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:538 +assert_trap(() => invoke($6, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:539 +assert_return(() => invoke($6, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:540 +assert_return(() => invoke($6, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:541 +assert_return(() => invoke($6, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:542 +assert_return(() => invoke($6, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:543 +assert_trap(() => invoke($6, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:544 +assert_trap(() => invoke($6, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:545 +assert_trap(() => invoke($6, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:546 +assert_trap(() => invoke($6, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:547 +assert_return(() => invoke($6, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:548 +assert_return(() => invoke($6, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:549 +assert_return(() => invoke($6, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:550 +assert_return(() => invoke($6, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:551 +assert_return(() => invoke($6, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:552 +assert_trap(() => invoke($6, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:553 +assert_trap(() => invoke($6, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:554 +assert_trap(() => invoke($6, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:555 +assert_trap(() => invoke($6, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:556 +assert_trap(() => invoke($6, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:557 +assert_trap(() => invoke($6, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:558 +assert_trap(() => invoke($6, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:559 +assert_trap(() => invoke($6, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:560 +assert_trap(() => invoke($6, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:561 +assert_trap(() => invoke($6, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:562 +assert_trap(() => invoke($6, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:563 +assert_trap(() => invoke($6, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:564 +assert_trap(() => invoke($6, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:565 +assert_trap(() => invoke($6, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:567 +let $7 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 10) (i32.const 12) (i32.const 7))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:597 +invoke($7, `test`, []); + +// ./test/core/table_copy.wast:598 +assert_trap(() => invoke($7, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:599 +assert_trap(() => invoke($7, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:600 +assert_return(() => invoke($7, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:601 +assert_return(() => invoke($7, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:602 +assert_return(() => invoke($7, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:603 +assert_return(() => invoke($7, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:604 +assert_trap(() => invoke($7, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:605 +assert_trap(() => invoke($7, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:606 +assert_trap(() => invoke($7, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:607 +assert_trap(() => invoke($7, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:608 +assert_return(() => invoke($7, `check_t0`, [10]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:609 +assert_return(() => invoke($7, `check_t0`, [11]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:610 +assert_return(() => invoke($7, `check_t0`, [12]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:611 +assert_return(() => invoke($7, `check_t0`, [13]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:612 +assert_return(() => invoke($7, `check_t0`, [14]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:613 +assert_trap(() => invoke($7, `check_t0`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:614 +assert_trap(() => invoke($7, `check_t0`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:615 +assert_trap(() => invoke($7, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:616 +assert_trap(() => invoke($7, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:617 +assert_trap(() => invoke($7, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:618 +assert_trap(() => invoke($7, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:619 +assert_trap(() => invoke($7, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:620 +assert_trap(() => invoke($7, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:621 +assert_trap(() => invoke($7, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:622 +assert_trap(() => invoke($7, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:623 +assert_trap(() => invoke($7, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:624 +assert_trap(() => invoke($7, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:625 +assert_trap(() => invoke($7, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:626 +assert_trap(() => invoke($7, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:627 +assert_trap(() => invoke($7, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:628 +assert_trap(() => invoke($7, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:629 +assert_trap(() => invoke($7, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:630 +assert_trap(() => invoke($7, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:631 +assert_return(() => invoke($7, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:632 +assert_return(() => invoke($7, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:633 +assert_return(() => invoke($7, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:634 +assert_return(() => invoke($7, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:635 +assert_trap(() => invoke($7, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:636 +assert_trap(() => invoke($7, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:637 +assert_trap(() => invoke($7, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:638 +assert_trap(() => invoke($7, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:639 +assert_return(() => invoke($7, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:640 +assert_return(() => invoke($7, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:641 +assert_return(() => invoke($7, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:642 +assert_return(() => invoke($7, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:643 +assert_return(() => invoke($7, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:644 +assert_trap(() => invoke($7, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:645 +assert_trap(() => invoke($7, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:646 +assert_trap(() => invoke($7, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:647 +assert_trap(() => invoke($7, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:648 +assert_trap(() => invoke($7, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:649 +assert_trap(() => invoke($7, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:650 +assert_trap(() => invoke($7, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:651 +assert_trap(() => invoke($7, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:652 +assert_trap(() => invoke($7, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:653 +assert_trap(() => invoke($7, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:654 +assert_trap(() => invoke($7, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:655 +assert_trap(() => invoke($7, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:656 +assert_trap(() => invoke($7, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:657 +assert_trap(() => invoke($7, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:659 +let $8 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 12) (i32.const 10) (i32.const 7))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:689 +invoke($8, `test`, []); + +// ./test/core/table_copy.wast:690 +assert_trap(() => invoke($8, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:691 +assert_trap(() => invoke($8, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:692 +assert_return(() => invoke($8, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:693 +assert_return(() => invoke($8, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:694 +assert_return(() => invoke($8, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:695 +assert_return(() => invoke($8, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:696 +assert_trap(() => invoke($8, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:697 +assert_trap(() => invoke($8, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:698 +assert_trap(() => invoke($8, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:699 +assert_trap(() => invoke($8, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:700 +assert_trap(() => invoke($8, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:701 +assert_trap(() => invoke($8, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:702 +assert_trap(() => invoke($8, `check_t0`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:703 +assert_trap(() => invoke($8, `check_t0`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:704 +assert_return(() => invoke($8, `check_t0`, [14]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:705 +assert_return(() => invoke($8, `check_t0`, [15]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:706 +assert_return(() => invoke($8, `check_t0`, [16]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:707 +assert_return(() => invoke($8, `check_t0`, [17]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:708 +assert_return(() => invoke($8, `check_t0`, [18]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:709 +assert_trap(() => invoke($8, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:710 +assert_trap(() => invoke($8, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:711 +assert_trap(() => invoke($8, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:712 +assert_trap(() => invoke($8, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:713 +assert_trap(() => invoke($8, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:714 +assert_trap(() => invoke($8, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:715 +assert_trap(() => invoke($8, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:716 +assert_trap(() => invoke($8, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:717 +assert_trap(() => invoke($8, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:718 +assert_trap(() => invoke($8, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:719 +assert_trap(() => invoke($8, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:720 +assert_trap(() => invoke($8, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:721 +assert_trap(() => invoke($8, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:722 +assert_trap(() => invoke($8, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:723 +assert_return(() => invoke($8, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:724 +assert_return(() => invoke($8, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:725 +assert_return(() => invoke($8, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:726 +assert_return(() => invoke($8, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:727 +assert_trap(() => invoke($8, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:728 +assert_trap(() => invoke($8, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:729 +assert_trap(() => invoke($8, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:730 +assert_trap(() => invoke($8, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:731 +assert_return(() => invoke($8, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:732 +assert_return(() => invoke($8, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:733 +assert_return(() => invoke($8, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:734 +assert_return(() => invoke($8, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:735 +assert_return(() => invoke($8, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:736 +assert_trap(() => invoke($8, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:737 +assert_trap(() => invoke($8, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:738 +assert_trap(() => invoke($8, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:739 +assert_trap(() => invoke($8, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:740 +assert_trap(() => invoke($8, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:741 +assert_trap(() => invoke($8, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:742 +assert_trap(() => invoke($8, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:743 +assert_trap(() => invoke($8, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:744 +assert_trap(() => invoke($8, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:745 +assert_trap(() => invoke($8, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:746 +assert_trap(() => invoke($8, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:747 +assert_trap(() => invoke($8, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:748 +assert_trap(() => invoke($8, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:749 +assert_trap(() => invoke($8, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:751 +let $9 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t1) (i32.const 3) func 1 3 1 4) + (elem (table $$t1) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 10) (i32.const 0) (i32.const 20))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:781 +invoke($9, `test`, []); + +// ./test/core/table_copy.wast:782 +assert_trap(() => invoke($9, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:783 +assert_trap(() => invoke($9, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:784 +assert_return(() => invoke($9, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:785 +assert_return(() => invoke($9, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:786 +assert_return(() => invoke($9, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:787 +assert_return(() => invoke($9, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:788 +assert_trap(() => invoke($9, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:789 +assert_trap(() => invoke($9, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:790 +assert_trap(() => invoke($9, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:791 +assert_trap(() => invoke($9, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:792 +assert_trap(() => invoke($9, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:793 +assert_trap(() => invoke($9, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:794 +assert_return(() => invoke($9, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:795 +assert_return(() => invoke($9, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:796 +assert_return(() => invoke($9, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:797 +assert_return(() => invoke($9, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:798 +assert_return(() => invoke($9, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:799 +assert_trap(() => invoke($9, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:800 +assert_trap(() => invoke($9, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:801 +assert_trap(() => invoke($9, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:802 +assert_trap(() => invoke($9, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:803 +assert_trap(() => invoke($9, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:804 +assert_trap(() => invoke($9, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:805 +assert_trap(() => invoke($9, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:806 +assert_trap(() => invoke($9, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:807 +assert_trap(() => invoke($9, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:808 +assert_trap(() => invoke($9, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:809 +assert_trap(() => invoke($9, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:810 +assert_trap(() => invoke($9, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:811 +assert_trap(() => invoke($9, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:812 +assert_trap(() => invoke($9, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:813 +assert_trap(() => invoke($9, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:814 +assert_trap(() => invoke($9, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:815 +assert_return(() => invoke($9, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:816 +assert_return(() => invoke($9, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:817 +assert_return(() => invoke($9, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:818 +assert_return(() => invoke($9, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:819 +assert_trap(() => invoke($9, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:820 +assert_trap(() => invoke($9, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:821 +assert_trap(() => invoke($9, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:822 +assert_trap(() => invoke($9, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:823 +assert_trap(() => invoke($9, `check_t1`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:824 +assert_return(() => invoke($9, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:825 +assert_return(() => invoke($9, `check_t1`, [13]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:826 +assert_return(() => invoke($9, `check_t1`, [14]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:827 +assert_return(() => invoke($9, `check_t1`, [15]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:828 +assert_trap(() => invoke($9, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:829 +assert_trap(() => invoke($9, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:830 +assert_trap(() => invoke($9, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:831 +assert_trap(() => invoke($9, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:832 +assert_trap(() => invoke($9, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:833 +assert_trap(() => invoke($9, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:834 +assert_return(() => invoke($9, `check_t1`, [22]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:835 +assert_return(() => invoke($9, `check_t1`, [23]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:836 +assert_return(() => invoke($9, `check_t1`, [24]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:837 +assert_return(() => invoke($9, `check_t1`, [25]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:838 +assert_return(() => invoke($9, `check_t1`, [26]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:839 +assert_trap(() => invoke($9, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:840 +assert_trap(() => invoke($9, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:841 +assert_trap(() => invoke($9, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:843 +let $10 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (nop)) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:873 +invoke($10, `test`, []); + +// ./test/core/table_copy.wast:874 +assert_trap(() => invoke($10, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:875 +assert_trap(() => invoke($10, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:876 +assert_return(() => invoke($10, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:877 +assert_return(() => invoke($10, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:878 +assert_return(() => invoke($10, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:879 +assert_return(() => invoke($10, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:880 +assert_trap(() => invoke($10, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:881 +assert_trap(() => invoke($10, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:882 +assert_trap(() => invoke($10, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:883 +assert_trap(() => invoke($10, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:884 +assert_trap(() => invoke($10, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:885 +assert_trap(() => invoke($10, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:886 +assert_return(() => invoke($10, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:887 +assert_return(() => invoke($10, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:888 +assert_return(() => invoke($10, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:889 +assert_return(() => invoke($10, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:890 +assert_return(() => invoke($10, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:891 +assert_trap(() => invoke($10, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:892 +assert_trap(() => invoke($10, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:893 +assert_trap(() => invoke($10, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:894 +assert_trap(() => invoke($10, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:895 +assert_trap(() => invoke($10, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:896 +assert_trap(() => invoke($10, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:897 +assert_trap(() => invoke($10, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:898 +assert_trap(() => invoke($10, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:899 +assert_trap(() => invoke($10, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:900 +assert_trap(() => invoke($10, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:901 +assert_trap(() => invoke($10, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:902 +assert_trap(() => invoke($10, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:903 +assert_trap(() => invoke($10, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:904 +assert_trap(() => invoke($10, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:905 +assert_trap(() => invoke($10, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:906 +assert_trap(() => invoke($10, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:907 +assert_return(() => invoke($10, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:908 +assert_return(() => invoke($10, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:909 +assert_return(() => invoke($10, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:910 +assert_return(() => invoke($10, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:911 +assert_trap(() => invoke($10, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:912 +assert_trap(() => invoke($10, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:913 +assert_trap(() => invoke($10, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:914 +assert_trap(() => invoke($10, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:915 +assert_return(() => invoke($10, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:916 +assert_return(() => invoke($10, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:917 +assert_return(() => invoke($10, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:918 +assert_return(() => invoke($10, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:919 +assert_return(() => invoke($10, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:920 +assert_trap(() => invoke($10, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:921 +assert_trap(() => invoke($10, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:922 +assert_trap(() => invoke($10, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:923 +assert_trap(() => invoke($10, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:924 +assert_trap(() => invoke($10, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:925 +assert_trap(() => invoke($10, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:926 +assert_trap(() => invoke($10, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:927 +assert_trap(() => invoke($10, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:928 +assert_trap(() => invoke($10, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:929 +assert_trap(() => invoke($10, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:930 +assert_trap(() => invoke($10, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:931 +assert_trap(() => invoke($10, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:932 +assert_trap(() => invoke($10, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:933 +assert_trap(() => invoke($10, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:935 +let $11 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t1 $$t1 (i32.const 13) (i32.const 2) (i32.const 3))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:965 +invoke($11, `test`, []); + +// ./test/core/table_copy.wast:966 +assert_trap(() => invoke($11, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:967 +assert_trap(() => invoke($11, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:968 +assert_return(() => invoke($11, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:969 +assert_return(() => invoke($11, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:970 +assert_return(() => invoke($11, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:971 +assert_return(() => invoke($11, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:972 +assert_trap(() => invoke($11, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:973 +assert_trap(() => invoke($11, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:974 +assert_trap(() => invoke($11, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:975 +assert_trap(() => invoke($11, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:976 +assert_trap(() => invoke($11, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:977 +assert_trap(() => invoke($11, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:978 +assert_return(() => invoke($11, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:979 +assert_return(() => invoke($11, `check_t0`, [13]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:980 +assert_return(() => invoke($11, `check_t0`, [14]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:981 +assert_return(() => invoke($11, `check_t0`, [15]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:982 +assert_return(() => invoke($11, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:983 +assert_trap(() => invoke($11, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:984 +assert_trap(() => invoke($11, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:985 +assert_trap(() => invoke($11, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:986 +assert_trap(() => invoke($11, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:987 +assert_trap(() => invoke($11, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:988 +assert_trap(() => invoke($11, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:989 +assert_trap(() => invoke($11, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:990 +assert_trap(() => invoke($11, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:991 +assert_trap(() => invoke($11, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:992 +assert_trap(() => invoke($11, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:993 +assert_trap(() => invoke($11, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:994 +assert_trap(() => invoke($11, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:995 +assert_trap(() => invoke($11, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:996 +assert_trap(() => invoke($11, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:997 +assert_trap(() => invoke($11, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:998 +assert_trap(() => invoke($11, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:999 +assert_return(() => invoke($11, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1000 +assert_return(() => invoke($11, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1001 +assert_return(() => invoke($11, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1002 +assert_return(() => invoke($11, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1003 +assert_trap(() => invoke($11, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1004 +assert_trap(() => invoke($11, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1005 +assert_trap(() => invoke($11, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1006 +assert_trap(() => invoke($11, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1007 +assert_return(() => invoke($11, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1008 +assert_return(() => invoke($11, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1009 +assert_return(() => invoke($11, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1010 +assert_return(() => invoke($11, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1011 +assert_return(() => invoke($11, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1012 +assert_trap(() => invoke($11, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1013 +assert_trap(() => invoke($11, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1014 +assert_trap(() => invoke($11, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1015 +assert_trap(() => invoke($11, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1016 +assert_trap(() => invoke($11, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1017 +assert_trap(() => invoke($11, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1018 +assert_trap(() => invoke($11, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1019 +assert_trap(() => invoke($11, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1020 +assert_trap(() => invoke($11, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1021 +assert_trap(() => invoke($11, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1022 +assert_trap(() => invoke($11, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1023 +assert_trap(() => invoke($11, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1024 +assert_trap(() => invoke($11, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1025 +assert_trap(() => invoke($11, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1027 +let $12 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t1 $$t1 (i32.const 25) (i32.const 15) (i32.const 2))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:1057 +invoke($12, `test`, []); + +// ./test/core/table_copy.wast:1058 +assert_trap(() => invoke($12, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1059 +assert_trap(() => invoke($12, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1060 +assert_return(() => invoke($12, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1061 +assert_return(() => invoke($12, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1062 +assert_return(() => invoke($12, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1063 +assert_return(() => invoke($12, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1064 +assert_trap(() => invoke($12, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:1065 +assert_trap(() => invoke($12, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1066 +assert_trap(() => invoke($12, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1067 +assert_trap(() => invoke($12, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1068 +assert_trap(() => invoke($12, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1069 +assert_trap(() => invoke($12, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:1070 +assert_return(() => invoke($12, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1071 +assert_return(() => invoke($12, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1072 +assert_return(() => invoke($12, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1073 +assert_return(() => invoke($12, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1074 +assert_return(() => invoke($12, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1075 +assert_trap(() => invoke($12, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1076 +assert_trap(() => invoke($12, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1077 +assert_trap(() => invoke($12, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1078 +assert_trap(() => invoke($12, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1079 +assert_trap(() => invoke($12, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1080 +assert_trap(() => invoke($12, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1081 +assert_trap(() => invoke($12, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1082 +assert_trap(() => invoke($12, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1083 +assert_return(() => invoke($12, `check_t0`, [25]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1084 +assert_return(() => invoke($12, `check_t0`, [26]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1085 +assert_trap(() => invoke($12, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1086 +assert_trap(() => invoke($12, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1087 +assert_trap(() => invoke($12, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1088 +assert_trap(() => invoke($12, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1089 +assert_trap(() => invoke($12, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1090 +assert_trap(() => invoke($12, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:1091 +assert_return(() => invoke($12, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1092 +assert_return(() => invoke($12, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1093 +assert_return(() => invoke($12, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1094 +assert_return(() => invoke($12, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1095 +assert_trap(() => invoke($12, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1096 +assert_trap(() => invoke($12, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1097 +assert_trap(() => invoke($12, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1098 +assert_trap(() => invoke($12, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1099 +assert_return(() => invoke($12, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1100 +assert_return(() => invoke($12, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1101 +assert_return(() => invoke($12, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1102 +assert_return(() => invoke($12, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1103 +assert_return(() => invoke($12, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1104 +assert_trap(() => invoke($12, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1105 +assert_trap(() => invoke($12, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1106 +assert_trap(() => invoke($12, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1107 +assert_trap(() => invoke($12, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1108 +assert_trap(() => invoke($12, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1109 +assert_trap(() => invoke($12, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1110 +assert_trap(() => invoke($12, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1111 +assert_trap(() => invoke($12, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1112 +assert_trap(() => invoke($12, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1113 +assert_trap(() => invoke($12, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1114 +assert_trap(() => invoke($12, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1115 +assert_trap(() => invoke($12, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1116 +assert_trap(() => invoke($12, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1117 +assert_trap(() => invoke($12, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1119 +let $13 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t1 $$t1 (i32.const 13) (i32.const 25) (i32.const 3))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:1149 +invoke($13, `test`, []); + +// ./test/core/table_copy.wast:1150 +assert_trap(() => invoke($13, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1151 +assert_trap(() => invoke($13, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1152 +assert_return(() => invoke($13, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1153 +assert_return(() => invoke($13, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1154 +assert_return(() => invoke($13, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1155 +assert_return(() => invoke($13, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1156 +assert_trap(() => invoke($13, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:1157 +assert_trap(() => invoke($13, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1158 +assert_trap(() => invoke($13, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1159 +assert_trap(() => invoke($13, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1160 +assert_trap(() => invoke($13, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1161 +assert_trap(() => invoke($13, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:1162 +assert_return(() => invoke($13, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1163 +assert_trap(() => invoke($13, `check_t0`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:1164 +assert_trap(() => invoke($13, `check_t0`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:1165 +assert_trap(() => invoke($13, `check_t0`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:1166 +assert_return(() => invoke($13, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1167 +assert_trap(() => invoke($13, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1168 +assert_trap(() => invoke($13, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1169 +assert_trap(() => invoke($13, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1170 +assert_trap(() => invoke($13, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1171 +assert_trap(() => invoke($13, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1172 +assert_trap(() => invoke($13, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1173 +assert_trap(() => invoke($13, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1174 +assert_trap(() => invoke($13, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1175 +assert_trap(() => invoke($13, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1176 +assert_trap(() => invoke($13, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1177 +assert_trap(() => invoke($13, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1178 +assert_trap(() => invoke($13, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1179 +assert_trap(() => invoke($13, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1180 +assert_trap(() => invoke($13, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1181 +assert_trap(() => invoke($13, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1182 +assert_trap(() => invoke($13, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:1183 +assert_return(() => invoke($13, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1184 +assert_return(() => invoke($13, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1185 +assert_return(() => invoke($13, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1186 +assert_return(() => invoke($13, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1187 +assert_trap(() => invoke($13, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1188 +assert_trap(() => invoke($13, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1189 +assert_trap(() => invoke($13, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1190 +assert_trap(() => invoke($13, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1191 +assert_return(() => invoke($13, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1192 +assert_return(() => invoke($13, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1193 +assert_return(() => invoke($13, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1194 +assert_return(() => invoke($13, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1195 +assert_return(() => invoke($13, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1196 +assert_trap(() => invoke($13, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1197 +assert_trap(() => invoke($13, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1198 +assert_trap(() => invoke($13, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1199 +assert_trap(() => invoke($13, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1200 +assert_trap(() => invoke($13, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1201 +assert_trap(() => invoke($13, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1202 +assert_trap(() => invoke($13, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1203 +assert_trap(() => invoke($13, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1204 +assert_trap(() => invoke($13, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1205 +assert_trap(() => invoke($13, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1206 +assert_trap(() => invoke($13, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1207 +assert_trap(() => invoke($13, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1208 +assert_trap(() => invoke($13, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1209 +assert_trap(() => invoke($13, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1211 +let $14 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t1 $$t1 (i32.const 20) (i32.const 22) (i32.const 4))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:1241 +invoke($14, `test`, []); + +// ./test/core/table_copy.wast:1242 +assert_trap(() => invoke($14, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1243 +assert_trap(() => invoke($14, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1244 +assert_return(() => invoke($14, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1245 +assert_return(() => invoke($14, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1246 +assert_return(() => invoke($14, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1247 +assert_return(() => invoke($14, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1248 +assert_trap(() => invoke($14, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:1249 +assert_trap(() => invoke($14, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1250 +assert_trap(() => invoke($14, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1251 +assert_trap(() => invoke($14, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1252 +assert_trap(() => invoke($14, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1253 +assert_trap(() => invoke($14, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:1254 +assert_return(() => invoke($14, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1255 +assert_return(() => invoke($14, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1256 +assert_return(() => invoke($14, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1257 +assert_return(() => invoke($14, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1258 +assert_return(() => invoke($14, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1259 +assert_trap(() => invoke($14, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1260 +assert_trap(() => invoke($14, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1261 +assert_trap(() => invoke($14, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1262 +assert_trap(() => invoke($14, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1263 +assert_trap(() => invoke($14, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1264 +assert_trap(() => invoke($14, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1265 +assert_trap(() => invoke($14, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1266 +assert_trap(() => invoke($14, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1267 +assert_trap(() => invoke($14, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1268 +assert_trap(() => invoke($14, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1269 +assert_trap(() => invoke($14, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1270 +assert_trap(() => invoke($14, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1271 +assert_trap(() => invoke($14, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1272 +assert_trap(() => invoke($14, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1273 +assert_trap(() => invoke($14, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1274 +assert_trap(() => invoke($14, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:1275 +assert_return(() => invoke($14, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1276 +assert_return(() => invoke($14, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1277 +assert_return(() => invoke($14, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1278 +assert_return(() => invoke($14, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1279 +assert_trap(() => invoke($14, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1280 +assert_trap(() => invoke($14, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1281 +assert_trap(() => invoke($14, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1282 +assert_trap(() => invoke($14, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1283 +assert_return(() => invoke($14, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1284 +assert_return(() => invoke($14, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1285 +assert_return(() => invoke($14, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1286 +assert_return(() => invoke($14, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1287 +assert_return(() => invoke($14, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1288 +assert_trap(() => invoke($14, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1289 +assert_trap(() => invoke($14, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1290 +assert_trap(() => invoke($14, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1291 +assert_trap(() => invoke($14, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1292 +assert_trap(() => invoke($14, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1293 +assert_trap(() => invoke($14, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1294 +assert_trap(() => invoke($14, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1295 +assert_trap(() => invoke($14, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1296 +assert_trap(() => invoke($14, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1297 +assert_trap(() => invoke($14, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1298 +assert_trap(() => invoke($14, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1299 +assert_trap(() => invoke($14, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1300 +assert_trap(() => invoke($14, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1301 +assert_trap(() => invoke($14, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1303 +let $15 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t1 $$t1 (i32.const 25) (i32.const 1) (i32.const 3))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:1333 +invoke($15, `test`, []); + +// ./test/core/table_copy.wast:1334 +assert_trap(() => invoke($15, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1335 +assert_trap(() => invoke($15, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1336 +assert_return(() => invoke($15, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1337 +assert_return(() => invoke($15, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1338 +assert_return(() => invoke($15, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1339 +assert_return(() => invoke($15, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1340 +assert_trap(() => invoke($15, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:1341 +assert_trap(() => invoke($15, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1342 +assert_trap(() => invoke($15, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1343 +assert_trap(() => invoke($15, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1344 +assert_trap(() => invoke($15, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1345 +assert_trap(() => invoke($15, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:1346 +assert_return(() => invoke($15, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1347 +assert_return(() => invoke($15, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1348 +assert_return(() => invoke($15, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1349 +assert_return(() => invoke($15, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1350 +assert_return(() => invoke($15, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1351 +assert_trap(() => invoke($15, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1352 +assert_trap(() => invoke($15, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1353 +assert_trap(() => invoke($15, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1354 +assert_trap(() => invoke($15, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1355 +assert_trap(() => invoke($15, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1356 +assert_trap(() => invoke($15, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1357 +assert_trap(() => invoke($15, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1358 +assert_trap(() => invoke($15, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1359 +assert_trap(() => invoke($15, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1360 +assert_return(() => invoke($15, `check_t0`, [26]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1361 +assert_return(() => invoke($15, `check_t0`, [27]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1362 +assert_trap(() => invoke($15, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1363 +assert_trap(() => invoke($15, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1364 +assert_trap(() => invoke($15, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1365 +assert_trap(() => invoke($15, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1366 +assert_trap(() => invoke($15, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:1367 +assert_return(() => invoke($15, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1368 +assert_return(() => invoke($15, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1369 +assert_return(() => invoke($15, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1370 +assert_return(() => invoke($15, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1371 +assert_trap(() => invoke($15, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1372 +assert_trap(() => invoke($15, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1373 +assert_trap(() => invoke($15, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1374 +assert_trap(() => invoke($15, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1375 +assert_return(() => invoke($15, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1376 +assert_return(() => invoke($15, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1377 +assert_return(() => invoke($15, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1378 +assert_return(() => invoke($15, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1379 +assert_return(() => invoke($15, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1380 +assert_trap(() => invoke($15, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1381 +assert_trap(() => invoke($15, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1382 +assert_trap(() => invoke($15, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1383 +assert_trap(() => invoke($15, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1384 +assert_trap(() => invoke($15, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1385 +assert_trap(() => invoke($15, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1386 +assert_trap(() => invoke($15, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1387 +assert_trap(() => invoke($15, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1388 +assert_trap(() => invoke($15, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1389 +assert_trap(() => invoke($15, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1390 +assert_trap(() => invoke($15, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1391 +assert_trap(() => invoke($15, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1392 +assert_trap(() => invoke($15, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1393 +assert_trap(() => invoke($15, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1395 +let $16 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t1 $$t1 (i32.const 10) (i32.const 12) (i32.const 7))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:1425 +invoke($16, `test`, []); + +// ./test/core/table_copy.wast:1426 +assert_trap(() => invoke($16, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1427 +assert_trap(() => invoke($16, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1428 +assert_return(() => invoke($16, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1429 +assert_return(() => invoke($16, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1430 +assert_return(() => invoke($16, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1431 +assert_return(() => invoke($16, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1432 +assert_trap(() => invoke($16, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:1433 +assert_trap(() => invoke($16, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1434 +assert_trap(() => invoke($16, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1435 +assert_trap(() => invoke($16, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1436 +assert_return(() => invoke($16, `check_t0`, [10]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1437 +assert_return(() => invoke($16, `check_t0`, [11]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1438 +assert_return(() => invoke($16, `check_t0`, [12]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1439 +assert_return(() => invoke($16, `check_t0`, [13]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1440 +assert_return(() => invoke($16, `check_t0`, [14]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1441 +assert_trap(() => invoke($16, `check_t0`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:1442 +assert_trap(() => invoke($16, `check_t0`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1443 +assert_trap(() => invoke($16, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1444 +assert_trap(() => invoke($16, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1445 +assert_trap(() => invoke($16, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1446 +assert_trap(() => invoke($16, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1447 +assert_trap(() => invoke($16, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1448 +assert_trap(() => invoke($16, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1449 +assert_trap(() => invoke($16, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1450 +assert_trap(() => invoke($16, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1451 +assert_trap(() => invoke($16, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1452 +assert_trap(() => invoke($16, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1453 +assert_trap(() => invoke($16, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1454 +assert_trap(() => invoke($16, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1455 +assert_trap(() => invoke($16, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1456 +assert_trap(() => invoke($16, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1457 +assert_trap(() => invoke($16, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1458 +assert_trap(() => invoke($16, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:1459 +assert_return(() => invoke($16, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1460 +assert_return(() => invoke($16, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1461 +assert_return(() => invoke($16, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1462 +assert_return(() => invoke($16, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1463 +assert_trap(() => invoke($16, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1464 +assert_trap(() => invoke($16, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1465 +assert_trap(() => invoke($16, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1466 +assert_trap(() => invoke($16, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1467 +assert_return(() => invoke($16, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1468 +assert_return(() => invoke($16, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1469 +assert_return(() => invoke($16, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1470 +assert_return(() => invoke($16, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1471 +assert_return(() => invoke($16, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1472 +assert_trap(() => invoke($16, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1473 +assert_trap(() => invoke($16, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1474 +assert_trap(() => invoke($16, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1475 +assert_trap(() => invoke($16, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1476 +assert_trap(() => invoke($16, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1477 +assert_trap(() => invoke($16, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1478 +assert_trap(() => invoke($16, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1479 +assert_trap(() => invoke($16, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1480 +assert_trap(() => invoke($16, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1481 +assert_trap(() => invoke($16, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1482 +assert_trap(() => invoke($16, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1483 +assert_trap(() => invoke($16, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1484 +assert_trap(() => invoke($16, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1485 +assert_trap(() => invoke($16, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1487 +let $17 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t1 $$t1 (i32.const 12) (i32.const 10) (i32.const 7))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:1517 +invoke($17, `test`, []); + +// ./test/core/table_copy.wast:1518 +assert_trap(() => invoke($17, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1519 +assert_trap(() => invoke($17, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1520 +assert_return(() => invoke($17, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1521 +assert_return(() => invoke($17, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1522 +assert_return(() => invoke($17, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1523 +assert_return(() => invoke($17, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1524 +assert_trap(() => invoke($17, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:1525 +assert_trap(() => invoke($17, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1526 +assert_trap(() => invoke($17, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1527 +assert_trap(() => invoke($17, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1528 +assert_trap(() => invoke($17, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1529 +assert_trap(() => invoke($17, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:1530 +assert_trap(() => invoke($17, `check_t0`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:1531 +assert_trap(() => invoke($17, `check_t0`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:1532 +assert_return(() => invoke($17, `check_t0`, [14]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1533 +assert_return(() => invoke($17, `check_t0`, [15]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1534 +assert_return(() => invoke($17, `check_t0`, [16]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1535 +assert_return(() => invoke($17, `check_t0`, [17]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1536 +assert_return(() => invoke($17, `check_t0`, [18]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1537 +assert_trap(() => invoke($17, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1538 +assert_trap(() => invoke($17, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1539 +assert_trap(() => invoke($17, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1540 +assert_trap(() => invoke($17, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1541 +assert_trap(() => invoke($17, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1542 +assert_trap(() => invoke($17, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1543 +assert_trap(() => invoke($17, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1544 +assert_trap(() => invoke($17, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1545 +assert_trap(() => invoke($17, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1546 +assert_trap(() => invoke($17, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1547 +assert_trap(() => invoke($17, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1548 +assert_trap(() => invoke($17, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1549 +assert_trap(() => invoke($17, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1550 +assert_trap(() => invoke($17, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:1551 +assert_return(() => invoke($17, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1552 +assert_return(() => invoke($17, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1553 +assert_return(() => invoke($17, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1554 +assert_return(() => invoke($17, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1555 +assert_trap(() => invoke($17, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1556 +assert_trap(() => invoke($17, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1557 +assert_trap(() => invoke($17, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1558 +assert_trap(() => invoke($17, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1559 +assert_return(() => invoke($17, `check_t1`, [11]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1560 +assert_return(() => invoke($17, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1561 +assert_return(() => invoke($17, `check_t1`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1562 +assert_return(() => invoke($17, `check_t1`, [14]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1563 +assert_return(() => invoke($17, `check_t1`, [15]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1564 +assert_trap(() => invoke($17, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1565 +assert_trap(() => invoke($17, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1566 +assert_trap(() => invoke($17, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1567 +assert_trap(() => invoke($17, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1568 +assert_trap(() => invoke($17, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1569 +assert_trap(() => invoke($17, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1570 +assert_trap(() => invoke($17, `check_t1`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1571 +assert_trap(() => invoke($17, `check_t1`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1572 +assert_trap(() => invoke($17, `check_t1`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1573 +assert_trap(() => invoke($17, `check_t1`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1574 +assert_trap(() => invoke($17, `check_t1`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1575 +assert_trap(() => invoke($17, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1576 +assert_trap(() => invoke($17, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1577 +assert_trap(() => invoke($17, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1579 +let $18 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (elem (table $$t0) (i32.const 3) func 1 3 1 4) + (elem (table $$t0) (i32.const 11) func 6 3 2 5 7) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.copy $$t0 $$t1 (i32.const 10) (i32.const 0) (i32.const 20))) + (func (export "check_t0") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) + (func (export "check_t1") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_copy.wast:1609 +invoke($18, `test`, []); + +// ./test/core/table_copy.wast:1610 +assert_trap(() => invoke($18, `check_t0`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1611 +assert_trap(() => invoke($18, `check_t0`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1612 +assert_return(() => invoke($18, `check_t0`, [2]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1613 +assert_return(() => invoke($18, `check_t0`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1614 +assert_return(() => invoke($18, `check_t0`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1615 +assert_return(() => invoke($18, `check_t0`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1616 +assert_trap(() => invoke($18, `check_t0`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:1617 +assert_trap(() => invoke($18, `check_t0`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1618 +assert_trap(() => invoke($18, `check_t0`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1619 +assert_trap(() => invoke($18, `check_t0`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1620 +assert_trap(() => invoke($18, `check_t0`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1621 +assert_trap(() => invoke($18, `check_t0`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:1622 +assert_return(() => invoke($18, `check_t0`, [12]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1623 +assert_return(() => invoke($18, `check_t0`, [13]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1624 +assert_return(() => invoke($18, `check_t0`, [14]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1625 +assert_return(() => invoke($18, `check_t0`, [15]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1626 +assert_return(() => invoke($18, `check_t0`, [16]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1627 +assert_trap(() => invoke($18, `check_t0`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1628 +assert_trap(() => invoke($18, `check_t0`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1629 +assert_trap(() => invoke($18, `check_t0`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1630 +assert_trap(() => invoke($18, `check_t0`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1631 +assert_trap(() => invoke($18, `check_t0`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1632 +assert_trap(() => invoke($18, `check_t0`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:1633 +assert_trap(() => invoke($18, `check_t0`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:1634 +assert_trap(() => invoke($18, `check_t0`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:1635 +assert_trap(() => invoke($18, `check_t0`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:1636 +assert_trap(() => invoke($18, `check_t0`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:1637 +assert_trap(() => invoke($18, `check_t0`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1638 +assert_trap(() => invoke($18, `check_t0`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1639 +assert_trap(() => invoke($18, `check_t0`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1640 +assert_trap(() => invoke($18, `check_t1`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:1641 +assert_trap(() => invoke($18, `check_t1`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:1642 +assert_trap(() => invoke($18, `check_t1`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:1643 +assert_return(() => invoke($18, `check_t1`, [3]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1644 +assert_return(() => invoke($18, `check_t1`, [4]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1645 +assert_return(() => invoke($18, `check_t1`, [5]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1646 +assert_return(() => invoke($18, `check_t1`, [6]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1647 +assert_trap(() => invoke($18, `check_t1`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:1648 +assert_trap(() => invoke($18, `check_t1`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:1649 +assert_trap(() => invoke($18, `check_t1`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:1650 +assert_trap(() => invoke($18, `check_t1`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:1651 +assert_trap(() => invoke($18, `check_t1`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:1652 +assert_return(() => invoke($18, `check_t1`, [12]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1653 +assert_return(() => invoke($18, `check_t1`, [13]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1654 +assert_return(() => invoke($18, `check_t1`, [14]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:1655 +assert_return(() => invoke($18, `check_t1`, [15]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:1656 +assert_trap(() => invoke($18, `check_t1`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:1657 +assert_trap(() => invoke($18, `check_t1`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:1658 +assert_trap(() => invoke($18, `check_t1`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:1659 +assert_trap(() => invoke($18, `check_t1`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:1660 +assert_trap(() => invoke($18, `check_t1`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:1661 +assert_trap(() => invoke($18, `check_t1`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:1662 +assert_return(() => invoke($18, `check_t1`, [22]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:1663 +assert_return(() => invoke($18, `check_t1`, [23]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:1664 +assert_return(() => invoke($18, `check_t1`, [24]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:1665 +assert_return(() => invoke($18, `check_t1`, [25]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:1666 +assert_return(() => invoke($18, `check_t1`, [26]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:1667 +assert_trap(() => invoke($18, `check_t1`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:1668 +assert_trap(() => invoke($18, `check_t1`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:1669 +assert_trap(() => invoke($18, `check_t1`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:1671 +let $19 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 28) (i32.const 1) (i32.const 3)) + ))`); + +// ./test/core/table_copy.wast:1694 +assert_trap(() => invoke($19, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1696 +let $20 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 0xFFFFFFFE) (i32.const 1) (i32.const 2)) + ))`); + +// ./test/core/table_copy.wast:1719 +assert_trap(() => invoke($20, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1721 +let $21 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 15) (i32.const 25) (i32.const 6)) + ))`); + +// ./test/core/table_copy.wast:1744 +assert_trap(() => invoke($21, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1746 +let $22 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 15) (i32.const 0xFFFFFFFE) (i32.const 2)) + ))`); + +// ./test/core/table_copy.wast:1769 +assert_trap(() => invoke($22, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1771 +let $23 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 15) (i32.const 25) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:1794 +invoke($23, `test`, []); + +// ./test/core/table_copy.wast:1796 +let $24 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 30) (i32.const 15) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:1819 +invoke($24, `test`, []); + +// ./test/core/table_copy.wast:1821 +let $25 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 31) (i32.const 15) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:1844 +assert_trap(() => invoke($25, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1846 +let $26 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 15) (i32.const 30) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:1869 +invoke($26, `test`, []); + +// ./test/core/table_copy.wast:1871 +let $27 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 15) (i32.const 31) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:1894 +assert_trap(() => invoke($27, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1896 +let $28 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 30) (i32.const 30) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:1919 +invoke($28, `test`, []); + +// ./test/core/table_copy.wast:1921 +let $29 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t0 $$t0 (i32.const 31) (i32.const 31) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:1944 +assert_trap(() => invoke($29, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1946 +let $30 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 28) (i32.const 1) (i32.const 3)) + ))`); + +// ./test/core/table_copy.wast:1969 +assert_trap(() => invoke($30, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1971 +let $31 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 0xFFFFFFFE) (i32.const 1) (i32.const 2)) + ))`); + +// ./test/core/table_copy.wast:1994 +assert_trap(() => invoke($31, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:1996 +let $32 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 15) (i32.const 25) (i32.const 6)) + ))`); + +// ./test/core/table_copy.wast:2019 +assert_trap(() => invoke($32, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:2021 +let $33 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 15) (i32.const 0xFFFFFFFE) (i32.const 2)) + ))`); + +// ./test/core/table_copy.wast:2044 +assert_trap(() => invoke($33, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:2046 +let $34 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 15) (i32.const 25) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:2069 +invoke($34, `test`, []); + +// ./test/core/table_copy.wast:2071 +let $35 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 30) (i32.const 15) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:2094 +invoke($35, `test`, []); + +// ./test/core/table_copy.wast:2096 +let $36 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 31) (i32.const 15) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:2119 +assert_trap(() => invoke($36, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:2121 +let $37 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 15) (i32.const 30) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:2144 +invoke($37, `test`, []); + +// ./test/core/table_copy.wast:2146 +let $38 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 15) (i32.const 31) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:2169 +assert_trap(() => invoke($38, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:2171 +let $39 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 30) (i32.const 30) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:2194 +invoke($39, `test`, []); + +// ./test/core/table_copy.wast:2196 +let $40 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.copy $$t1 $$t0 (i32.const 31) (i32.const 31) (i32.const 0)) + ))`); + +// ./test/core/table_copy.wast:2219 +assert_trap(() => invoke($40, `test`, []), `out of bounds table access`); + +// ./test/core/table_copy.wast:2221 +let $41 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 0) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2247 +assert_trap(() => invoke($41, `run`, [24, 0, 16]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2249 +assert_return(() => invoke($41, `test`, [0]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2250 +assert_return(() => invoke($41, `test`, [1]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2251 +assert_return(() => invoke($41, `test`, [2]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2252 +assert_return(() => invoke($41, `test`, [3]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2253 +assert_return(() => invoke($41, `test`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2254 +assert_return(() => invoke($41, `test`, [5]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2255 +assert_return(() => invoke($41, `test`, [6]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2256 +assert_return(() => invoke($41, `test`, [7]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2257 +assert_trap(() => invoke($41, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2258 +assert_trap(() => invoke($41, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2259 +assert_trap(() => invoke($41, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2260 +assert_trap(() => invoke($41, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2261 +assert_trap(() => invoke($41, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2262 +assert_trap(() => invoke($41, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2263 +assert_trap(() => invoke($41, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2264 +assert_trap(() => invoke($41, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2265 +assert_trap(() => invoke($41, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2266 +assert_trap(() => invoke($41, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2267 +assert_trap(() => invoke($41, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2268 +assert_trap(() => invoke($41, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2269 +assert_trap(() => invoke($41, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2270 +assert_trap(() => invoke($41, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2271 +assert_trap(() => invoke($41, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2272 +assert_trap(() => invoke($41, `test`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:2273 +assert_trap(() => invoke($41, `test`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:2274 +assert_trap(() => invoke($41, `test`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:2275 +assert_trap(() => invoke($41, `test`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:2276 +assert_trap(() => invoke($41, `test`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:2277 +assert_trap(() => invoke($41, `test`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:2278 +assert_trap(() => invoke($41, `test`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:2279 +assert_trap(() => invoke($41, `test`, [30]), `uninitialized element`); + +// ./test/core/table_copy.wast:2280 +assert_trap(() => invoke($41, `test`, [31]), `uninitialized element`); + +// ./test/core/table_copy.wast:2282 +let $42 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 0) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7 $$f8) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2308 +assert_trap(() => invoke($42, `run`, [23, 0, 15]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2310 +assert_return(() => invoke($42, `test`, [0]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2311 +assert_return(() => invoke($42, `test`, [1]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2312 +assert_return(() => invoke($42, `test`, [2]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2313 +assert_return(() => invoke($42, `test`, [3]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2314 +assert_return(() => invoke($42, `test`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2315 +assert_return(() => invoke($42, `test`, [5]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2316 +assert_return(() => invoke($42, `test`, [6]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2317 +assert_return(() => invoke($42, `test`, [7]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2318 +assert_return(() => invoke($42, `test`, [8]), [value("i32", 8)]); + +// ./test/core/table_copy.wast:2319 +assert_trap(() => invoke($42, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2320 +assert_trap(() => invoke($42, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2321 +assert_trap(() => invoke($42, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2322 +assert_trap(() => invoke($42, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2323 +assert_trap(() => invoke($42, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2324 +assert_trap(() => invoke($42, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2325 +assert_trap(() => invoke($42, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2326 +assert_trap(() => invoke($42, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2327 +assert_trap(() => invoke($42, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2328 +assert_trap(() => invoke($42, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2329 +assert_trap(() => invoke($42, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2330 +assert_trap(() => invoke($42, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2331 +assert_trap(() => invoke($42, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2332 +assert_trap(() => invoke($42, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2333 +assert_trap(() => invoke($42, `test`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:2334 +assert_trap(() => invoke($42, `test`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:2335 +assert_trap(() => invoke($42, `test`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:2336 +assert_trap(() => invoke($42, `test`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:2337 +assert_trap(() => invoke($42, `test`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:2338 +assert_trap(() => invoke($42, `test`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:2339 +assert_trap(() => invoke($42, `test`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:2340 +assert_trap(() => invoke($42, `test`, [30]), `uninitialized element`); + +// ./test/core/table_copy.wast:2341 +assert_trap(() => invoke($42, `test`, [31]), `uninitialized element`); + +// ./test/core/table_copy.wast:2343 +let $43 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 24) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2369 +assert_trap(() => invoke($43, `run`, [0, 24, 16]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2371 +assert_trap(() => invoke($43, `test`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:2372 +assert_trap(() => invoke($43, `test`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:2373 +assert_trap(() => invoke($43, `test`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:2374 +assert_trap(() => invoke($43, `test`, [3]), `uninitialized element`); + +// ./test/core/table_copy.wast:2375 +assert_trap(() => invoke($43, `test`, [4]), `uninitialized element`); + +// ./test/core/table_copy.wast:2376 +assert_trap(() => invoke($43, `test`, [5]), `uninitialized element`); + +// ./test/core/table_copy.wast:2377 +assert_trap(() => invoke($43, `test`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:2378 +assert_trap(() => invoke($43, `test`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:2379 +assert_trap(() => invoke($43, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2380 +assert_trap(() => invoke($43, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2381 +assert_trap(() => invoke($43, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2382 +assert_trap(() => invoke($43, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2383 +assert_trap(() => invoke($43, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2384 +assert_trap(() => invoke($43, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2385 +assert_trap(() => invoke($43, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2386 +assert_trap(() => invoke($43, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2387 +assert_trap(() => invoke($43, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2388 +assert_trap(() => invoke($43, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2389 +assert_trap(() => invoke($43, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2390 +assert_trap(() => invoke($43, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2391 +assert_trap(() => invoke($43, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2392 +assert_trap(() => invoke($43, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2393 +assert_trap(() => invoke($43, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2394 +assert_trap(() => invoke($43, `test`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:2395 +assert_return(() => invoke($43, `test`, [24]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2396 +assert_return(() => invoke($43, `test`, [25]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2397 +assert_return(() => invoke($43, `test`, [26]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2398 +assert_return(() => invoke($43, `test`, [27]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2399 +assert_return(() => invoke($43, `test`, [28]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2400 +assert_return(() => invoke($43, `test`, [29]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2401 +assert_return(() => invoke($43, `test`, [30]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2402 +assert_return(() => invoke($43, `test`, [31]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2404 +let $44 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 23) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7 $$f8) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2430 +assert_trap(() => invoke($44, `run`, [0, 23, 15]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2432 +assert_trap(() => invoke($44, `test`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:2433 +assert_trap(() => invoke($44, `test`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:2434 +assert_trap(() => invoke($44, `test`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:2435 +assert_trap(() => invoke($44, `test`, [3]), `uninitialized element`); + +// ./test/core/table_copy.wast:2436 +assert_trap(() => invoke($44, `test`, [4]), `uninitialized element`); + +// ./test/core/table_copy.wast:2437 +assert_trap(() => invoke($44, `test`, [5]), `uninitialized element`); + +// ./test/core/table_copy.wast:2438 +assert_trap(() => invoke($44, `test`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:2439 +assert_trap(() => invoke($44, `test`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:2440 +assert_trap(() => invoke($44, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2441 +assert_trap(() => invoke($44, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2442 +assert_trap(() => invoke($44, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2443 +assert_trap(() => invoke($44, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2444 +assert_trap(() => invoke($44, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2445 +assert_trap(() => invoke($44, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2446 +assert_trap(() => invoke($44, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2447 +assert_trap(() => invoke($44, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2448 +assert_trap(() => invoke($44, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2449 +assert_trap(() => invoke($44, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2450 +assert_trap(() => invoke($44, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2451 +assert_trap(() => invoke($44, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2452 +assert_trap(() => invoke($44, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2453 +assert_trap(() => invoke($44, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2454 +assert_trap(() => invoke($44, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2455 +assert_return(() => invoke($44, `test`, [23]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2456 +assert_return(() => invoke($44, `test`, [24]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2457 +assert_return(() => invoke($44, `test`, [25]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2458 +assert_return(() => invoke($44, `test`, [26]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2459 +assert_return(() => invoke($44, `test`, [27]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2460 +assert_return(() => invoke($44, `test`, [28]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2461 +assert_return(() => invoke($44, `test`, [29]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2462 +assert_return(() => invoke($44, `test`, [30]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2463 +assert_return(() => invoke($44, `test`, [31]), [value("i32", 8)]); + +// ./test/core/table_copy.wast:2465 +let $45 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 11) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2491 +assert_trap(() => invoke($45, `run`, [24, 11, 16]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2493 +assert_trap(() => invoke($45, `test`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:2494 +assert_trap(() => invoke($45, `test`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:2495 +assert_trap(() => invoke($45, `test`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:2496 +assert_trap(() => invoke($45, `test`, [3]), `uninitialized element`); + +// ./test/core/table_copy.wast:2497 +assert_trap(() => invoke($45, `test`, [4]), `uninitialized element`); + +// ./test/core/table_copy.wast:2498 +assert_trap(() => invoke($45, `test`, [5]), `uninitialized element`); + +// ./test/core/table_copy.wast:2499 +assert_trap(() => invoke($45, `test`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:2500 +assert_trap(() => invoke($45, `test`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:2501 +assert_trap(() => invoke($45, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2502 +assert_trap(() => invoke($45, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2503 +assert_trap(() => invoke($45, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2504 +assert_return(() => invoke($45, `test`, [11]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2505 +assert_return(() => invoke($45, `test`, [12]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2506 +assert_return(() => invoke($45, `test`, [13]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2507 +assert_return(() => invoke($45, `test`, [14]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2508 +assert_return(() => invoke($45, `test`, [15]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2509 +assert_return(() => invoke($45, `test`, [16]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2510 +assert_return(() => invoke($45, `test`, [17]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2511 +assert_return(() => invoke($45, `test`, [18]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2512 +assert_trap(() => invoke($45, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2513 +assert_trap(() => invoke($45, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2514 +assert_trap(() => invoke($45, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2515 +assert_trap(() => invoke($45, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2516 +assert_trap(() => invoke($45, `test`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:2517 +assert_trap(() => invoke($45, `test`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:2518 +assert_trap(() => invoke($45, `test`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:2519 +assert_trap(() => invoke($45, `test`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:2520 +assert_trap(() => invoke($45, `test`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:2521 +assert_trap(() => invoke($45, `test`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:2522 +assert_trap(() => invoke($45, `test`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:2523 +assert_trap(() => invoke($45, `test`, [30]), `uninitialized element`); + +// ./test/core/table_copy.wast:2524 +assert_trap(() => invoke($45, `test`, [31]), `uninitialized element`); + +// ./test/core/table_copy.wast:2526 +let $46 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 24) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2552 +assert_trap(() => invoke($46, `run`, [11, 24, 16]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2554 +assert_trap(() => invoke($46, `test`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:2555 +assert_trap(() => invoke($46, `test`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:2556 +assert_trap(() => invoke($46, `test`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:2557 +assert_trap(() => invoke($46, `test`, [3]), `uninitialized element`); + +// ./test/core/table_copy.wast:2558 +assert_trap(() => invoke($46, `test`, [4]), `uninitialized element`); + +// ./test/core/table_copy.wast:2559 +assert_trap(() => invoke($46, `test`, [5]), `uninitialized element`); + +// ./test/core/table_copy.wast:2560 +assert_trap(() => invoke($46, `test`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:2561 +assert_trap(() => invoke($46, `test`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:2562 +assert_trap(() => invoke($46, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2563 +assert_trap(() => invoke($46, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2564 +assert_trap(() => invoke($46, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2565 +assert_trap(() => invoke($46, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2566 +assert_trap(() => invoke($46, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2567 +assert_trap(() => invoke($46, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2568 +assert_trap(() => invoke($46, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2569 +assert_trap(() => invoke($46, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2570 +assert_trap(() => invoke($46, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2571 +assert_trap(() => invoke($46, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2572 +assert_trap(() => invoke($46, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2573 +assert_trap(() => invoke($46, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2574 +assert_trap(() => invoke($46, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2575 +assert_trap(() => invoke($46, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2576 +assert_trap(() => invoke($46, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2577 +assert_trap(() => invoke($46, `test`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:2578 +assert_return(() => invoke($46, `test`, [24]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2579 +assert_return(() => invoke($46, `test`, [25]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2580 +assert_return(() => invoke($46, `test`, [26]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2581 +assert_return(() => invoke($46, `test`, [27]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2582 +assert_return(() => invoke($46, `test`, [28]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2583 +assert_return(() => invoke($46, `test`, [29]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2584 +assert_return(() => invoke($46, `test`, [30]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2585 +assert_return(() => invoke($46, `test`, [31]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2587 +let $47 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 21) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2613 +assert_trap(() => invoke($47, `run`, [24, 21, 16]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2615 +assert_trap(() => invoke($47, `test`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:2616 +assert_trap(() => invoke($47, `test`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:2617 +assert_trap(() => invoke($47, `test`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:2618 +assert_trap(() => invoke($47, `test`, [3]), `uninitialized element`); + +// ./test/core/table_copy.wast:2619 +assert_trap(() => invoke($47, `test`, [4]), `uninitialized element`); + +// ./test/core/table_copy.wast:2620 +assert_trap(() => invoke($47, `test`, [5]), `uninitialized element`); + +// ./test/core/table_copy.wast:2621 +assert_trap(() => invoke($47, `test`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:2622 +assert_trap(() => invoke($47, `test`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:2623 +assert_trap(() => invoke($47, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2624 +assert_trap(() => invoke($47, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2625 +assert_trap(() => invoke($47, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2626 +assert_trap(() => invoke($47, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2627 +assert_trap(() => invoke($47, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2628 +assert_trap(() => invoke($47, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2629 +assert_trap(() => invoke($47, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2630 +assert_trap(() => invoke($47, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2631 +assert_trap(() => invoke($47, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2632 +assert_trap(() => invoke($47, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2633 +assert_trap(() => invoke($47, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2634 +assert_trap(() => invoke($47, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2635 +assert_trap(() => invoke($47, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2636 +assert_return(() => invoke($47, `test`, [21]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2637 +assert_return(() => invoke($47, `test`, [22]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2638 +assert_return(() => invoke($47, `test`, [23]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2639 +assert_return(() => invoke($47, `test`, [24]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2640 +assert_return(() => invoke($47, `test`, [25]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2641 +assert_return(() => invoke($47, `test`, [26]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2642 +assert_return(() => invoke($47, `test`, [27]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2643 +assert_return(() => invoke($47, `test`, [28]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2644 +assert_trap(() => invoke($47, `test`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:2645 +assert_trap(() => invoke($47, `test`, [30]), `uninitialized element`); + +// ./test/core/table_copy.wast:2646 +assert_trap(() => invoke($47, `test`, [31]), `uninitialized element`); + +// ./test/core/table_copy.wast:2648 +let $48 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 24) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2674 +assert_trap(() => invoke($48, `run`, [21, 24, 16]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2676 +assert_trap(() => invoke($48, `test`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:2677 +assert_trap(() => invoke($48, `test`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:2678 +assert_trap(() => invoke($48, `test`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:2679 +assert_trap(() => invoke($48, `test`, [3]), `uninitialized element`); + +// ./test/core/table_copy.wast:2680 +assert_trap(() => invoke($48, `test`, [4]), `uninitialized element`); + +// ./test/core/table_copy.wast:2681 +assert_trap(() => invoke($48, `test`, [5]), `uninitialized element`); + +// ./test/core/table_copy.wast:2682 +assert_trap(() => invoke($48, `test`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:2683 +assert_trap(() => invoke($48, `test`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:2684 +assert_trap(() => invoke($48, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2685 +assert_trap(() => invoke($48, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2686 +assert_trap(() => invoke($48, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2687 +assert_trap(() => invoke($48, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2688 +assert_trap(() => invoke($48, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2689 +assert_trap(() => invoke($48, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2690 +assert_trap(() => invoke($48, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2691 +assert_trap(() => invoke($48, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2692 +assert_trap(() => invoke($48, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2693 +assert_trap(() => invoke($48, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2694 +assert_trap(() => invoke($48, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2695 +assert_trap(() => invoke($48, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2696 +assert_trap(() => invoke($48, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2697 +assert_trap(() => invoke($48, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2698 +assert_trap(() => invoke($48, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2699 +assert_trap(() => invoke($48, `test`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:2700 +assert_return(() => invoke($48, `test`, [24]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2701 +assert_return(() => invoke($48, `test`, [25]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2702 +assert_return(() => invoke($48, `test`, [26]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2703 +assert_return(() => invoke($48, `test`, [27]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2704 +assert_return(() => invoke($48, `test`, [28]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2705 +assert_return(() => invoke($48, `test`, [29]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2706 +assert_return(() => invoke($48, `test`, [30]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2707 +assert_return(() => invoke($48, `test`, [31]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2709 +let $49 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem (i32.const 21) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7 $$f8 $$f9 $$f10) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2735 +assert_trap(() => invoke($49, `run`, [21, 21, 16]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2737 +assert_trap(() => invoke($49, `test`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:2738 +assert_trap(() => invoke($49, `test`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:2739 +assert_trap(() => invoke($49, `test`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:2740 +assert_trap(() => invoke($49, `test`, [3]), `uninitialized element`); + +// ./test/core/table_copy.wast:2741 +assert_trap(() => invoke($49, `test`, [4]), `uninitialized element`); + +// ./test/core/table_copy.wast:2742 +assert_trap(() => invoke($49, `test`, [5]), `uninitialized element`); + +// ./test/core/table_copy.wast:2743 +assert_trap(() => invoke($49, `test`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:2744 +assert_trap(() => invoke($49, `test`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:2745 +assert_trap(() => invoke($49, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2746 +assert_trap(() => invoke($49, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2747 +assert_trap(() => invoke($49, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2748 +assert_trap(() => invoke($49, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2749 +assert_trap(() => invoke($49, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2750 +assert_trap(() => invoke($49, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2751 +assert_trap(() => invoke($49, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2752 +assert_trap(() => invoke($49, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2753 +assert_trap(() => invoke($49, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2754 +assert_trap(() => invoke($49, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2755 +assert_trap(() => invoke($49, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2756 +assert_trap(() => invoke($49, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2757 +assert_trap(() => invoke($49, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2758 +assert_return(() => invoke($49, `test`, [21]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2759 +assert_return(() => invoke($49, `test`, [22]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2760 +assert_return(() => invoke($49, `test`, [23]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2761 +assert_return(() => invoke($49, `test`, [24]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2762 +assert_return(() => invoke($49, `test`, [25]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2763 +assert_return(() => invoke($49, `test`, [26]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2764 +assert_return(() => invoke($49, `test`, [27]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2765 +assert_return(() => invoke($49, `test`, [28]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2766 +assert_return(() => invoke($49, `test`, [29]), [value("i32", 8)]); + +// ./test/core/table_copy.wast:2767 +assert_return(() => invoke($49, `test`, [30]), [value("i32", 9)]); + +// ./test/core/table_copy.wast:2768 +assert_return(() => invoke($49, `test`, [31]), [value("i32", 10)]); + +// ./test/core/table_copy.wast:2770 +let $50 = instantiate(`(module + (type (func (result i32))) + (table 128 128 funcref) + (elem (i32.const 112) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7 $$f8 $$f9 $$f10 $$f11 $$f12 $$f13 $$f14 $$f15) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2796 +assert_trap(() => invoke($50, `run`, [0, 112, -32]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2798 +assert_trap(() => invoke($50, `test`, [0]), `uninitialized element`); + +// ./test/core/table_copy.wast:2799 +assert_trap(() => invoke($50, `test`, [1]), `uninitialized element`); + +// ./test/core/table_copy.wast:2800 +assert_trap(() => invoke($50, `test`, [2]), `uninitialized element`); + +// ./test/core/table_copy.wast:2801 +assert_trap(() => invoke($50, `test`, [3]), `uninitialized element`); + +// ./test/core/table_copy.wast:2802 +assert_trap(() => invoke($50, `test`, [4]), `uninitialized element`); + +// ./test/core/table_copy.wast:2803 +assert_trap(() => invoke($50, `test`, [5]), `uninitialized element`); + +// ./test/core/table_copy.wast:2804 +assert_trap(() => invoke($50, `test`, [6]), `uninitialized element`); + +// ./test/core/table_copy.wast:2805 +assert_trap(() => invoke($50, `test`, [7]), `uninitialized element`); + +// ./test/core/table_copy.wast:2806 +assert_trap(() => invoke($50, `test`, [8]), `uninitialized element`); + +// ./test/core/table_copy.wast:2807 +assert_trap(() => invoke($50, `test`, [9]), `uninitialized element`); + +// ./test/core/table_copy.wast:2808 +assert_trap(() => invoke($50, `test`, [10]), `uninitialized element`); + +// ./test/core/table_copy.wast:2809 +assert_trap(() => invoke($50, `test`, [11]), `uninitialized element`); + +// ./test/core/table_copy.wast:2810 +assert_trap(() => invoke($50, `test`, [12]), `uninitialized element`); + +// ./test/core/table_copy.wast:2811 +assert_trap(() => invoke($50, `test`, [13]), `uninitialized element`); + +// ./test/core/table_copy.wast:2812 +assert_trap(() => invoke($50, `test`, [14]), `uninitialized element`); + +// ./test/core/table_copy.wast:2813 +assert_trap(() => invoke($50, `test`, [15]), `uninitialized element`); + +// ./test/core/table_copy.wast:2814 +assert_trap(() => invoke($50, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2815 +assert_trap(() => invoke($50, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2816 +assert_trap(() => invoke($50, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2817 +assert_trap(() => invoke($50, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2818 +assert_trap(() => invoke($50, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2819 +assert_trap(() => invoke($50, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2820 +assert_trap(() => invoke($50, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2821 +assert_trap(() => invoke($50, `test`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:2822 +assert_trap(() => invoke($50, `test`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:2823 +assert_trap(() => invoke($50, `test`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:2824 +assert_trap(() => invoke($50, `test`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:2825 +assert_trap(() => invoke($50, `test`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:2826 +assert_trap(() => invoke($50, `test`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:2827 +assert_trap(() => invoke($50, `test`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:2828 +assert_trap(() => invoke($50, `test`, [30]), `uninitialized element`); + +// ./test/core/table_copy.wast:2829 +assert_trap(() => invoke($50, `test`, [31]), `uninitialized element`); + +// ./test/core/table_copy.wast:2830 +assert_trap(() => invoke($50, `test`, [32]), `uninitialized element`); + +// ./test/core/table_copy.wast:2831 +assert_trap(() => invoke($50, `test`, [33]), `uninitialized element`); + +// ./test/core/table_copy.wast:2832 +assert_trap(() => invoke($50, `test`, [34]), `uninitialized element`); + +// ./test/core/table_copy.wast:2833 +assert_trap(() => invoke($50, `test`, [35]), `uninitialized element`); + +// ./test/core/table_copy.wast:2834 +assert_trap(() => invoke($50, `test`, [36]), `uninitialized element`); + +// ./test/core/table_copy.wast:2835 +assert_trap(() => invoke($50, `test`, [37]), `uninitialized element`); + +// ./test/core/table_copy.wast:2836 +assert_trap(() => invoke($50, `test`, [38]), `uninitialized element`); + +// ./test/core/table_copy.wast:2837 +assert_trap(() => invoke($50, `test`, [39]), `uninitialized element`); + +// ./test/core/table_copy.wast:2838 +assert_trap(() => invoke($50, `test`, [40]), `uninitialized element`); + +// ./test/core/table_copy.wast:2839 +assert_trap(() => invoke($50, `test`, [41]), `uninitialized element`); + +// ./test/core/table_copy.wast:2840 +assert_trap(() => invoke($50, `test`, [42]), `uninitialized element`); + +// ./test/core/table_copy.wast:2841 +assert_trap(() => invoke($50, `test`, [43]), `uninitialized element`); + +// ./test/core/table_copy.wast:2842 +assert_trap(() => invoke($50, `test`, [44]), `uninitialized element`); + +// ./test/core/table_copy.wast:2843 +assert_trap(() => invoke($50, `test`, [45]), `uninitialized element`); + +// ./test/core/table_copy.wast:2844 +assert_trap(() => invoke($50, `test`, [46]), `uninitialized element`); + +// ./test/core/table_copy.wast:2845 +assert_trap(() => invoke($50, `test`, [47]), `uninitialized element`); + +// ./test/core/table_copy.wast:2846 +assert_trap(() => invoke($50, `test`, [48]), `uninitialized element`); + +// ./test/core/table_copy.wast:2847 +assert_trap(() => invoke($50, `test`, [49]), `uninitialized element`); + +// ./test/core/table_copy.wast:2848 +assert_trap(() => invoke($50, `test`, [50]), `uninitialized element`); + +// ./test/core/table_copy.wast:2849 +assert_trap(() => invoke($50, `test`, [51]), `uninitialized element`); + +// ./test/core/table_copy.wast:2850 +assert_trap(() => invoke($50, `test`, [52]), `uninitialized element`); + +// ./test/core/table_copy.wast:2851 +assert_trap(() => invoke($50, `test`, [53]), `uninitialized element`); + +// ./test/core/table_copy.wast:2852 +assert_trap(() => invoke($50, `test`, [54]), `uninitialized element`); + +// ./test/core/table_copy.wast:2853 +assert_trap(() => invoke($50, `test`, [55]), `uninitialized element`); + +// ./test/core/table_copy.wast:2854 +assert_trap(() => invoke($50, `test`, [56]), `uninitialized element`); + +// ./test/core/table_copy.wast:2855 +assert_trap(() => invoke($50, `test`, [57]), `uninitialized element`); + +// ./test/core/table_copy.wast:2856 +assert_trap(() => invoke($50, `test`, [58]), `uninitialized element`); + +// ./test/core/table_copy.wast:2857 +assert_trap(() => invoke($50, `test`, [59]), `uninitialized element`); + +// ./test/core/table_copy.wast:2858 +assert_trap(() => invoke($50, `test`, [60]), `uninitialized element`); + +// ./test/core/table_copy.wast:2859 +assert_trap(() => invoke($50, `test`, [61]), `uninitialized element`); + +// ./test/core/table_copy.wast:2860 +assert_trap(() => invoke($50, `test`, [62]), `uninitialized element`); + +// ./test/core/table_copy.wast:2861 +assert_trap(() => invoke($50, `test`, [63]), `uninitialized element`); + +// ./test/core/table_copy.wast:2862 +assert_trap(() => invoke($50, `test`, [64]), `uninitialized element`); + +// ./test/core/table_copy.wast:2863 +assert_trap(() => invoke($50, `test`, [65]), `uninitialized element`); + +// ./test/core/table_copy.wast:2864 +assert_trap(() => invoke($50, `test`, [66]), `uninitialized element`); + +// ./test/core/table_copy.wast:2865 +assert_trap(() => invoke($50, `test`, [67]), `uninitialized element`); + +// ./test/core/table_copy.wast:2866 +assert_trap(() => invoke($50, `test`, [68]), `uninitialized element`); + +// ./test/core/table_copy.wast:2867 +assert_trap(() => invoke($50, `test`, [69]), `uninitialized element`); + +// ./test/core/table_copy.wast:2868 +assert_trap(() => invoke($50, `test`, [70]), `uninitialized element`); + +// ./test/core/table_copy.wast:2869 +assert_trap(() => invoke($50, `test`, [71]), `uninitialized element`); + +// ./test/core/table_copy.wast:2870 +assert_trap(() => invoke($50, `test`, [72]), `uninitialized element`); + +// ./test/core/table_copy.wast:2871 +assert_trap(() => invoke($50, `test`, [73]), `uninitialized element`); + +// ./test/core/table_copy.wast:2872 +assert_trap(() => invoke($50, `test`, [74]), `uninitialized element`); + +// ./test/core/table_copy.wast:2873 +assert_trap(() => invoke($50, `test`, [75]), `uninitialized element`); + +// ./test/core/table_copy.wast:2874 +assert_trap(() => invoke($50, `test`, [76]), `uninitialized element`); + +// ./test/core/table_copy.wast:2875 +assert_trap(() => invoke($50, `test`, [77]), `uninitialized element`); + +// ./test/core/table_copy.wast:2876 +assert_trap(() => invoke($50, `test`, [78]), `uninitialized element`); + +// ./test/core/table_copy.wast:2877 +assert_trap(() => invoke($50, `test`, [79]), `uninitialized element`); + +// ./test/core/table_copy.wast:2878 +assert_trap(() => invoke($50, `test`, [80]), `uninitialized element`); + +// ./test/core/table_copy.wast:2879 +assert_trap(() => invoke($50, `test`, [81]), `uninitialized element`); + +// ./test/core/table_copy.wast:2880 +assert_trap(() => invoke($50, `test`, [82]), `uninitialized element`); + +// ./test/core/table_copy.wast:2881 +assert_trap(() => invoke($50, `test`, [83]), `uninitialized element`); + +// ./test/core/table_copy.wast:2882 +assert_trap(() => invoke($50, `test`, [84]), `uninitialized element`); + +// ./test/core/table_copy.wast:2883 +assert_trap(() => invoke($50, `test`, [85]), `uninitialized element`); + +// ./test/core/table_copy.wast:2884 +assert_trap(() => invoke($50, `test`, [86]), `uninitialized element`); + +// ./test/core/table_copy.wast:2885 +assert_trap(() => invoke($50, `test`, [87]), `uninitialized element`); + +// ./test/core/table_copy.wast:2886 +assert_trap(() => invoke($50, `test`, [88]), `uninitialized element`); + +// ./test/core/table_copy.wast:2887 +assert_trap(() => invoke($50, `test`, [89]), `uninitialized element`); + +// ./test/core/table_copy.wast:2888 +assert_trap(() => invoke($50, `test`, [90]), `uninitialized element`); + +// ./test/core/table_copy.wast:2889 +assert_trap(() => invoke($50, `test`, [91]), `uninitialized element`); + +// ./test/core/table_copy.wast:2890 +assert_trap(() => invoke($50, `test`, [92]), `uninitialized element`); + +// ./test/core/table_copy.wast:2891 +assert_trap(() => invoke($50, `test`, [93]), `uninitialized element`); + +// ./test/core/table_copy.wast:2892 +assert_trap(() => invoke($50, `test`, [94]), `uninitialized element`); + +// ./test/core/table_copy.wast:2893 +assert_trap(() => invoke($50, `test`, [95]), `uninitialized element`); + +// ./test/core/table_copy.wast:2894 +assert_trap(() => invoke($50, `test`, [96]), `uninitialized element`); + +// ./test/core/table_copy.wast:2895 +assert_trap(() => invoke($50, `test`, [97]), `uninitialized element`); + +// ./test/core/table_copy.wast:2896 +assert_trap(() => invoke($50, `test`, [98]), `uninitialized element`); + +// ./test/core/table_copy.wast:2897 +assert_trap(() => invoke($50, `test`, [99]), `uninitialized element`); + +// ./test/core/table_copy.wast:2898 +assert_trap(() => invoke($50, `test`, [100]), `uninitialized element`); + +// ./test/core/table_copy.wast:2899 +assert_trap(() => invoke($50, `test`, [101]), `uninitialized element`); + +// ./test/core/table_copy.wast:2900 +assert_trap(() => invoke($50, `test`, [102]), `uninitialized element`); + +// ./test/core/table_copy.wast:2901 +assert_trap(() => invoke($50, `test`, [103]), `uninitialized element`); + +// ./test/core/table_copy.wast:2902 +assert_trap(() => invoke($50, `test`, [104]), `uninitialized element`); + +// ./test/core/table_copy.wast:2903 +assert_trap(() => invoke($50, `test`, [105]), `uninitialized element`); + +// ./test/core/table_copy.wast:2904 +assert_trap(() => invoke($50, `test`, [106]), `uninitialized element`); + +// ./test/core/table_copy.wast:2905 +assert_trap(() => invoke($50, `test`, [107]), `uninitialized element`); + +// ./test/core/table_copy.wast:2906 +assert_trap(() => invoke($50, `test`, [108]), `uninitialized element`); + +// ./test/core/table_copy.wast:2907 +assert_trap(() => invoke($50, `test`, [109]), `uninitialized element`); + +// ./test/core/table_copy.wast:2908 +assert_trap(() => invoke($50, `test`, [110]), `uninitialized element`); + +// ./test/core/table_copy.wast:2909 +assert_trap(() => invoke($50, `test`, [111]), `uninitialized element`); + +// ./test/core/table_copy.wast:2910 +assert_return(() => invoke($50, `test`, [112]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2911 +assert_return(() => invoke($50, `test`, [113]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2912 +assert_return(() => invoke($50, `test`, [114]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2913 +assert_return(() => invoke($50, `test`, [115]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2914 +assert_return(() => invoke($50, `test`, [116]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2915 +assert_return(() => invoke($50, `test`, [117]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2916 +assert_return(() => invoke($50, `test`, [118]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2917 +assert_return(() => invoke($50, `test`, [119]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2918 +assert_return(() => invoke($50, `test`, [120]), [value("i32", 8)]); + +// ./test/core/table_copy.wast:2919 +assert_return(() => invoke($50, `test`, [121]), [value("i32", 9)]); + +// ./test/core/table_copy.wast:2920 +assert_return(() => invoke($50, `test`, [122]), [value("i32", 10)]); + +// ./test/core/table_copy.wast:2921 +assert_return(() => invoke($50, `test`, [123]), [value("i32", 11)]); + +// ./test/core/table_copy.wast:2922 +assert_return(() => invoke($50, `test`, [124]), [value("i32", 12)]); + +// ./test/core/table_copy.wast:2923 +assert_return(() => invoke($50, `test`, [125]), [value("i32", 13)]); + +// ./test/core/table_copy.wast:2924 +assert_return(() => invoke($50, `test`, [126]), [value("i32", 14)]); + +// ./test/core/table_copy.wast:2925 +assert_return(() => invoke($50, `test`, [127]), [value("i32", 15)]); + +// ./test/core/table_copy.wast:2927 +let $51 = instantiate(`(module + (type (func (result i32))) + (table 128 128 funcref) + (elem (i32.const 0) + $$f0 $$f1 $$f2 $$f3 $$f4 $$f5 $$f6 $$f7 $$f8 $$f9 $$f10 $$f11 $$f12 $$f13 $$f14 $$f15) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$targetOffs i32) (param $$srcOffs i32) (param $$len i32) + (table.copy (local.get $$targetOffs) (local.get $$srcOffs) (local.get $$len))))`); + +// ./test/core/table_copy.wast:2953 +assert_trap(() => invoke($51, `run`, [112, 0, -32]), `out of bounds table access`); + +// ./test/core/table_copy.wast:2955 +assert_return(() => invoke($51, `test`, [0]), [value("i32", 0)]); + +// ./test/core/table_copy.wast:2956 +assert_return(() => invoke($51, `test`, [1]), [value("i32", 1)]); + +// ./test/core/table_copy.wast:2957 +assert_return(() => invoke($51, `test`, [2]), [value("i32", 2)]); + +// ./test/core/table_copy.wast:2958 +assert_return(() => invoke($51, `test`, [3]), [value("i32", 3)]); + +// ./test/core/table_copy.wast:2959 +assert_return(() => invoke($51, `test`, [4]), [value("i32", 4)]); + +// ./test/core/table_copy.wast:2960 +assert_return(() => invoke($51, `test`, [5]), [value("i32", 5)]); + +// ./test/core/table_copy.wast:2961 +assert_return(() => invoke($51, `test`, [6]), [value("i32", 6)]); + +// ./test/core/table_copy.wast:2962 +assert_return(() => invoke($51, `test`, [7]), [value("i32", 7)]); + +// ./test/core/table_copy.wast:2963 +assert_return(() => invoke($51, `test`, [8]), [value("i32", 8)]); + +// ./test/core/table_copy.wast:2964 +assert_return(() => invoke($51, `test`, [9]), [value("i32", 9)]); + +// ./test/core/table_copy.wast:2965 +assert_return(() => invoke($51, `test`, [10]), [value("i32", 10)]); + +// ./test/core/table_copy.wast:2966 +assert_return(() => invoke($51, `test`, [11]), [value("i32", 11)]); + +// ./test/core/table_copy.wast:2967 +assert_return(() => invoke($51, `test`, [12]), [value("i32", 12)]); + +// ./test/core/table_copy.wast:2968 +assert_return(() => invoke($51, `test`, [13]), [value("i32", 13)]); + +// ./test/core/table_copy.wast:2969 +assert_return(() => invoke($51, `test`, [14]), [value("i32", 14)]); + +// ./test/core/table_copy.wast:2970 +assert_return(() => invoke($51, `test`, [15]), [value("i32", 15)]); + +// ./test/core/table_copy.wast:2971 +assert_trap(() => invoke($51, `test`, [16]), `uninitialized element`); + +// ./test/core/table_copy.wast:2972 +assert_trap(() => invoke($51, `test`, [17]), `uninitialized element`); + +// ./test/core/table_copy.wast:2973 +assert_trap(() => invoke($51, `test`, [18]), `uninitialized element`); + +// ./test/core/table_copy.wast:2974 +assert_trap(() => invoke($51, `test`, [19]), `uninitialized element`); + +// ./test/core/table_copy.wast:2975 +assert_trap(() => invoke($51, `test`, [20]), `uninitialized element`); + +// ./test/core/table_copy.wast:2976 +assert_trap(() => invoke($51, `test`, [21]), `uninitialized element`); + +// ./test/core/table_copy.wast:2977 +assert_trap(() => invoke($51, `test`, [22]), `uninitialized element`); + +// ./test/core/table_copy.wast:2978 +assert_trap(() => invoke($51, `test`, [23]), `uninitialized element`); + +// ./test/core/table_copy.wast:2979 +assert_trap(() => invoke($51, `test`, [24]), `uninitialized element`); + +// ./test/core/table_copy.wast:2980 +assert_trap(() => invoke($51, `test`, [25]), `uninitialized element`); + +// ./test/core/table_copy.wast:2981 +assert_trap(() => invoke($51, `test`, [26]), `uninitialized element`); + +// ./test/core/table_copy.wast:2982 +assert_trap(() => invoke($51, `test`, [27]), `uninitialized element`); + +// ./test/core/table_copy.wast:2983 +assert_trap(() => invoke($51, `test`, [28]), `uninitialized element`); + +// ./test/core/table_copy.wast:2984 +assert_trap(() => invoke($51, `test`, [29]), `uninitialized element`); + +// ./test/core/table_copy.wast:2985 +assert_trap(() => invoke($51, `test`, [30]), `uninitialized element`); + +// ./test/core/table_copy.wast:2986 +assert_trap(() => invoke($51, `test`, [31]), `uninitialized element`); + +// ./test/core/table_copy.wast:2987 +assert_trap(() => invoke($51, `test`, [32]), `uninitialized element`); + +// ./test/core/table_copy.wast:2988 +assert_trap(() => invoke($51, `test`, [33]), `uninitialized element`); + +// ./test/core/table_copy.wast:2989 +assert_trap(() => invoke($51, `test`, [34]), `uninitialized element`); + +// ./test/core/table_copy.wast:2990 +assert_trap(() => invoke($51, `test`, [35]), `uninitialized element`); + +// ./test/core/table_copy.wast:2991 +assert_trap(() => invoke($51, `test`, [36]), `uninitialized element`); + +// ./test/core/table_copy.wast:2992 +assert_trap(() => invoke($51, `test`, [37]), `uninitialized element`); + +// ./test/core/table_copy.wast:2993 +assert_trap(() => invoke($51, `test`, [38]), `uninitialized element`); + +// ./test/core/table_copy.wast:2994 +assert_trap(() => invoke($51, `test`, [39]), `uninitialized element`); + +// ./test/core/table_copy.wast:2995 +assert_trap(() => invoke($51, `test`, [40]), `uninitialized element`); + +// ./test/core/table_copy.wast:2996 +assert_trap(() => invoke($51, `test`, [41]), `uninitialized element`); + +// ./test/core/table_copy.wast:2997 +assert_trap(() => invoke($51, `test`, [42]), `uninitialized element`); + +// ./test/core/table_copy.wast:2998 +assert_trap(() => invoke($51, `test`, [43]), `uninitialized element`); + +// ./test/core/table_copy.wast:2999 +assert_trap(() => invoke($51, `test`, [44]), `uninitialized element`); + +// ./test/core/table_copy.wast:3000 +assert_trap(() => invoke($51, `test`, [45]), `uninitialized element`); + +// ./test/core/table_copy.wast:3001 +assert_trap(() => invoke($51, `test`, [46]), `uninitialized element`); + +// ./test/core/table_copy.wast:3002 +assert_trap(() => invoke($51, `test`, [47]), `uninitialized element`); + +// ./test/core/table_copy.wast:3003 +assert_trap(() => invoke($51, `test`, [48]), `uninitialized element`); + +// ./test/core/table_copy.wast:3004 +assert_trap(() => invoke($51, `test`, [49]), `uninitialized element`); + +// ./test/core/table_copy.wast:3005 +assert_trap(() => invoke($51, `test`, [50]), `uninitialized element`); + +// ./test/core/table_copy.wast:3006 +assert_trap(() => invoke($51, `test`, [51]), `uninitialized element`); + +// ./test/core/table_copy.wast:3007 +assert_trap(() => invoke($51, `test`, [52]), `uninitialized element`); + +// ./test/core/table_copy.wast:3008 +assert_trap(() => invoke($51, `test`, [53]), `uninitialized element`); + +// ./test/core/table_copy.wast:3009 +assert_trap(() => invoke($51, `test`, [54]), `uninitialized element`); + +// ./test/core/table_copy.wast:3010 +assert_trap(() => invoke($51, `test`, [55]), `uninitialized element`); + +// ./test/core/table_copy.wast:3011 +assert_trap(() => invoke($51, `test`, [56]), `uninitialized element`); + +// ./test/core/table_copy.wast:3012 +assert_trap(() => invoke($51, `test`, [57]), `uninitialized element`); + +// ./test/core/table_copy.wast:3013 +assert_trap(() => invoke($51, `test`, [58]), `uninitialized element`); + +// ./test/core/table_copy.wast:3014 +assert_trap(() => invoke($51, `test`, [59]), `uninitialized element`); + +// ./test/core/table_copy.wast:3015 +assert_trap(() => invoke($51, `test`, [60]), `uninitialized element`); + +// ./test/core/table_copy.wast:3016 +assert_trap(() => invoke($51, `test`, [61]), `uninitialized element`); + +// ./test/core/table_copy.wast:3017 +assert_trap(() => invoke($51, `test`, [62]), `uninitialized element`); + +// ./test/core/table_copy.wast:3018 +assert_trap(() => invoke($51, `test`, [63]), `uninitialized element`); + +// ./test/core/table_copy.wast:3019 +assert_trap(() => invoke($51, `test`, [64]), `uninitialized element`); + +// ./test/core/table_copy.wast:3020 +assert_trap(() => invoke($51, `test`, [65]), `uninitialized element`); + +// ./test/core/table_copy.wast:3021 +assert_trap(() => invoke($51, `test`, [66]), `uninitialized element`); + +// ./test/core/table_copy.wast:3022 +assert_trap(() => invoke($51, `test`, [67]), `uninitialized element`); + +// ./test/core/table_copy.wast:3023 +assert_trap(() => invoke($51, `test`, [68]), `uninitialized element`); + +// ./test/core/table_copy.wast:3024 +assert_trap(() => invoke($51, `test`, [69]), `uninitialized element`); + +// ./test/core/table_copy.wast:3025 +assert_trap(() => invoke($51, `test`, [70]), `uninitialized element`); + +// ./test/core/table_copy.wast:3026 +assert_trap(() => invoke($51, `test`, [71]), `uninitialized element`); + +// ./test/core/table_copy.wast:3027 +assert_trap(() => invoke($51, `test`, [72]), `uninitialized element`); + +// ./test/core/table_copy.wast:3028 +assert_trap(() => invoke($51, `test`, [73]), `uninitialized element`); + +// ./test/core/table_copy.wast:3029 +assert_trap(() => invoke($51, `test`, [74]), `uninitialized element`); + +// ./test/core/table_copy.wast:3030 +assert_trap(() => invoke($51, `test`, [75]), `uninitialized element`); + +// ./test/core/table_copy.wast:3031 +assert_trap(() => invoke($51, `test`, [76]), `uninitialized element`); + +// ./test/core/table_copy.wast:3032 +assert_trap(() => invoke($51, `test`, [77]), `uninitialized element`); + +// ./test/core/table_copy.wast:3033 +assert_trap(() => invoke($51, `test`, [78]), `uninitialized element`); + +// ./test/core/table_copy.wast:3034 +assert_trap(() => invoke($51, `test`, [79]), `uninitialized element`); + +// ./test/core/table_copy.wast:3035 +assert_trap(() => invoke($51, `test`, [80]), `uninitialized element`); + +// ./test/core/table_copy.wast:3036 +assert_trap(() => invoke($51, `test`, [81]), `uninitialized element`); + +// ./test/core/table_copy.wast:3037 +assert_trap(() => invoke($51, `test`, [82]), `uninitialized element`); + +// ./test/core/table_copy.wast:3038 +assert_trap(() => invoke($51, `test`, [83]), `uninitialized element`); + +// ./test/core/table_copy.wast:3039 +assert_trap(() => invoke($51, `test`, [84]), `uninitialized element`); + +// ./test/core/table_copy.wast:3040 +assert_trap(() => invoke($51, `test`, [85]), `uninitialized element`); + +// ./test/core/table_copy.wast:3041 +assert_trap(() => invoke($51, `test`, [86]), `uninitialized element`); + +// ./test/core/table_copy.wast:3042 +assert_trap(() => invoke($51, `test`, [87]), `uninitialized element`); + +// ./test/core/table_copy.wast:3043 +assert_trap(() => invoke($51, `test`, [88]), `uninitialized element`); + +// ./test/core/table_copy.wast:3044 +assert_trap(() => invoke($51, `test`, [89]), `uninitialized element`); + +// ./test/core/table_copy.wast:3045 +assert_trap(() => invoke($51, `test`, [90]), `uninitialized element`); + +// ./test/core/table_copy.wast:3046 +assert_trap(() => invoke($51, `test`, [91]), `uninitialized element`); + +// ./test/core/table_copy.wast:3047 +assert_trap(() => invoke($51, `test`, [92]), `uninitialized element`); + +// ./test/core/table_copy.wast:3048 +assert_trap(() => invoke($51, `test`, [93]), `uninitialized element`); + +// ./test/core/table_copy.wast:3049 +assert_trap(() => invoke($51, `test`, [94]), `uninitialized element`); + +// ./test/core/table_copy.wast:3050 +assert_trap(() => invoke($51, `test`, [95]), `uninitialized element`); + +// ./test/core/table_copy.wast:3051 +assert_trap(() => invoke($51, `test`, [96]), `uninitialized element`); + +// ./test/core/table_copy.wast:3052 +assert_trap(() => invoke($51, `test`, [97]), `uninitialized element`); + +// ./test/core/table_copy.wast:3053 +assert_trap(() => invoke($51, `test`, [98]), `uninitialized element`); + +// ./test/core/table_copy.wast:3054 +assert_trap(() => invoke($51, `test`, [99]), `uninitialized element`); + +// ./test/core/table_copy.wast:3055 +assert_trap(() => invoke($51, `test`, [100]), `uninitialized element`); + +// ./test/core/table_copy.wast:3056 +assert_trap(() => invoke($51, `test`, [101]), `uninitialized element`); + +// ./test/core/table_copy.wast:3057 +assert_trap(() => invoke($51, `test`, [102]), `uninitialized element`); + +// ./test/core/table_copy.wast:3058 +assert_trap(() => invoke($51, `test`, [103]), `uninitialized element`); + +// ./test/core/table_copy.wast:3059 +assert_trap(() => invoke($51, `test`, [104]), `uninitialized element`); + +// ./test/core/table_copy.wast:3060 +assert_trap(() => invoke($51, `test`, [105]), `uninitialized element`); + +// ./test/core/table_copy.wast:3061 +assert_trap(() => invoke($51, `test`, [106]), `uninitialized element`); + +// ./test/core/table_copy.wast:3062 +assert_trap(() => invoke($51, `test`, [107]), `uninitialized element`); + +// ./test/core/table_copy.wast:3063 +assert_trap(() => invoke($51, `test`, [108]), `uninitialized element`); + +// ./test/core/table_copy.wast:3064 +assert_trap(() => invoke($51, `test`, [109]), `uninitialized element`); + +// ./test/core/table_copy.wast:3065 +assert_trap(() => invoke($51, `test`, [110]), `uninitialized element`); + +// ./test/core/table_copy.wast:3066 +assert_trap(() => invoke($51, `test`, [111]), `uninitialized element`); + +// ./test/core/table_copy.wast:3067 +assert_trap(() => invoke($51, `test`, [112]), `uninitialized element`); + +// ./test/core/table_copy.wast:3068 +assert_trap(() => invoke($51, `test`, [113]), `uninitialized element`); + +// ./test/core/table_copy.wast:3069 +assert_trap(() => invoke($51, `test`, [114]), `uninitialized element`); + +// ./test/core/table_copy.wast:3070 +assert_trap(() => invoke($51, `test`, [115]), `uninitialized element`); + +// ./test/core/table_copy.wast:3071 +assert_trap(() => invoke($51, `test`, [116]), `uninitialized element`); + +// ./test/core/table_copy.wast:3072 +assert_trap(() => invoke($51, `test`, [117]), `uninitialized element`); + +// ./test/core/table_copy.wast:3073 +assert_trap(() => invoke($51, `test`, [118]), `uninitialized element`); + +// ./test/core/table_copy.wast:3074 +assert_trap(() => invoke($51, `test`, [119]), `uninitialized element`); + +// ./test/core/table_copy.wast:3075 +assert_trap(() => invoke($51, `test`, [120]), `uninitialized element`); + +// ./test/core/table_copy.wast:3076 +assert_trap(() => invoke($51, `test`, [121]), `uninitialized element`); + +// ./test/core/table_copy.wast:3077 +assert_trap(() => invoke($51, `test`, [122]), `uninitialized element`); + +// ./test/core/table_copy.wast:3078 +assert_trap(() => invoke($51, `test`, [123]), `uninitialized element`); + +// ./test/core/table_copy.wast:3079 +assert_trap(() => invoke($51, `test`, [124]), `uninitialized element`); + +// ./test/core/table_copy.wast:3080 +assert_trap(() => invoke($51, `test`, [125]), `uninitialized element`); + +// ./test/core/table_copy.wast:3081 +assert_trap(() => invoke($51, `test`, [126]), `uninitialized element`); + +// ./test/core/table_copy.wast:3082 +assert_trap(() => invoke($51, `test`, [127]), `uninitialized element`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/table_fill.wast.js b/js/src/jit-test/tests/wasm/spec/spec/table_fill.wast.js new file mode 100644 index 0000000000..6b2cc53da4 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/table_fill.wast.js @@ -0,0 +1,238 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/table_fill.wast + +// ./test/core/table_fill.wast:1 +let $0 = instantiate(`(module + (table $$t 10 externref) + + (func (export "fill") (param $$i i32) (param $$r externref) (param $$n i32) + (table.fill $$t (local.get $$i) (local.get $$r) (local.get $$n)) + ) + + (func (export "fill-abbrev") (param $$i i32) (param $$r externref) (param $$n i32) + (table.fill (local.get $$i) (local.get $$r) (local.get $$n)) + ) + + (func (export "get") (param $$i i32) (result externref) + (table.get $$t (local.get $$i)) + ) +)`); + +// ./test/core/table_fill.wast:17 +assert_return(() => invoke($0, `get`, [1]), [value('externref', null)]); + +// ./test/core/table_fill.wast:18 +assert_return(() => invoke($0, `get`, [2]), [value('externref', null)]); + +// ./test/core/table_fill.wast:19 +assert_return(() => invoke($0, `get`, [3]), [value('externref', null)]); + +// ./test/core/table_fill.wast:20 +assert_return(() => invoke($0, `get`, [4]), [value('externref', null)]); + +// ./test/core/table_fill.wast:21 +assert_return(() => invoke($0, `get`, [5]), [value('externref', null)]); + +// ./test/core/table_fill.wast:23 +assert_return(() => invoke($0, `fill`, [2, externref(1), 3]), []); + +// ./test/core/table_fill.wast:24 +assert_return(() => invoke($0, `get`, [1]), [value('externref', null)]); + +// ./test/core/table_fill.wast:25 +assert_return(() => invoke($0, `get`, [2]), [new ExternRefResult(1)]); + +// ./test/core/table_fill.wast:26 +assert_return(() => invoke($0, `get`, [3]), [new ExternRefResult(1)]); + +// ./test/core/table_fill.wast:27 +assert_return(() => invoke($0, `get`, [4]), [new ExternRefResult(1)]); + +// ./test/core/table_fill.wast:28 +assert_return(() => invoke($0, `get`, [5]), [value('externref', null)]); + +// ./test/core/table_fill.wast:30 +assert_return(() => invoke($0, `fill`, [4, externref(2), 2]), []); + +// ./test/core/table_fill.wast:31 +assert_return(() => invoke($0, `get`, [3]), [new ExternRefResult(1)]); + +// ./test/core/table_fill.wast:32 +assert_return(() => invoke($0, `get`, [4]), [new ExternRefResult(2)]); + +// ./test/core/table_fill.wast:33 +assert_return(() => invoke($0, `get`, [5]), [new ExternRefResult(2)]); + +// ./test/core/table_fill.wast:34 +assert_return(() => invoke($0, `get`, [6]), [value('externref', null)]); + +// ./test/core/table_fill.wast:36 +assert_return(() => invoke($0, `fill`, [4, externref(3), 0]), []); + +// ./test/core/table_fill.wast:37 +assert_return(() => invoke($0, `get`, [3]), [new ExternRefResult(1)]); + +// ./test/core/table_fill.wast:38 +assert_return(() => invoke($0, `get`, [4]), [new ExternRefResult(2)]); + +// ./test/core/table_fill.wast:39 +assert_return(() => invoke($0, `get`, [5]), [new ExternRefResult(2)]); + +// ./test/core/table_fill.wast:41 +assert_return(() => invoke($0, `fill`, [8, externref(4), 2]), []); + +// ./test/core/table_fill.wast:42 +assert_return(() => invoke($0, `get`, [7]), [value('externref', null)]); + +// ./test/core/table_fill.wast:43 +assert_return(() => invoke($0, `get`, [8]), [new ExternRefResult(4)]); + +// ./test/core/table_fill.wast:44 +assert_return(() => invoke($0, `get`, [9]), [new ExternRefResult(4)]); + +// ./test/core/table_fill.wast:46 +assert_return(() => invoke($0, `fill-abbrev`, [9, null, 1]), []); + +// ./test/core/table_fill.wast:47 +assert_return(() => invoke($0, `get`, [8]), [new ExternRefResult(4)]); + +// ./test/core/table_fill.wast:48 +assert_return(() => invoke($0, `get`, [9]), [value('externref', null)]); + +// ./test/core/table_fill.wast:50 +assert_return(() => invoke($0, `fill`, [10, externref(5), 0]), []); + +// ./test/core/table_fill.wast:51 +assert_return(() => invoke($0, `get`, [9]), [value('externref', null)]); + +// ./test/core/table_fill.wast:53 +assert_trap(() => invoke($0, `fill`, [8, externref(6), 3]), `out of bounds table access`); + +// ./test/core/table_fill.wast:57 +assert_return(() => invoke($0, `get`, [7]), [value('externref', null)]); + +// ./test/core/table_fill.wast:58 +assert_return(() => invoke($0, `get`, [8]), [new ExternRefResult(4)]); + +// ./test/core/table_fill.wast:59 +assert_return(() => invoke($0, `get`, [9]), [value('externref', null)]); + +// ./test/core/table_fill.wast:61 +assert_trap(() => invoke($0, `fill`, [11, null, 0]), `out of bounds table access`); + +// ./test/core/table_fill.wast:66 +assert_trap(() => invoke($0, `fill`, [11, null, 10]), `out of bounds table access`); + +// ./test/core/table_fill.wast:74 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-index-value-length-empty-vs-i32-i32 + (table.fill $$t) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_fill.wast:83 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-index-empty-vs-i32 + (table.fill $$t (ref.null extern) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_fill.wast:92 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-value-empty-vs + (table.fill $$t (i32.const 1) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_fill.wast:101 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-length-empty-vs-i32 + (table.fill $$t (i32.const 1) (ref.null extern)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_fill.wast:110 +assert_invalid( + () => instantiate(`(module + (table $$t 0 externref) + (func $$type-index-f32-vs-i32 + (table.fill $$t (f32.const 1) (ref.null extern) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_fill.wast:119 +assert_invalid( + () => instantiate(`(module + (table $$t 0 funcref) + (func $$type-value-vs-funcref (param $$r externref) + (table.fill $$t (i32.const 1) (local.get $$r) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_fill.wast:128 +assert_invalid( + () => instantiate(`(module + (table $$t 0 externref) + (func $$type-length-f32-vs-i32 + (table.fill $$t (i32.const 1) (ref.null extern) (f32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_fill.wast:138 +assert_invalid( + () => instantiate(`(module + (table $$t1 1 externref) + (table $$t2 1 funcref) + (func $$type-value-externref-vs-funcref-multi (param $$r externref) + (table.fill $$t2 (i32.const 0) (local.get $$r) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_fill.wast:149 +assert_invalid( + () => instantiate(`(module + (table $$t 1 externref) + (func $$type-result-empty-vs-num (result i32) + (table.fill $$t (i32.const 0) (ref.null extern) (i32.const 1)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/table_get.wast.js b/js/src/jit-test/tests/wasm/spec/spec/table_get.wast.js new file mode 100644 index 0000000000..d744cf692f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/table_get.wast.js @@ -0,0 +1,126 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/table_get.wast + +// ./test/core/table_get.wast:1 +let $0 = instantiate(`(module + (table $$t2 2 externref) + (table $$t3 3 funcref) + (elem (table $$t3) (i32.const 1) func $$dummy) + (func $$dummy) + + (func (export "init") (param $$r externref) + (table.set $$t2 (i32.const 1) (local.get $$r)) + (table.set $$t3 (i32.const 2) (table.get $$t3 (i32.const 1))) + ) + + (func (export "get-externref") (param $$i i32) (result externref) + (table.get (local.get $$i)) + ) + (func $$f3 (export "get-funcref") (param $$i i32) (result funcref) + (table.get $$t3 (local.get $$i)) + ) + + (func (export "is_null-funcref") (param $$i i32) (result i32) + (ref.is_null (call $$f3 (local.get $$i))) + ) +)`); + +// ./test/core/table_get.wast:24 +invoke($0, `init`, [externref(1)]); + +// ./test/core/table_get.wast:26 +assert_return(() => invoke($0, `get-externref`, [0]), [value('externref', null)]); + +// ./test/core/table_get.wast:27 +assert_return(() => invoke($0, `get-externref`, [1]), [new ExternRefResult(1)]); + +// ./test/core/table_get.wast:29 +assert_return(() => invoke($0, `get-funcref`, [0]), [value('anyfunc', null)]); + +// ./test/core/table_get.wast:30 +assert_return(() => invoke($0, `is_null-funcref`, [1]), [value("i32", 0)]); + +// ./test/core/table_get.wast:31 +assert_return(() => invoke($0, `is_null-funcref`, [2]), [value("i32", 0)]); + +// ./test/core/table_get.wast:33 +assert_trap(() => invoke($0, `get-externref`, [2]), `out of bounds table access`); + +// ./test/core/table_get.wast:34 +assert_trap(() => invoke($0, `get-funcref`, [3]), `out of bounds table access`); + +// ./test/core/table_get.wast:35 +assert_trap(() => invoke($0, `get-externref`, [-1]), `out of bounds table access`); + +// ./test/core/table_get.wast:36 +assert_trap(() => invoke($0, `get-funcref`, [-1]), `out of bounds table access`); + +// ./test/core/table_get.wast:41 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-index-empty-vs-i32 (result externref) + (table.get $$t) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_get.wast:50 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-index-f32-vs-i32 (result externref) + (table.get $$t (f32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_get.wast:60 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-result-externref-vs-empty + (table.get $$t (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_get.wast:69 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-result-externref-vs-funcref (result funcref) + (table.get $$t (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_get.wast:79 +assert_invalid( + () => instantiate(`(module + (table $$t1 1 funcref) + (table $$t2 1 externref) + (func $$type-result-externref-vs-funcref-multi (result funcref) + (table.get $$t2 (i32.const 0)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/table_grow.wast.js b/js/src/jit-test/tests/wasm/spec/spec/table_grow.wast.js new file mode 100644 index 0000000000..f5bea52154 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/table_grow.wast.js @@ -0,0 +1,271 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/table_grow.wast + +// ./test/core/table_grow.wast:1 +let $0 = instantiate(`(module + (table $$t 0 externref) + + (func (export "get") (param $$i i32) (result externref) (table.get $$t (local.get $$i))) + (func (export "set") (param $$i i32) (param $$r externref) (table.set $$t (local.get $$i) (local.get $$r))) + + (func (export "grow") (param $$sz i32) (param $$init externref) (result i32) + (table.grow $$t (local.get $$init) (local.get $$sz)) + ) + (func (export "grow-abbrev") (param $$sz i32) (param $$init externref) (result i32) + (table.grow (local.get $$init) (local.get $$sz)) + ) + (func (export "size") (result i32) (table.size $$t)) +)`); + +// ./test/core/table_grow.wast:16 +assert_return(() => invoke($0, `size`, []), [value("i32", 0)]); + +// ./test/core/table_grow.wast:17 +assert_trap(() => invoke($0, `set`, [0, externref(2)]), `out of bounds table access`); + +// ./test/core/table_grow.wast:18 +assert_trap(() => invoke($0, `get`, [0]), `out of bounds table access`); + +// ./test/core/table_grow.wast:20 +assert_return(() => invoke($0, `grow`, [1, null]), [value("i32", 0)]); + +// ./test/core/table_grow.wast:21 +assert_return(() => invoke($0, `size`, []), [value("i32", 1)]); + +// ./test/core/table_grow.wast:22 +assert_return(() => invoke($0, `get`, [0]), [value('externref', null)]); + +// ./test/core/table_grow.wast:23 +assert_return(() => invoke($0, `set`, [0, externref(2)]), []); + +// ./test/core/table_grow.wast:24 +assert_return(() => invoke($0, `get`, [0]), [new ExternRefResult(2)]); + +// ./test/core/table_grow.wast:25 +assert_trap(() => invoke($0, `set`, [1, externref(2)]), `out of bounds table access`); + +// ./test/core/table_grow.wast:26 +assert_trap(() => invoke($0, `get`, [1]), `out of bounds table access`); + +// ./test/core/table_grow.wast:28 +assert_return(() => invoke($0, `grow-abbrev`, [4, externref(3)]), [value("i32", 1)]); + +// ./test/core/table_grow.wast:29 +assert_return(() => invoke($0, `size`, []), [value("i32", 5)]); + +// ./test/core/table_grow.wast:30 +assert_return(() => invoke($0, `get`, [0]), [new ExternRefResult(2)]); + +// ./test/core/table_grow.wast:31 +assert_return(() => invoke($0, `set`, [0, externref(2)]), []); + +// ./test/core/table_grow.wast:32 +assert_return(() => invoke($0, `get`, [0]), [new ExternRefResult(2)]); + +// ./test/core/table_grow.wast:33 +assert_return(() => invoke($0, `get`, [1]), [new ExternRefResult(3)]); + +// ./test/core/table_grow.wast:34 +assert_return(() => invoke($0, `get`, [4]), [new ExternRefResult(3)]); + +// ./test/core/table_grow.wast:35 +assert_return(() => invoke($0, `set`, [4, externref(4)]), []); + +// ./test/core/table_grow.wast:36 +assert_return(() => invoke($0, `get`, [4]), [new ExternRefResult(4)]); + +// ./test/core/table_grow.wast:37 +assert_trap(() => invoke($0, `set`, [5, externref(2)]), `out of bounds table access`); + +// ./test/core/table_grow.wast:38 +assert_trap(() => invoke($0, `get`, [5]), `out of bounds table access`); + +// ./test/core/table_grow.wast:42 +let $1 = instantiate(`(module + (table $$t 0x10 funcref) + (elem declare func $$f) + (func $$f (export "grow") (result i32) + (table.grow $$t (ref.func $$f) (i32.const 0xffff_fff0)) + ) +)`); + +// ./test/core/table_grow.wast:50 +assert_return(() => invoke($1, `grow`, []), [value("i32", -1)]); + +// ./test/core/table_grow.wast:53 +let $2 = instantiate(`(module + (table $$t 0 externref) + (func (export "grow") (param i32) (result i32) + (table.grow $$t (ref.null extern) (local.get 0)) + ) +)`); + +// ./test/core/table_grow.wast:60 +assert_return(() => invoke($2, `grow`, [0]), [value("i32", 0)]); + +// ./test/core/table_grow.wast:61 +assert_return(() => invoke($2, `grow`, [1]), [value("i32", 0)]); + +// ./test/core/table_grow.wast:62 +assert_return(() => invoke($2, `grow`, [0]), [value("i32", 1)]); + +// ./test/core/table_grow.wast:63 +assert_return(() => invoke($2, `grow`, [2]), [value("i32", 1)]); + +// ./test/core/table_grow.wast:64 +assert_return(() => invoke($2, `grow`, [800]), [value("i32", 3)]); + +// ./test/core/table_grow.wast:67 +let $3 = instantiate(`(module + (table $$t 0 10 externref) + (func (export "grow") (param i32) (result i32) + (table.grow $$t (ref.null extern) (local.get 0)) + ) +)`); + +// ./test/core/table_grow.wast:74 +assert_return(() => invoke($3, `grow`, [0]), [value("i32", 0)]); + +// ./test/core/table_grow.wast:75 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", 0)]); + +// ./test/core/table_grow.wast:76 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", 1)]); + +// ./test/core/table_grow.wast:77 +assert_return(() => invoke($3, `grow`, [2]), [value("i32", 2)]); + +// ./test/core/table_grow.wast:78 +assert_return(() => invoke($3, `grow`, [6]), [value("i32", 4)]); + +// ./test/core/table_grow.wast:79 +assert_return(() => invoke($3, `grow`, [0]), [value("i32", 10)]); + +// ./test/core/table_grow.wast:80 +assert_return(() => invoke($3, `grow`, [1]), [value("i32", -1)]); + +// ./test/core/table_grow.wast:81 +assert_return(() => invoke($3, `grow`, [65536]), [value("i32", -1)]); + +// ./test/core/table_grow.wast:84 +let $4 = instantiate(`(module + (table $$t 10 funcref) + (func (export "grow") (param i32) (result i32) + (table.grow $$t (ref.null func) (local.get 0)) + ) + (elem declare func 1) + (func (export "check-table-null") (param i32 i32) (result funcref) + (local funcref) + (local.set 2 (ref.func 1)) + (block + (loop + (local.set 2 (table.get $$t (local.get 0))) + (br_if 1 (i32.eqz (ref.is_null (local.get 2)))) + (br_if 1 (i32.ge_u (local.get 0) (local.get 1))) + (local.set 0 (i32.add (local.get 0) (i32.const 1))) + (br_if 0 (i32.le_u (local.get 0) (local.get 1))) + ) + ) + (local.get 2) + ) +)`); + +// ./test/core/table_grow.wast:106 +assert_return(() => invoke($4, `check-table-null`, [0, 9]), [value('anyfunc', null)]); + +// ./test/core/table_grow.wast:107 +assert_return(() => invoke($4, `grow`, [10]), [value("i32", 10)]); + +// ./test/core/table_grow.wast:108 +assert_return(() => invoke($4, `check-table-null`, [0, 19]), [value('anyfunc', null)]); + +// ./test/core/table_grow.wast:113 +assert_invalid( + () => instantiate(`(module + (table $$t 0 externref) + (func $$type-init-size-empty-vs-i32-externref (result i32) + (table.grow $$t) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_grow.wast:122 +assert_invalid( + () => instantiate(`(module + (table $$t 0 externref) + (func $$type-size-empty-vs-i32 (result i32) + (table.grow $$t (ref.null extern)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_grow.wast:131 +assert_invalid( + () => instantiate(`(module + (table $$t 0 externref) + (func $$type-init-empty-vs-externref (result i32) + (table.grow $$t (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_grow.wast:140 +assert_invalid( + () => instantiate(`(module + (table $$t 0 externref) + (func $$type-size-f32-vs-i32 (result i32) + (table.grow $$t (ref.null extern) (f32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_grow.wast:149 +assert_invalid( + () => instantiate(`(module + (table $$t 0 funcref) + (func $$type-init-externref-vs-funcref (param $$r externref) (result i32) + (table.grow $$t (local.get $$r) (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_grow.wast:159 +assert_invalid( + () => instantiate(`(module + (table $$t 1 externref) + (func $$type-result-i32-vs-empty + (table.grow $$t (ref.null extern) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_grow.wast:168 +assert_invalid( + () => instantiate(`(module + (table $$t 1 externref) + (func $$type-result-i32-vs-f32 (result f32) + (table.grow $$t (ref.null extern) (i32.const 0)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/table_init.wast.js b/js/src/jit-test/tests/wasm/spec/spec/table_init.wast.js new file mode 100644 index 0000000000..a9457bbb2c --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/table_init.wast.js @@ -0,0 +1,3674 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/table_init.wast + +// ./test/core/table_init.wast:6 +let $0 = instantiate(`(module + (func (export "ef0") (result i32) (i32.const 0)) + (func (export "ef1") (result i32) (i32.const 1)) + (func (export "ef2") (result i32) (i32.const 2)) + (func (export "ef3") (result i32) (i32.const 3)) + (func (export "ef4") (result i32) (i32.const 4)) +)`); + +// ./test/core/table_init.wast:13 +register($0, `a`); + +// ./test/core/table_init.wast:15 +let $1 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.init $$t0 1 (i32.const 7) (i32.const 0) (i32.const 4))) + (func (export "check") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_init.wast:41 +invoke($1, `test`, []); + +// ./test/core/table_init.wast:42 +assert_trap(() => invoke($1, `check`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:43 +assert_trap(() => invoke($1, `check`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:44 +assert_return(() => invoke($1, `check`, [2]), [value("i32", 3)]); + +// ./test/core/table_init.wast:45 +assert_return(() => invoke($1, `check`, [3]), [value("i32", 1)]); + +// ./test/core/table_init.wast:46 +assert_return(() => invoke($1, `check`, [4]), [value("i32", 4)]); + +// ./test/core/table_init.wast:47 +assert_return(() => invoke($1, `check`, [5]), [value("i32", 1)]); + +// ./test/core/table_init.wast:48 +assert_trap(() => invoke($1, `check`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:49 +assert_return(() => invoke($1, `check`, [7]), [value("i32", 2)]); + +// ./test/core/table_init.wast:50 +assert_return(() => invoke($1, `check`, [8]), [value("i32", 7)]); + +// ./test/core/table_init.wast:51 +assert_return(() => invoke($1, `check`, [9]), [value("i32", 1)]); + +// ./test/core/table_init.wast:52 +assert_return(() => invoke($1, `check`, [10]), [value("i32", 8)]); + +// ./test/core/table_init.wast:53 +assert_trap(() => invoke($1, `check`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:54 +assert_return(() => invoke($1, `check`, [12]), [value("i32", 7)]); + +// ./test/core/table_init.wast:55 +assert_return(() => invoke($1, `check`, [13]), [value("i32", 5)]); + +// ./test/core/table_init.wast:56 +assert_return(() => invoke($1, `check`, [14]), [value("i32", 2)]); + +// ./test/core/table_init.wast:57 +assert_return(() => invoke($1, `check`, [15]), [value("i32", 3)]); + +// ./test/core/table_init.wast:58 +assert_return(() => invoke($1, `check`, [16]), [value("i32", 6)]); + +// ./test/core/table_init.wast:59 +assert_trap(() => invoke($1, `check`, [17]), `uninitialized element`); + +// ./test/core/table_init.wast:60 +assert_trap(() => invoke($1, `check`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:61 +assert_trap(() => invoke($1, `check`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:62 +assert_trap(() => invoke($1, `check`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:63 +assert_trap(() => invoke($1, `check`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:64 +assert_trap(() => invoke($1, `check`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:65 +assert_trap(() => invoke($1, `check`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:66 +assert_trap(() => invoke($1, `check`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:67 +assert_trap(() => invoke($1, `check`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:68 +assert_trap(() => invoke($1, `check`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:69 +assert_trap(() => invoke($1, `check`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:70 +assert_trap(() => invoke($1, `check`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:71 +assert_trap(() => invoke($1, `check`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:73 +let $2 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.init $$t0 3 (i32.const 15) (i32.const 1) (i32.const 3))) + (func (export "check") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_init.wast:99 +invoke($2, `test`, []); + +// ./test/core/table_init.wast:100 +assert_trap(() => invoke($2, `check`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:101 +assert_trap(() => invoke($2, `check`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:102 +assert_return(() => invoke($2, `check`, [2]), [value("i32", 3)]); + +// ./test/core/table_init.wast:103 +assert_return(() => invoke($2, `check`, [3]), [value("i32", 1)]); + +// ./test/core/table_init.wast:104 +assert_return(() => invoke($2, `check`, [4]), [value("i32", 4)]); + +// ./test/core/table_init.wast:105 +assert_return(() => invoke($2, `check`, [5]), [value("i32", 1)]); + +// ./test/core/table_init.wast:106 +assert_trap(() => invoke($2, `check`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:107 +assert_trap(() => invoke($2, `check`, [7]), `uninitialized element`); + +// ./test/core/table_init.wast:108 +assert_trap(() => invoke($2, `check`, [8]), `uninitialized element`); + +// ./test/core/table_init.wast:109 +assert_trap(() => invoke($2, `check`, [9]), `uninitialized element`); + +// ./test/core/table_init.wast:110 +assert_trap(() => invoke($2, `check`, [10]), `uninitialized element`); + +// ./test/core/table_init.wast:111 +assert_trap(() => invoke($2, `check`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:112 +assert_return(() => invoke($2, `check`, [12]), [value("i32", 7)]); + +// ./test/core/table_init.wast:113 +assert_return(() => invoke($2, `check`, [13]), [value("i32", 5)]); + +// ./test/core/table_init.wast:114 +assert_return(() => invoke($2, `check`, [14]), [value("i32", 2)]); + +// ./test/core/table_init.wast:115 +assert_return(() => invoke($2, `check`, [15]), [value("i32", 9)]); + +// ./test/core/table_init.wast:116 +assert_return(() => invoke($2, `check`, [16]), [value("i32", 2)]); + +// ./test/core/table_init.wast:117 +assert_return(() => invoke($2, `check`, [17]), [value("i32", 7)]); + +// ./test/core/table_init.wast:118 +assert_trap(() => invoke($2, `check`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:119 +assert_trap(() => invoke($2, `check`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:120 +assert_trap(() => invoke($2, `check`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:121 +assert_trap(() => invoke($2, `check`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:122 +assert_trap(() => invoke($2, `check`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:123 +assert_trap(() => invoke($2, `check`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:124 +assert_trap(() => invoke($2, `check`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:125 +assert_trap(() => invoke($2, `check`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:126 +assert_trap(() => invoke($2, `check`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:127 +assert_trap(() => invoke($2, `check`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:128 +assert_trap(() => invoke($2, `check`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:129 +assert_trap(() => invoke($2, `check`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:131 +let $3 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.init $$t0 1 (i32.const 7) (i32.const 0) (i32.const 4)) + (elem.drop 1) + (table.init $$t0 3 (i32.const 15) (i32.const 1) (i32.const 3)) + (elem.drop 3) + (table.copy $$t0 0 (i32.const 20) (i32.const 15) (i32.const 5)) + (table.copy $$t0 0 (i32.const 21) (i32.const 29) (i32.const 1)) + (table.copy $$t0 0 (i32.const 24) (i32.const 10) (i32.const 1)) + (table.copy $$t0 0 (i32.const 13) (i32.const 11) (i32.const 4)) + (table.copy $$t0 0 (i32.const 19) (i32.const 20) (i32.const 5))) + (func (export "check") (param i32) (result i32) + (call_indirect $$t0 (type 0) (local.get 0))) +)`); + +// ./test/core/table_init.wast:165 +invoke($3, `test`, []); + +// ./test/core/table_init.wast:166 +assert_trap(() => invoke($3, `check`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:167 +assert_trap(() => invoke($3, `check`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:168 +assert_return(() => invoke($3, `check`, [2]), [value("i32", 3)]); + +// ./test/core/table_init.wast:169 +assert_return(() => invoke($3, `check`, [3]), [value("i32", 1)]); + +// ./test/core/table_init.wast:170 +assert_return(() => invoke($3, `check`, [4]), [value("i32", 4)]); + +// ./test/core/table_init.wast:171 +assert_return(() => invoke($3, `check`, [5]), [value("i32", 1)]); + +// ./test/core/table_init.wast:172 +assert_trap(() => invoke($3, `check`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:173 +assert_return(() => invoke($3, `check`, [7]), [value("i32", 2)]); + +// ./test/core/table_init.wast:174 +assert_return(() => invoke($3, `check`, [8]), [value("i32", 7)]); + +// ./test/core/table_init.wast:175 +assert_return(() => invoke($3, `check`, [9]), [value("i32", 1)]); + +// ./test/core/table_init.wast:176 +assert_return(() => invoke($3, `check`, [10]), [value("i32", 8)]); + +// ./test/core/table_init.wast:177 +assert_trap(() => invoke($3, `check`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:178 +assert_return(() => invoke($3, `check`, [12]), [value("i32", 7)]); + +// ./test/core/table_init.wast:179 +assert_trap(() => invoke($3, `check`, [13]), `uninitialized element`); + +// ./test/core/table_init.wast:180 +assert_return(() => invoke($3, `check`, [14]), [value("i32", 7)]); + +// ./test/core/table_init.wast:181 +assert_return(() => invoke($3, `check`, [15]), [value("i32", 5)]); + +// ./test/core/table_init.wast:182 +assert_return(() => invoke($3, `check`, [16]), [value("i32", 2)]); + +// ./test/core/table_init.wast:183 +assert_return(() => invoke($3, `check`, [17]), [value("i32", 7)]); + +// ./test/core/table_init.wast:184 +assert_trap(() => invoke($3, `check`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:185 +assert_return(() => invoke($3, `check`, [19]), [value("i32", 9)]); + +// ./test/core/table_init.wast:186 +assert_trap(() => invoke($3, `check`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:187 +assert_return(() => invoke($3, `check`, [21]), [value("i32", 7)]); + +// ./test/core/table_init.wast:188 +assert_trap(() => invoke($3, `check`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:189 +assert_return(() => invoke($3, `check`, [23]), [value("i32", 8)]); + +// ./test/core/table_init.wast:190 +assert_return(() => invoke($3, `check`, [24]), [value("i32", 8)]); + +// ./test/core/table_init.wast:191 +assert_trap(() => invoke($3, `check`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:192 +assert_trap(() => invoke($3, `check`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:193 +assert_trap(() => invoke($3, `check`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:194 +assert_trap(() => invoke($3, `check`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:195 +assert_trap(() => invoke($3, `check`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:197 +let $4 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.init $$t1 1 (i32.const 7) (i32.const 0) (i32.const 4))) + (func (export "check") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_init.wast:223 +invoke($4, `test`, []); + +// ./test/core/table_init.wast:224 +assert_trap(() => invoke($4, `check`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:225 +assert_trap(() => invoke($4, `check`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:226 +assert_return(() => invoke($4, `check`, [2]), [value("i32", 3)]); + +// ./test/core/table_init.wast:227 +assert_return(() => invoke($4, `check`, [3]), [value("i32", 1)]); + +// ./test/core/table_init.wast:228 +assert_return(() => invoke($4, `check`, [4]), [value("i32", 4)]); + +// ./test/core/table_init.wast:229 +assert_return(() => invoke($4, `check`, [5]), [value("i32", 1)]); + +// ./test/core/table_init.wast:230 +assert_trap(() => invoke($4, `check`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:231 +assert_return(() => invoke($4, `check`, [7]), [value("i32", 2)]); + +// ./test/core/table_init.wast:232 +assert_return(() => invoke($4, `check`, [8]), [value("i32", 7)]); + +// ./test/core/table_init.wast:233 +assert_return(() => invoke($4, `check`, [9]), [value("i32", 1)]); + +// ./test/core/table_init.wast:234 +assert_return(() => invoke($4, `check`, [10]), [value("i32", 8)]); + +// ./test/core/table_init.wast:235 +assert_trap(() => invoke($4, `check`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:236 +assert_return(() => invoke($4, `check`, [12]), [value("i32", 7)]); + +// ./test/core/table_init.wast:237 +assert_return(() => invoke($4, `check`, [13]), [value("i32", 5)]); + +// ./test/core/table_init.wast:238 +assert_return(() => invoke($4, `check`, [14]), [value("i32", 2)]); + +// ./test/core/table_init.wast:239 +assert_return(() => invoke($4, `check`, [15]), [value("i32", 3)]); + +// ./test/core/table_init.wast:240 +assert_return(() => invoke($4, `check`, [16]), [value("i32", 6)]); + +// ./test/core/table_init.wast:241 +assert_trap(() => invoke($4, `check`, [17]), `uninitialized element`); + +// ./test/core/table_init.wast:242 +assert_trap(() => invoke($4, `check`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:243 +assert_trap(() => invoke($4, `check`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:244 +assert_trap(() => invoke($4, `check`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:245 +assert_trap(() => invoke($4, `check`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:246 +assert_trap(() => invoke($4, `check`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:247 +assert_trap(() => invoke($4, `check`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:248 +assert_trap(() => invoke($4, `check`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:249 +assert_trap(() => invoke($4, `check`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:250 +assert_trap(() => invoke($4, `check`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:251 +assert_trap(() => invoke($4, `check`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:252 +assert_trap(() => invoke($4, `check`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:253 +assert_trap(() => invoke($4, `check`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:255 +let $5 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.init $$t1 3 (i32.const 15) (i32.const 1) (i32.const 3))) + (func (export "check") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_init.wast:281 +invoke($5, `test`, []); + +// ./test/core/table_init.wast:282 +assert_trap(() => invoke($5, `check`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:283 +assert_trap(() => invoke($5, `check`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:284 +assert_return(() => invoke($5, `check`, [2]), [value("i32", 3)]); + +// ./test/core/table_init.wast:285 +assert_return(() => invoke($5, `check`, [3]), [value("i32", 1)]); + +// ./test/core/table_init.wast:286 +assert_return(() => invoke($5, `check`, [4]), [value("i32", 4)]); + +// ./test/core/table_init.wast:287 +assert_return(() => invoke($5, `check`, [5]), [value("i32", 1)]); + +// ./test/core/table_init.wast:288 +assert_trap(() => invoke($5, `check`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:289 +assert_trap(() => invoke($5, `check`, [7]), `uninitialized element`); + +// ./test/core/table_init.wast:290 +assert_trap(() => invoke($5, `check`, [8]), `uninitialized element`); + +// ./test/core/table_init.wast:291 +assert_trap(() => invoke($5, `check`, [9]), `uninitialized element`); + +// ./test/core/table_init.wast:292 +assert_trap(() => invoke($5, `check`, [10]), `uninitialized element`); + +// ./test/core/table_init.wast:293 +assert_trap(() => invoke($5, `check`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:294 +assert_return(() => invoke($5, `check`, [12]), [value("i32", 7)]); + +// ./test/core/table_init.wast:295 +assert_return(() => invoke($5, `check`, [13]), [value("i32", 5)]); + +// ./test/core/table_init.wast:296 +assert_return(() => invoke($5, `check`, [14]), [value("i32", 2)]); + +// ./test/core/table_init.wast:297 +assert_return(() => invoke($5, `check`, [15]), [value("i32", 9)]); + +// ./test/core/table_init.wast:298 +assert_return(() => invoke($5, `check`, [16]), [value("i32", 2)]); + +// ./test/core/table_init.wast:299 +assert_return(() => invoke($5, `check`, [17]), [value("i32", 7)]); + +// ./test/core/table_init.wast:300 +assert_trap(() => invoke($5, `check`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:301 +assert_trap(() => invoke($5, `check`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:302 +assert_trap(() => invoke($5, `check`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:303 +assert_trap(() => invoke($5, `check`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:304 +assert_trap(() => invoke($5, `check`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:305 +assert_trap(() => invoke($5, `check`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:306 +assert_trap(() => invoke($5, `check`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:307 +assert_trap(() => invoke($5, `check`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:308 +assert_trap(() => invoke($5, `check`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:309 +assert_trap(() => invoke($5, `check`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:310 +assert_trap(() => invoke($5, `check`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:311 +assert_trap(() => invoke($5, `check`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:313 +let $6 = instantiate(`(module + (type (func (result i32))) ;; type #0 + (import "a" "ef0" (func (result i32))) ;; index 0 + (import "a" "ef1" (func (result i32))) + (import "a" "ef2" (func (result i32))) + (import "a" "ef3" (func (result i32))) + (import "a" "ef4" (func (result i32))) ;; index 4 + (table $$t0 30 30 funcref) + (table $$t1 30 30 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 5)) ;; index 5 + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) ;; index 9 + (func (export "test") + (table.init $$t1 1 (i32.const 7) (i32.const 0) (i32.const 4)) + (elem.drop 1) + (table.init $$t1 3 (i32.const 15) (i32.const 1) (i32.const 3)) + (elem.drop 3) + (table.copy $$t1 1 (i32.const 20) (i32.const 15) (i32.const 5)) + (table.copy $$t1 1 (i32.const 21) (i32.const 29) (i32.const 1)) + (table.copy $$t1 1 (i32.const 24) (i32.const 10) (i32.const 1)) + (table.copy $$t1 1 (i32.const 13) (i32.const 11) (i32.const 4)) + (table.copy $$t1 1 (i32.const 19) (i32.const 20) (i32.const 5))) + (func (export "check") (param i32) (result i32) + (call_indirect $$t1 (type 0) (local.get 0))) +)`); + +// ./test/core/table_init.wast:347 +invoke($6, `test`, []); + +// ./test/core/table_init.wast:348 +assert_trap(() => invoke($6, `check`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:349 +assert_trap(() => invoke($6, `check`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:350 +assert_return(() => invoke($6, `check`, [2]), [value("i32", 3)]); + +// ./test/core/table_init.wast:351 +assert_return(() => invoke($6, `check`, [3]), [value("i32", 1)]); + +// ./test/core/table_init.wast:352 +assert_return(() => invoke($6, `check`, [4]), [value("i32", 4)]); + +// ./test/core/table_init.wast:353 +assert_return(() => invoke($6, `check`, [5]), [value("i32", 1)]); + +// ./test/core/table_init.wast:354 +assert_trap(() => invoke($6, `check`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:355 +assert_return(() => invoke($6, `check`, [7]), [value("i32", 2)]); + +// ./test/core/table_init.wast:356 +assert_return(() => invoke($6, `check`, [8]), [value("i32", 7)]); + +// ./test/core/table_init.wast:357 +assert_return(() => invoke($6, `check`, [9]), [value("i32", 1)]); + +// ./test/core/table_init.wast:358 +assert_return(() => invoke($6, `check`, [10]), [value("i32", 8)]); + +// ./test/core/table_init.wast:359 +assert_trap(() => invoke($6, `check`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:360 +assert_return(() => invoke($6, `check`, [12]), [value("i32", 7)]); + +// ./test/core/table_init.wast:361 +assert_trap(() => invoke($6, `check`, [13]), `uninitialized element`); + +// ./test/core/table_init.wast:362 +assert_return(() => invoke($6, `check`, [14]), [value("i32", 7)]); + +// ./test/core/table_init.wast:363 +assert_return(() => invoke($6, `check`, [15]), [value("i32", 5)]); + +// ./test/core/table_init.wast:364 +assert_return(() => invoke($6, `check`, [16]), [value("i32", 2)]); + +// ./test/core/table_init.wast:365 +assert_return(() => invoke($6, `check`, [17]), [value("i32", 7)]); + +// ./test/core/table_init.wast:366 +assert_trap(() => invoke($6, `check`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:367 +assert_return(() => invoke($6, `check`, [19]), [value("i32", 9)]); + +// ./test/core/table_init.wast:368 +assert_trap(() => invoke($6, `check`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:369 +assert_return(() => invoke($6, `check`, [21]), [value("i32", 7)]); + +// ./test/core/table_init.wast:370 +assert_trap(() => invoke($6, `check`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:371 +assert_return(() => invoke($6, `check`, [23]), [value("i32", 8)]); + +// ./test/core/table_init.wast:372 +assert_return(() => invoke($6, `check`, [24]), [value("i32", 8)]); + +// ./test/core/table_init.wast:373 +assert_trap(() => invoke($6, `check`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:374 +assert_trap(() => invoke($6, `check`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:375 +assert_trap(() => invoke($6, `check`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:376 +assert_trap(() => invoke($6, `check`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:377 +assert_trap(() => invoke($6, `check`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:378 +assert_invalid( + () => instantiate(`(module + (func (export "test") + (elem.drop 0)))`), + `unknown elem segment 0`, +); + +// ./test/core/table_init.wast:384 +assert_invalid( + () => instantiate(`(module + (func (export "test") + (table.init 0 (i32.const 12) (i32.const 1) (i32.const 1))))`), + `unknown table 0`, +); + +// ./test/core/table_init.wast:390 +assert_invalid( + () => instantiate(`(module + (elem funcref (ref.func 0)) + (func (result i32) (i32.const 0)) + (func (export "test") + (elem.drop 4)))`), + `unknown elem segment 4`, +); + +// ./test/core/table_init.wast:398 +assert_invalid( + () => instantiate(`(module + (elem funcref (ref.func 0)) + (func (result i32) (i32.const 0)) + (func (export "test") + (table.init 4 (i32.const 12) (i32.const 1) (i32.const 1))))`), + `unknown table 0`, +); + +// ./test/core/table_init.wast:407 +let $7 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (elem.drop 2) + ))`); + +// ./test/core/table_init.wast:429 +invoke($7, `test`, []); + +// ./test/core/table_init.wast:431 +let $8 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init 2 (i32.const 12) (i32.const 1) (i32.const 1)) + ))`); + +// ./test/core/table_init.wast:453 +assert_trap(() => invoke($8, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:455 +let $9 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init 1 (i32.const 12) (i32.const 1) (i32.const 1)) + (table.init 1 (i32.const 21) (i32.const 1) (i32.const 1))))`); + +// ./test/core/table_init.wast:477 +invoke($9, `test`, []); + +// ./test/core/table_init.wast:479 +let $10 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (elem.drop 1) + (elem.drop 1)))`); + +// ./test/core/table_init.wast:501 +invoke($10, `test`, []); + +// ./test/core/table_init.wast:503 +let $11 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (elem.drop 1) + (table.init 1 (i32.const 12) (i32.const 1) (i32.const 1))))`); + +// ./test/core/table_init.wast:525 +assert_trap(() => invoke($11, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:527 +let $12 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init 1 (i32.const 12) (i32.const 0) (i32.const 5)) + ))`); + +// ./test/core/table_init.wast:549 +assert_trap(() => invoke($12, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:551 +let $13 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init 1 (i32.const 12) (i32.const 2) (i32.const 3)) + ))`); + +// ./test/core/table_init.wast:573 +assert_trap(() => invoke($13, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:575 +let $14 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t0 1 (i32.const 28) (i32.const 1) (i32.const 3)) + ))`); + +// ./test/core/table_init.wast:597 +assert_trap(() => invoke($14, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:599 +let $15 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t0 1 (i32.const 12) (i32.const 4) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:621 +invoke($15, `test`, []); + +// ./test/core/table_init.wast:623 +let $16 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t0 1 (i32.const 12) (i32.const 5) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:645 +assert_trap(() => invoke($16, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:647 +let $17 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t0 1 (i32.const 30) (i32.const 2) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:669 +invoke($17, `test`, []); + +// ./test/core/table_init.wast:671 +let $18 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t0 1 (i32.const 31) (i32.const 2) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:693 +assert_trap(() => invoke($18, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:695 +let $19 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t0 1 (i32.const 30) (i32.const 4) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:717 +invoke($19, `test`, []); + +// ./test/core/table_init.wast:719 +let $20 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t0) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t0) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t0 1 (i32.const 31) (i32.const 5) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:741 +assert_trap(() => invoke($20, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:743 +let $21 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t1 1 (i32.const 26) (i32.const 1) (i32.const 3)) + ))`); + +// ./test/core/table_init.wast:765 +assert_trap(() => invoke($21, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:767 +let $22 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t1 1 (i32.const 12) (i32.const 4) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:789 +invoke($22, `test`, []); + +// ./test/core/table_init.wast:791 +let $23 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t1 1 (i32.const 12) (i32.const 5) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:813 +assert_trap(() => invoke($23, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:815 +let $24 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t1 1 (i32.const 28) (i32.const 2) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:837 +invoke($24, `test`, []); + +// ./test/core/table_init.wast:839 +let $25 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t1 1 (i32.const 29) (i32.const 2) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:861 +assert_trap(() => invoke($25, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:863 +let $26 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t1 1 (i32.const 28) (i32.const 4) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:885 +invoke($26, `test`, []); + +// ./test/core/table_init.wast:887 +let $27 = instantiate(`(module + (table $$t0 30 30 funcref) + (table $$t1 28 28 funcref) + (elem (table $$t1) (i32.const 2) func 3 1 4 1) + (elem funcref + (ref.func 2) (ref.func 7) (ref.func 1) (ref.func 8)) + (elem (table $$t1) (i32.const 12) func 7 5 2 3 6) + (elem funcref + (ref.func 5) (ref.func 9) (ref.func 2) (ref.func 7) (ref.func 6)) + (func (result i32) (i32.const 0)) + (func (result i32) (i32.const 1)) + (func (result i32) (i32.const 2)) + (func (result i32) (i32.const 3)) + (func (result i32) (i32.const 4)) + (func (result i32) (i32.const 5)) + (func (result i32) (i32.const 6)) + (func (result i32) (i32.const 7)) + (func (result i32) (i32.const 8)) + (func (result i32) (i32.const 9)) + (func (export "test") + (table.init $$t1 1 (i32.const 29) (i32.const 5) (i32.const 0)) + ))`); + +// ./test/core/table_init.wast:909 +assert_trap(() => invoke($27, `test`, []), `out of bounds table access`); + +// ./test/core/table_init.wast:911 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (i32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:920 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (i32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:929 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (i32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:938 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (f32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:947 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (f32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:956 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (f32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:965 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (f32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:974 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (i64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:983 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (i64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:992 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (i64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1001 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (i64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1010 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (f64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1019 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (f64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1028 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (f64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1037 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i32.const 1) (f64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1046 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (i32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1055 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (i32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1064 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (i32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1073 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (i32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1082 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (f32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1091 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (f32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1100 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (f32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1109 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (f32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1118 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (i64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1127 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (i64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1136 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (i64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1145 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (i64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1154 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (f64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1163 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (f64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1172 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (f64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1181 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f32.const 1) (f64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1190 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (i32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1199 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (i32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1208 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (i32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1217 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (i32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1226 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (f32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1235 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (f32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1244 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (f32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1253 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (f32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1262 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (i64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1271 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (i64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1280 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (i64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1289 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (i64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1298 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (f64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1307 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (f64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1316 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (f64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1325 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (i64.const 1) (f64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1334 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (i32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1343 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (i32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1352 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (i32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1361 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (i32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1370 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (f32.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1379 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (f32.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1388 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (f32.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1397 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (f32.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1406 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (i64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1415 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (i64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1424 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (i64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1433 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (i64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1442 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (f64.const 1) (i32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1451 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (f64.const 1) (f32.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1460 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (f64.const 1) (i64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1469 +assert_invalid( + () => instantiate(`(module + (table 10 funcref) + (elem funcref (ref.func $$f0) (ref.func $$f0) (ref.func $$f0)) + (func $$f0) + (func (export "test") + (table.init 0 (f64.const 1) (f64.const 1) (f64.const 1))))`), + `type mismatch`, +); + +// ./test/core/table_init.wast:1478 +let $28 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem funcref + (ref.func $$f0) (ref.func $$f1) (ref.func $$f2) (ref.func $$f3) + (ref.func $$f4) (ref.func $$f5) (ref.func $$f6) (ref.func $$f7) + (ref.func $$f8) (ref.func $$f9) (ref.func $$f10) (ref.func $$f11) + (ref.func $$f12) (ref.func $$f13) (ref.func $$f14) (ref.func $$f15)) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$offs i32) (param $$len i32) + (table.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/table_init.wast:1506 +assert_trap(() => invoke($28, `run`, [24, 16]), `out of bounds table access`); + +// ./test/core/table_init.wast:1507 +assert_trap(() => invoke($28, `test`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:1508 +assert_trap(() => invoke($28, `test`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:1509 +assert_trap(() => invoke($28, `test`, [2]), `uninitialized element`); + +// ./test/core/table_init.wast:1510 +assert_trap(() => invoke($28, `test`, [3]), `uninitialized element`); + +// ./test/core/table_init.wast:1511 +assert_trap(() => invoke($28, `test`, [4]), `uninitialized element`); + +// ./test/core/table_init.wast:1512 +assert_trap(() => invoke($28, `test`, [5]), `uninitialized element`); + +// ./test/core/table_init.wast:1513 +assert_trap(() => invoke($28, `test`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:1514 +assert_trap(() => invoke($28, `test`, [7]), `uninitialized element`); + +// ./test/core/table_init.wast:1515 +assert_trap(() => invoke($28, `test`, [8]), `uninitialized element`); + +// ./test/core/table_init.wast:1516 +assert_trap(() => invoke($28, `test`, [9]), `uninitialized element`); + +// ./test/core/table_init.wast:1517 +assert_trap(() => invoke($28, `test`, [10]), `uninitialized element`); + +// ./test/core/table_init.wast:1518 +assert_trap(() => invoke($28, `test`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:1519 +assert_trap(() => invoke($28, `test`, [12]), `uninitialized element`); + +// ./test/core/table_init.wast:1520 +assert_trap(() => invoke($28, `test`, [13]), `uninitialized element`); + +// ./test/core/table_init.wast:1521 +assert_trap(() => invoke($28, `test`, [14]), `uninitialized element`); + +// ./test/core/table_init.wast:1522 +assert_trap(() => invoke($28, `test`, [15]), `uninitialized element`); + +// ./test/core/table_init.wast:1523 +assert_trap(() => invoke($28, `test`, [16]), `uninitialized element`); + +// ./test/core/table_init.wast:1524 +assert_trap(() => invoke($28, `test`, [17]), `uninitialized element`); + +// ./test/core/table_init.wast:1525 +assert_trap(() => invoke($28, `test`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:1526 +assert_trap(() => invoke($28, `test`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:1527 +assert_trap(() => invoke($28, `test`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:1528 +assert_trap(() => invoke($28, `test`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:1529 +assert_trap(() => invoke($28, `test`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:1530 +assert_trap(() => invoke($28, `test`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:1531 +assert_trap(() => invoke($28, `test`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:1532 +assert_trap(() => invoke($28, `test`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:1533 +assert_trap(() => invoke($28, `test`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:1534 +assert_trap(() => invoke($28, `test`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:1535 +assert_trap(() => invoke($28, `test`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:1536 +assert_trap(() => invoke($28, `test`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:1537 +assert_trap(() => invoke($28, `test`, [30]), `uninitialized element`); + +// ./test/core/table_init.wast:1538 +assert_trap(() => invoke($28, `test`, [31]), `uninitialized element`); + +// ./test/core/table_init.wast:1540 +let $29 = instantiate(`(module + (type (func (result i32))) + (table 32 64 funcref) + (elem funcref + (ref.func $$f0) (ref.func $$f1) (ref.func $$f2) (ref.func $$f3) + (ref.func $$f4) (ref.func $$f5) (ref.func $$f6) (ref.func $$f7) + (ref.func $$f8) (ref.func $$f9) (ref.func $$f10) (ref.func $$f11) + (ref.func $$f12) (ref.func $$f13) (ref.func $$f14) (ref.func $$f15)) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$offs i32) (param $$len i32) + (table.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/table_init.wast:1568 +assert_trap(() => invoke($29, `run`, [25, 16]), `out of bounds table access`); + +// ./test/core/table_init.wast:1569 +assert_trap(() => invoke($29, `test`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:1570 +assert_trap(() => invoke($29, `test`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:1571 +assert_trap(() => invoke($29, `test`, [2]), `uninitialized element`); + +// ./test/core/table_init.wast:1572 +assert_trap(() => invoke($29, `test`, [3]), `uninitialized element`); + +// ./test/core/table_init.wast:1573 +assert_trap(() => invoke($29, `test`, [4]), `uninitialized element`); + +// ./test/core/table_init.wast:1574 +assert_trap(() => invoke($29, `test`, [5]), `uninitialized element`); + +// ./test/core/table_init.wast:1575 +assert_trap(() => invoke($29, `test`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:1576 +assert_trap(() => invoke($29, `test`, [7]), `uninitialized element`); + +// ./test/core/table_init.wast:1577 +assert_trap(() => invoke($29, `test`, [8]), `uninitialized element`); + +// ./test/core/table_init.wast:1578 +assert_trap(() => invoke($29, `test`, [9]), `uninitialized element`); + +// ./test/core/table_init.wast:1579 +assert_trap(() => invoke($29, `test`, [10]), `uninitialized element`); + +// ./test/core/table_init.wast:1580 +assert_trap(() => invoke($29, `test`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:1581 +assert_trap(() => invoke($29, `test`, [12]), `uninitialized element`); + +// ./test/core/table_init.wast:1582 +assert_trap(() => invoke($29, `test`, [13]), `uninitialized element`); + +// ./test/core/table_init.wast:1583 +assert_trap(() => invoke($29, `test`, [14]), `uninitialized element`); + +// ./test/core/table_init.wast:1584 +assert_trap(() => invoke($29, `test`, [15]), `uninitialized element`); + +// ./test/core/table_init.wast:1585 +assert_trap(() => invoke($29, `test`, [16]), `uninitialized element`); + +// ./test/core/table_init.wast:1586 +assert_trap(() => invoke($29, `test`, [17]), `uninitialized element`); + +// ./test/core/table_init.wast:1587 +assert_trap(() => invoke($29, `test`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:1588 +assert_trap(() => invoke($29, `test`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:1589 +assert_trap(() => invoke($29, `test`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:1590 +assert_trap(() => invoke($29, `test`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:1591 +assert_trap(() => invoke($29, `test`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:1592 +assert_trap(() => invoke($29, `test`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:1593 +assert_trap(() => invoke($29, `test`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:1594 +assert_trap(() => invoke($29, `test`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:1595 +assert_trap(() => invoke($29, `test`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:1596 +assert_trap(() => invoke($29, `test`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:1597 +assert_trap(() => invoke($29, `test`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:1598 +assert_trap(() => invoke($29, `test`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:1599 +assert_trap(() => invoke($29, `test`, [30]), `uninitialized element`); + +// ./test/core/table_init.wast:1600 +assert_trap(() => invoke($29, `test`, [31]), `uninitialized element`); + +// ./test/core/table_init.wast:1602 +let $30 = instantiate(`(module + (type (func (result i32))) + (table 160 320 funcref) + (elem funcref + (ref.func $$f0) (ref.func $$f1) (ref.func $$f2) (ref.func $$f3) + (ref.func $$f4) (ref.func $$f5) (ref.func $$f6) (ref.func $$f7) + (ref.func $$f8) (ref.func $$f9) (ref.func $$f10) (ref.func $$f11) + (ref.func $$f12) (ref.func $$f13) (ref.func $$f14) (ref.func $$f15)) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$offs i32) (param $$len i32) + (table.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/table_init.wast:1630 +assert_trap(() => invoke($30, `run`, [96, 32]), `out of bounds table access`); + +// ./test/core/table_init.wast:1631 +assert_trap(() => invoke($30, `test`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:1632 +assert_trap(() => invoke($30, `test`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:1633 +assert_trap(() => invoke($30, `test`, [2]), `uninitialized element`); + +// ./test/core/table_init.wast:1634 +assert_trap(() => invoke($30, `test`, [3]), `uninitialized element`); + +// ./test/core/table_init.wast:1635 +assert_trap(() => invoke($30, `test`, [4]), `uninitialized element`); + +// ./test/core/table_init.wast:1636 +assert_trap(() => invoke($30, `test`, [5]), `uninitialized element`); + +// ./test/core/table_init.wast:1637 +assert_trap(() => invoke($30, `test`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:1638 +assert_trap(() => invoke($30, `test`, [7]), `uninitialized element`); + +// ./test/core/table_init.wast:1639 +assert_trap(() => invoke($30, `test`, [8]), `uninitialized element`); + +// ./test/core/table_init.wast:1640 +assert_trap(() => invoke($30, `test`, [9]), `uninitialized element`); + +// ./test/core/table_init.wast:1641 +assert_trap(() => invoke($30, `test`, [10]), `uninitialized element`); + +// ./test/core/table_init.wast:1642 +assert_trap(() => invoke($30, `test`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:1643 +assert_trap(() => invoke($30, `test`, [12]), `uninitialized element`); + +// ./test/core/table_init.wast:1644 +assert_trap(() => invoke($30, `test`, [13]), `uninitialized element`); + +// ./test/core/table_init.wast:1645 +assert_trap(() => invoke($30, `test`, [14]), `uninitialized element`); + +// ./test/core/table_init.wast:1646 +assert_trap(() => invoke($30, `test`, [15]), `uninitialized element`); + +// ./test/core/table_init.wast:1647 +assert_trap(() => invoke($30, `test`, [16]), `uninitialized element`); + +// ./test/core/table_init.wast:1648 +assert_trap(() => invoke($30, `test`, [17]), `uninitialized element`); + +// ./test/core/table_init.wast:1649 +assert_trap(() => invoke($30, `test`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:1650 +assert_trap(() => invoke($30, `test`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:1651 +assert_trap(() => invoke($30, `test`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:1652 +assert_trap(() => invoke($30, `test`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:1653 +assert_trap(() => invoke($30, `test`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:1654 +assert_trap(() => invoke($30, `test`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:1655 +assert_trap(() => invoke($30, `test`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:1656 +assert_trap(() => invoke($30, `test`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:1657 +assert_trap(() => invoke($30, `test`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:1658 +assert_trap(() => invoke($30, `test`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:1659 +assert_trap(() => invoke($30, `test`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:1660 +assert_trap(() => invoke($30, `test`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:1661 +assert_trap(() => invoke($30, `test`, [30]), `uninitialized element`); + +// ./test/core/table_init.wast:1662 +assert_trap(() => invoke($30, `test`, [31]), `uninitialized element`); + +// ./test/core/table_init.wast:1663 +assert_trap(() => invoke($30, `test`, [32]), `uninitialized element`); + +// ./test/core/table_init.wast:1664 +assert_trap(() => invoke($30, `test`, [33]), `uninitialized element`); + +// ./test/core/table_init.wast:1665 +assert_trap(() => invoke($30, `test`, [34]), `uninitialized element`); + +// ./test/core/table_init.wast:1666 +assert_trap(() => invoke($30, `test`, [35]), `uninitialized element`); + +// ./test/core/table_init.wast:1667 +assert_trap(() => invoke($30, `test`, [36]), `uninitialized element`); + +// ./test/core/table_init.wast:1668 +assert_trap(() => invoke($30, `test`, [37]), `uninitialized element`); + +// ./test/core/table_init.wast:1669 +assert_trap(() => invoke($30, `test`, [38]), `uninitialized element`); + +// ./test/core/table_init.wast:1670 +assert_trap(() => invoke($30, `test`, [39]), `uninitialized element`); + +// ./test/core/table_init.wast:1671 +assert_trap(() => invoke($30, `test`, [40]), `uninitialized element`); + +// ./test/core/table_init.wast:1672 +assert_trap(() => invoke($30, `test`, [41]), `uninitialized element`); + +// ./test/core/table_init.wast:1673 +assert_trap(() => invoke($30, `test`, [42]), `uninitialized element`); + +// ./test/core/table_init.wast:1674 +assert_trap(() => invoke($30, `test`, [43]), `uninitialized element`); + +// ./test/core/table_init.wast:1675 +assert_trap(() => invoke($30, `test`, [44]), `uninitialized element`); + +// ./test/core/table_init.wast:1676 +assert_trap(() => invoke($30, `test`, [45]), `uninitialized element`); + +// ./test/core/table_init.wast:1677 +assert_trap(() => invoke($30, `test`, [46]), `uninitialized element`); + +// ./test/core/table_init.wast:1678 +assert_trap(() => invoke($30, `test`, [47]), `uninitialized element`); + +// ./test/core/table_init.wast:1679 +assert_trap(() => invoke($30, `test`, [48]), `uninitialized element`); + +// ./test/core/table_init.wast:1680 +assert_trap(() => invoke($30, `test`, [49]), `uninitialized element`); + +// ./test/core/table_init.wast:1681 +assert_trap(() => invoke($30, `test`, [50]), `uninitialized element`); + +// ./test/core/table_init.wast:1682 +assert_trap(() => invoke($30, `test`, [51]), `uninitialized element`); + +// ./test/core/table_init.wast:1683 +assert_trap(() => invoke($30, `test`, [52]), `uninitialized element`); + +// ./test/core/table_init.wast:1684 +assert_trap(() => invoke($30, `test`, [53]), `uninitialized element`); + +// ./test/core/table_init.wast:1685 +assert_trap(() => invoke($30, `test`, [54]), `uninitialized element`); + +// ./test/core/table_init.wast:1686 +assert_trap(() => invoke($30, `test`, [55]), `uninitialized element`); + +// ./test/core/table_init.wast:1687 +assert_trap(() => invoke($30, `test`, [56]), `uninitialized element`); + +// ./test/core/table_init.wast:1688 +assert_trap(() => invoke($30, `test`, [57]), `uninitialized element`); + +// ./test/core/table_init.wast:1689 +assert_trap(() => invoke($30, `test`, [58]), `uninitialized element`); + +// ./test/core/table_init.wast:1690 +assert_trap(() => invoke($30, `test`, [59]), `uninitialized element`); + +// ./test/core/table_init.wast:1691 +assert_trap(() => invoke($30, `test`, [60]), `uninitialized element`); + +// ./test/core/table_init.wast:1692 +assert_trap(() => invoke($30, `test`, [61]), `uninitialized element`); + +// ./test/core/table_init.wast:1693 +assert_trap(() => invoke($30, `test`, [62]), `uninitialized element`); + +// ./test/core/table_init.wast:1694 +assert_trap(() => invoke($30, `test`, [63]), `uninitialized element`); + +// ./test/core/table_init.wast:1695 +assert_trap(() => invoke($30, `test`, [64]), `uninitialized element`); + +// ./test/core/table_init.wast:1696 +assert_trap(() => invoke($30, `test`, [65]), `uninitialized element`); + +// ./test/core/table_init.wast:1697 +assert_trap(() => invoke($30, `test`, [66]), `uninitialized element`); + +// ./test/core/table_init.wast:1698 +assert_trap(() => invoke($30, `test`, [67]), `uninitialized element`); + +// ./test/core/table_init.wast:1699 +assert_trap(() => invoke($30, `test`, [68]), `uninitialized element`); + +// ./test/core/table_init.wast:1700 +assert_trap(() => invoke($30, `test`, [69]), `uninitialized element`); + +// ./test/core/table_init.wast:1701 +assert_trap(() => invoke($30, `test`, [70]), `uninitialized element`); + +// ./test/core/table_init.wast:1702 +assert_trap(() => invoke($30, `test`, [71]), `uninitialized element`); + +// ./test/core/table_init.wast:1703 +assert_trap(() => invoke($30, `test`, [72]), `uninitialized element`); + +// ./test/core/table_init.wast:1704 +assert_trap(() => invoke($30, `test`, [73]), `uninitialized element`); + +// ./test/core/table_init.wast:1705 +assert_trap(() => invoke($30, `test`, [74]), `uninitialized element`); + +// ./test/core/table_init.wast:1706 +assert_trap(() => invoke($30, `test`, [75]), `uninitialized element`); + +// ./test/core/table_init.wast:1707 +assert_trap(() => invoke($30, `test`, [76]), `uninitialized element`); + +// ./test/core/table_init.wast:1708 +assert_trap(() => invoke($30, `test`, [77]), `uninitialized element`); + +// ./test/core/table_init.wast:1709 +assert_trap(() => invoke($30, `test`, [78]), `uninitialized element`); + +// ./test/core/table_init.wast:1710 +assert_trap(() => invoke($30, `test`, [79]), `uninitialized element`); + +// ./test/core/table_init.wast:1711 +assert_trap(() => invoke($30, `test`, [80]), `uninitialized element`); + +// ./test/core/table_init.wast:1712 +assert_trap(() => invoke($30, `test`, [81]), `uninitialized element`); + +// ./test/core/table_init.wast:1713 +assert_trap(() => invoke($30, `test`, [82]), `uninitialized element`); + +// ./test/core/table_init.wast:1714 +assert_trap(() => invoke($30, `test`, [83]), `uninitialized element`); + +// ./test/core/table_init.wast:1715 +assert_trap(() => invoke($30, `test`, [84]), `uninitialized element`); + +// ./test/core/table_init.wast:1716 +assert_trap(() => invoke($30, `test`, [85]), `uninitialized element`); + +// ./test/core/table_init.wast:1717 +assert_trap(() => invoke($30, `test`, [86]), `uninitialized element`); + +// ./test/core/table_init.wast:1718 +assert_trap(() => invoke($30, `test`, [87]), `uninitialized element`); + +// ./test/core/table_init.wast:1719 +assert_trap(() => invoke($30, `test`, [88]), `uninitialized element`); + +// ./test/core/table_init.wast:1720 +assert_trap(() => invoke($30, `test`, [89]), `uninitialized element`); + +// ./test/core/table_init.wast:1721 +assert_trap(() => invoke($30, `test`, [90]), `uninitialized element`); + +// ./test/core/table_init.wast:1722 +assert_trap(() => invoke($30, `test`, [91]), `uninitialized element`); + +// ./test/core/table_init.wast:1723 +assert_trap(() => invoke($30, `test`, [92]), `uninitialized element`); + +// ./test/core/table_init.wast:1724 +assert_trap(() => invoke($30, `test`, [93]), `uninitialized element`); + +// ./test/core/table_init.wast:1725 +assert_trap(() => invoke($30, `test`, [94]), `uninitialized element`); + +// ./test/core/table_init.wast:1726 +assert_trap(() => invoke($30, `test`, [95]), `uninitialized element`); + +// ./test/core/table_init.wast:1727 +assert_trap(() => invoke($30, `test`, [96]), `uninitialized element`); + +// ./test/core/table_init.wast:1728 +assert_trap(() => invoke($30, `test`, [97]), `uninitialized element`); + +// ./test/core/table_init.wast:1729 +assert_trap(() => invoke($30, `test`, [98]), `uninitialized element`); + +// ./test/core/table_init.wast:1730 +assert_trap(() => invoke($30, `test`, [99]), `uninitialized element`); + +// ./test/core/table_init.wast:1731 +assert_trap(() => invoke($30, `test`, [100]), `uninitialized element`); + +// ./test/core/table_init.wast:1732 +assert_trap(() => invoke($30, `test`, [101]), `uninitialized element`); + +// ./test/core/table_init.wast:1733 +assert_trap(() => invoke($30, `test`, [102]), `uninitialized element`); + +// ./test/core/table_init.wast:1734 +assert_trap(() => invoke($30, `test`, [103]), `uninitialized element`); + +// ./test/core/table_init.wast:1735 +assert_trap(() => invoke($30, `test`, [104]), `uninitialized element`); + +// ./test/core/table_init.wast:1736 +assert_trap(() => invoke($30, `test`, [105]), `uninitialized element`); + +// ./test/core/table_init.wast:1737 +assert_trap(() => invoke($30, `test`, [106]), `uninitialized element`); + +// ./test/core/table_init.wast:1738 +assert_trap(() => invoke($30, `test`, [107]), `uninitialized element`); + +// ./test/core/table_init.wast:1739 +assert_trap(() => invoke($30, `test`, [108]), `uninitialized element`); + +// ./test/core/table_init.wast:1740 +assert_trap(() => invoke($30, `test`, [109]), `uninitialized element`); + +// ./test/core/table_init.wast:1741 +assert_trap(() => invoke($30, `test`, [110]), `uninitialized element`); + +// ./test/core/table_init.wast:1742 +assert_trap(() => invoke($30, `test`, [111]), `uninitialized element`); + +// ./test/core/table_init.wast:1743 +assert_trap(() => invoke($30, `test`, [112]), `uninitialized element`); + +// ./test/core/table_init.wast:1744 +assert_trap(() => invoke($30, `test`, [113]), `uninitialized element`); + +// ./test/core/table_init.wast:1745 +assert_trap(() => invoke($30, `test`, [114]), `uninitialized element`); + +// ./test/core/table_init.wast:1746 +assert_trap(() => invoke($30, `test`, [115]), `uninitialized element`); + +// ./test/core/table_init.wast:1747 +assert_trap(() => invoke($30, `test`, [116]), `uninitialized element`); + +// ./test/core/table_init.wast:1748 +assert_trap(() => invoke($30, `test`, [117]), `uninitialized element`); + +// ./test/core/table_init.wast:1749 +assert_trap(() => invoke($30, `test`, [118]), `uninitialized element`); + +// ./test/core/table_init.wast:1750 +assert_trap(() => invoke($30, `test`, [119]), `uninitialized element`); + +// ./test/core/table_init.wast:1751 +assert_trap(() => invoke($30, `test`, [120]), `uninitialized element`); + +// ./test/core/table_init.wast:1752 +assert_trap(() => invoke($30, `test`, [121]), `uninitialized element`); + +// ./test/core/table_init.wast:1753 +assert_trap(() => invoke($30, `test`, [122]), `uninitialized element`); + +// ./test/core/table_init.wast:1754 +assert_trap(() => invoke($30, `test`, [123]), `uninitialized element`); + +// ./test/core/table_init.wast:1755 +assert_trap(() => invoke($30, `test`, [124]), `uninitialized element`); + +// ./test/core/table_init.wast:1756 +assert_trap(() => invoke($30, `test`, [125]), `uninitialized element`); + +// ./test/core/table_init.wast:1757 +assert_trap(() => invoke($30, `test`, [126]), `uninitialized element`); + +// ./test/core/table_init.wast:1758 +assert_trap(() => invoke($30, `test`, [127]), `uninitialized element`); + +// ./test/core/table_init.wast:1759 +assert_trap(() => invoke($30, `test`, [128]), `uninitialized element`); + +// ./test/core/table_init.wast:1760 +assert_trap(() => invoke($30, `test`, [129]), `uninitialized element`); + +// ./test/core/table_init.wast:1761 +assert_trap(() => invoke($30, `test`, [130]), `uninitialized element`); + +// ./test/core/table_init.wast:1762 +assert_trap(() => invoke($30, `test`, [131]), `uninitialized element`); + +// ./test/core/table_init.wast:1763 +assert_trap(() => invoke($30, `test`, [132]), `uninitialized element`); + +// ./test/core/table_init.wast:1764 +assert_trap(() => invoke($30, `test`, [133]), `uninitialized element`); + +// ./test/core/table_init.wast:1765 +assert_trap(() => invoke($30, `test`, [134]), `uninitialized element`); + +// ./test/core/table_init.wast:1766 +assert_trap(() => invoke($30, `test`, [135]), `uninitialized element`); + +// ./test/core/table_init.wast:1767 +assert_trap(() => invoke($30, `test`, [136]), `uninitialized element`); + +// ./test/core/table_init.wast:1768 +assert_trap(() => invoke($30, `test`, [137]), `uninitialized element`); + +// ./test/core/table_init.wast:1769 +assert_trap(() => invoke($30, `test`, [138]), `uninitialized element`); + +// ./test/core/table_init.wast:1770 +assert_trap(() => invoke($30, `test`, [139]), `uninitialized element`); + +// ./test/core/table_init.wast:1771 +assert_trap(() => invoke($30, `test`, [140]), `uninitialized element`); + +// ./test/core/table_init.wast:1772 +assert_trap(() => invoke($30, `test`, [141]), `uninitialized element`); + +// ./test/core/table_init.wast:1773 +assert_trap(() => invoke($30, `test`, [142]), `uninitialized element`); + +// ./test/core/table_init.wast:1774 +assert_trap(() => invoke($30, `test`, [143]), `uninitialized element`); + +// ./test/core/table_init.wast:1775 +assert_trap(() => invoke($30, `test`, [144]), `uninitialized element`); + +// ./test/core/table_init.wast:1776 +assert_trap(() => invoke($30, `test`, [145]), `uninitialized element`); + +// ./test/core/table_init.wast:1777 +assert_trap(() => invoke($30, `test`, [146]), `uninitialized element`); + +// ./test/core/table_init.wast:1778 +assert_trap(() => invoke($30, `test`, [147]), `uninitialized element`); + +// ./test/core/table_init.wast:1779 +assert_trap(() => invoke($30, `test`, [148]), `uninitialized element`); + +// ./test/core/table_init.wast:1780 +assert_trap(() => invoke($30, `test`, [149]), `uninitialized element`); + +// ./test/core/table_init.wast:1781 +assert_trap(() => invoke($30, `test`, [150]), `uninitialized element`); + +// ./test/core/table_init.wast:1782 +assert_trap(() => invoke($30, `test`, [151]), `uninitialized element`); + +// ./test/core/table_init.wast:1783 +assert_trap(() => invoke($30, `test`, [152]), `uninitialized element`); + +// ./test/core/table_init.wast:1784 +assert_trap(() => invoke($30, `test`, [153]), `uninitialized element`); + +// ./test/core/table_init.wast:1785 +assert_trap(() => invoke($30, `test`, [154]), `uninitialized element`); + +// ./test/core/table_init.wast:1786 +assert_trap(() => invoke($30, `test`, [155]), `uninitialized element`); + +// ./test/core/table_init.wast:1787 +assert_trap(() => invoke($30, `test`, [156]), `uninitialized element`); + +// ./test/core/table_init.wast:1788 +assert_trap(() => invoke($30, `test`, [157]), `uninitialized element`); + +// ./test/core/table_init.wast:1789 +assert_trap(() => invoke($30, `test`, [158]), `uninitialized element`); + +// ./test/core/table_init.wast:1790 +assert_trap(() => invoke($30, `test`, [159]), `uninitialized element`); + +// ./test/core/table_init.wast:1792 +let $31 = instantiate(`(module + (type (func (result i32))) + (table 160 320 funcref) + (elem funcref + (ref.func $$f0) (ref.func $$f1) (ref.func $$f2) (ref.func $$f3) + (ref.func $$f4) (ref.func $$f5) (ref.func $$f6) (ref.func $$f7) + (ref.func $$f8) (ref.func $$f9) (ref.func $$f10) (ref.func $$f11) + (ref.func $$f12) (ref.func $$f13) (ref.func $$f14) (ref.func $$f15)) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$offs i32) (param $$len i32) + (table.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/table_init.wast:1820 +assert_trap(() => invoke($31, `run`, [97, 31]), `out of bounds table access`); + +// ./test/core/table_init.wast:1821 +assert_trap(() => invoke($31, `test`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:1822 +assert_trap(() => invoke($31, `test`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:1823 +assert_trap(() => invoke($31, `test`, [2]), `uninitialized element`); + +// ./test/core/table_init.wast:1824 +assert_trap(() => invoke($31, `test`, [3]), `uninitialized element`); + +// ./test/core/table_init.wast:1825 +assert_trap(() => invoke($31, `test`, [4]), `uninitialized element`); + +// ./test/core/table_init.wast:1826 +assert_trap(() => invoke($31, `test`, [5]), `uninitialized element`); + +// ./test/core/table_init.wast:1827 +assert_trap(() => invoke($31, `test`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:1828 +assert_trap(() => invoke($31, `test`, [7]), `uninitialized element`); + +// ./test/core/table_init.wast:1829 +assert_trap(() => invoke($31, `test`, [8]), `uninitialized element`); + +// ./test/core/table_init.wast:1830 +assert_trap(() => invoke($31, `test`, [9]), `uninitialized element`); + +// ./test/core/table_init.wast:1831 +assert_trap(() => invoke($31, `test`, [10]), `uninitialized element`); + +// ./test/core/table_init.wast:1832 +assert_trap(() => invoke($31, `test`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:1833 +assert_trap(() => invoke($31, `test`, [12]), `uninitialized element`); + +// ./test/core/table_init.wast:1834 +assert_trap(() => invoke($31, `test`, [13]), `uninitialized element`); + +// ./test/core/table_init.wast:1835 +assert_trap(() => invoke($31, `test`, [14]), `uninitialized element`); + +// ./test/core/table_init.wast:1836 +assert_trap(() => invoke($31, `test`, [15]), `uninitialized element`); + +// ./test/core/table_init.wast:1837 +assert_trap(() => invoke($31, `test`, [16]), `uninitialized element`); + +// ./test/core/table_init.wast:1838 +assert_trap(() => invoke($31, `test`, [17]), `uninitialized element`); + +// ./test/core/table_init.wast:1839 +assert_trap(() => invoke($31, `test`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:1840 +assert_trap(() => invoke($31, `test`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:1841 +assert_trap(() => invoke($31, `test`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:1842 +assert_trap(() => invoke($31, `test`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:1843 +assert_trap(() => invoke($31, `test`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:1844 +assert_trap(() => invoke($31, `test`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:1845 +assert_trap(() => invoke($31, `test`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:1846 +assert_trap(() => invoke($31, `test`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:1847 +assert_trap(() => invoke($31, `test`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:1848 +assert_trap(() => invoke($31, `test`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:1849 +assert_trap(() => invoke($31, `test`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:1850 +assert_trap(() => invoke($31, `test`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:1851 +assert_trap(() => invoke($31, `test`, [30]), `uninitialized element`); + +// ./test/core/table_init.wast:1852 +assert_trap(() => invoke($31, `test`, [31]), `uninitialized element`); + +// ./test/core/table_init.wast:1853 +assert_trap(() => invoke($31, `test`, [32]), `uninitialized element`); + +// ./test/core/table_init.wast:1854 +assert_trap(() => invoke($31, `test`, [33]), `uninitialized element`); + +// ./test/core/table_init.wast:1855 +assert_trap(() => invoke($31, `test`, [34]), `uninitialized element`); + +// ./test/core/table_init.wast:1856 +assert_trap(() => invoke($31, `test`, [35]), `uninitialized element`); + +// ./test/core/table_init.wast:1857 +assert_trap(() => invoke($31, `test`, [36]), `uninitialized element`); + +// ./test/core/table_init.wast:1858 +assert_trap(() => invoke($31, `test`, [37]), `uninitialized element`); + +// ./test/core/table_init.wast:1859 +assert_trap(() => invoke($31, `test`, [38]), `uninitialized element`); + +// ./test/core/table_init.wast:1860 +assert_trap(() => invoke($31, `test`, [39]), `uninitialized element`); + +// ./test/core/table_init.wast:1861 +assert_trap(() => invoke($31, `test`, [40]), `uninitialized element`); + +// ./test/core/table_init.wast:1862 +assert_trap(() => invoke($31, `test`, [41]), `uninitialized element`); + +// ./test/core/table_init.wast:1863 +assert_trap(() => invoke($31, `test`, [42]), `uninitialized element`); + +// ./test/core/table_init.wast:1864 +assert_trap(() => invoke($31, `test`, [43]), `uninitialized element`); + +// ./test/core/table_init.wast:1865 +assert_trap(() => invoke($31, `test`, [44]), `uninitialized element`); + +// ./test/core/table_init.wast:1866 +assert_trap(() => invoke($31, `test`, [45]), `uninitialized element`); + +// ./test/core/table_init.wast:1867 +assert_trap(() => invoke($31, `test`, [46]), `uninitialized element`); + +// ./test/core/table_init.wast:1868 +assert_trap(() => invoke($31, `test`, [47]), `uninitialized element`); + +// ./test/core/table_init.wast:1869 +assert_trap(() => invoke($31, `test`, [48]), `uninitialized element`); + +// ./test/core/table_init.wast:1870 +assert_trap(() => invoke($31, `test`, [49]), `uninitialized element`); + +// ./test/core/table_init.wast:1871 +assert_trap(() => invoke($31, `test`, [50]), `uninitialized element`); + +// ./test/core/table_init.wast:1872 +assert_trap(() => invoke($31, `test`, [51]), `uninitialized element`); + +// ./test/core/table_init.wast:1873 +assert_trap(() => invoke($31, `test`, [52]), `uninitialized element`); + +// ./test/core/table_init.wast:1874 +assert_trap(() => invoke($31, `test`, [53]), `uninitialized element`); + +// ./test/core/table_init.wast:1875 +assert_trap(() => invoke($31, `test`, [54]), `uninitialized element`); + +// ./test/core/table_init.wast:1876 +assert_trap(() => invoke($31, `test`, [55]), `uninitialized element`); + +// ./test/core/table_init.wast:1877 +assert_trap(() => invoke($31, `test`, [56]), `uninitialized element`); + +// ./test/core/table_init.wast:1878 +assert_trap(() => invoke($31, `test`, [57]), `uninitialized element`); + +// ./test/core/table_init.wast:1879 +assert_trap(() => invoke($31, `test`, [58]), `uninitialized element`); + +// ./test/core/table_init.wast:1880 +assert_trap(() => invoke($31, `test`, [59]), `uninitialized element`); + +// ./test/core/table_init.wast:1881 +assert_trap(() => invoke($31, `test`, [60]), `uninitialized element`); + +// ./test/core/table_init.wast:1882 +assert_trap(() => invoke($31, `test`, [61]), `uninitialized element`); + +// ./test/core/table_init.wast:1883 +assert_trap(() => invoke($31, `test`, [62]), `uninitialized element`); + +// ./test/core/table_init.wast:1884 +assert_trap(() => invoke($31, `test`, [63]), `uninitialized element`); + +// ./test/core/table_init.wast:1885 +assert_trap(() => invoke($31, `test`, [64]), `uninitialized element`); + +// ./test/core/table_init.wast:1886 +assert_trap(() => invoke($31, `test`, [65]), `uninitialized element`); + +// ./test/core/table_init.wast:1887 +assert_trap(() => invoke($31, `test`, [66]), `uninitialized element`); + +// ./test/core/table_init.wast:1888 +assert_trap(() => invoke($31, `test`, [67]), `uninitialized element`); + +// ./test/core/table_init.wast:1889 +assert_trap(() => invoke($31, `test`, [68]), `uninitialized element`); + +// ./test/core/table_init.wast:1890 +assert_trap(() => invoke($31, `test`, [69]), `uninitialized element`); + +// ./test/core/table_init.wast:1891 +assert_trap(() => invoke($31, `test`, [70]), `uninitialized element`); + +// ./test/core/table_init.wast:1892 +assert_trap(() => invoke($31, `test`, [71]), `uninitialized element`); + +// ./test/core/table_init.wast:1893 +assert_trap(() => invoke($31, `test`, [72]), `uninitialized element`); + +// ./test/core/table_init.wast:1894 +assert_trap(() => invoke($31, `test`, [73]), `uninitialized element`); + +// ./test/core/table_init.wast:1895 +assert_trap(() => invoke($31, `test`, [74]), `uninitialized element`); + +// ./test/core/table_init.wast:1896 +assert_trap(() => invoke($31, `test`, [75]), `uninitialized element`); + +// ./test/core/table_init.wast:1897 +assert_trap(() => invoke($31, `test`, [76]), `uninitialized element`); + +// ./test/core/table_init.wast:1898 +assert_trap(() => invoke($31, `test`, [77]), `uninitialized element`); + +// ./test/core/table_init.wast:1899 +assert_trap(() => invoke($31, `test`, [78]), `uninitialized element`); + +// ./test/core/table_init.wast:1900 +assert_trap(() => invoke($31, `test`, [79]), `uninitialized element`); + +// ./test/core/table_init.wast:1901 +assert_trap(() => invoke($31, `test`, [80]), `uninitialized element`); + +// ./test/core/table_init.wast:1902 +assert_trap(() => invoke($31, `test`, [81]), `uninitialized element`); + +// ./test/core/table_init.wast:1903 +assert_trap(() => invoke($31, `test`, [82]), `uninitialized element`); + +// ./test/core/table_init.wast:1904 +assert_trap(() => invoke($31, `test`, [83]), `uninitialized element`); + +// ./test/core/table_init.wast:1905 +assert_trap(() => invoke($31, `test`, [84]), `uninitialized element`); + +// ./test/core/table_init.wast:1906 +assert_trap(() => invoke($31, `test`, [85]), `uninitialized element`); + +// ./test/core/table_init.wast:1907 +assert_trap(() => invoke($31, `test`, [86]), `uninitialized element`); + +// ./test/core/table_init.wast:1908 +assert_trap(() => invoke($31, `test`, [87]), `uninitialized element`); + +// ./test/core/table_init.wast:1909 +assert_trap(() => invoke($31, `test`, [88]), `uninitialized element`); + +// ./test/core/table_init.wast:1910 +assert_trap(() => invoke($31, `test`, [89]), `uninitialized element`); + +// ./test/core/table_init.wast:1911 +assert_trap(() => invoke($31, `test`, [90]), `uninitialized element`); + +// ./test/core/table_init.wast:1912 +assert_trap(() => invoke($31, `test`, [91]), `uninitialized element`); + +// ./test/core/table_init.wast:1913 +assert_trap(() => invoke($31, `test`, [92]), `uninitialized element`); + +// ./test/core/table_init.wast:1914 +assert_trap(() => invoke($31, `test`, [93]), `uninitialized element`); + +// ./test/core/table_init.wast:1915 +assert_trap(() => invoke($31, `test`, [94]), `uninitialized element`); + +// ./test/core/table_init.wast:1916 +assert_trap(() => invoke($31, `test`, [95]), `uninitialized element`); + +// ./test/core/table_init.wast:1917 +assert_trap(() => invoke($31, `test`, [96]), `uninitialized element`); + +// ./test/core/table_init.wast:1918 +assert_trap(() => invoke($31, `test`, [97]), `uninitialized element`); + +// ./test/core/table_init.wast:1919 +assert_trap(() => invoke($31, `test`, [98]), `uninitialized element`); + +// ./test/core/table_init.wast:1920 +assert_trap(() => invoke($31, `test`, [99]), `uninitialized element`); + +// ./test/core/table_init.wast:1921 +assert_trap(() => invoke($31, `test`, [100]), `uninitialized element`); + +// ./test/core/table_init.wast:1922 +assert_trap(() => invoke($31, `test`, [101]), `uninitialized element`); + +// ./test/core/table_init.wast:1923 +assert_trap(() => invoke($31, `test`, [102]), `uninitialized element`); + +// ./test/core/table_init.wast:1924 +assert_trap(() => invoke($31, `test`, [103]), `uninitialized element`); + +// ./test/core/table_init.wast:1925 +assert_trap(() => invoke($31, `test`, [104]), `uninitialized element`); + +// ./test/core/table_init.wast:1926 +assert_trap(() => invoke($31, `test`, [105]), `uninitialized element`); + +// ./test/core/table_init.wast:1927 +assert_trap(() => invoke($31, `test`, [106]), `uninitialized element`); + +// ./test/core/table_init.wast:1928 +assert_trap(() => invoke($31, `test`, [107]), `uninitialized element`); + +// ./test/core/table_init.wast:1929 +assert_trap(() => invoke($31, `test`, [108]), `uninitialized element`); + +// ./test/core/table_init.wast:1930 +assert_trap(() => invoke($31, `test`, [109]), `uninitialized element`); + +// ./test/core/table_init.wast:1931 +assert_trap(() => invoke($31, `test`, [110]), `uninitialized element`); + +// ./test/core/table_init.wast:1932 +assert_trap(() => invoke($31, `test`, [111]), `uninitialized element`); + +// ./test/core/table_init.wast:1933 +assert_trap(() => invoke($31, `test`, [112]), `uninitialized element`); + +// ./test/core/table_init.wast:1934 +assert_trap(() => invoke($31, `test`, [113]), `uninitialized element`); + +// ./test/core/table_init.wast:1935 +assert_trap(() => invoke($31, `test`, [114]), `uninitialized element`); + +// ./test/core/table_init.wast:1936 +assert_trap(() => invoke($31, `test`, [115]), `uninitialized element`); + +// ./test/core/table_init.wast:1937 +assert_trap(() => invoke($31, `test`, [116]), `uninitialized element`); + +// ./test/core/table_init.wast:1938 +assert_trap(() => invoke($31, `test`, [117]), `uninitialized element`); + +// ./test/core/table_init.wast:1939 +assert_trap(() => invoke($31, `test`, [118]), `uninitialized element`); + +// ./test/core/table_init.wast:1940 +assert_trap(() => invoke($31, `test`, [119]), `uninitialized element`); + +// ./test/core/table_init.wast:1941 +assert_trap(() => invoke($31, `test`, [120]), `uninitialized element`); + +// ./test/core/table_init.wast:1942 +assert_trap(() => invoke($31, `test`, [121]), `uninitialized element`); + +// ./test/core/table_init.wast:1943 +assert_trap(() => invoke($31, `test`, [122]), `uninitialized element`); + +// ./test/core/table_init.wast:1944 +assert_trap(() => invoke($31, `test`, [123]), `uninitialized element`); + +// ./test/core/table_init.wast:1945 +assert_trap(() => invoke($31, `test`, [124]), `uninitialized element`); + +// ./test/core/table_init.wast:1946 +assert_trap(() => invoke($31, `test`, [125]), `uninitialized element`); + +// ./test/core/table_init.wast:1947 +assert_trap(() => invoke($31, `test`, [126]), `uninitialized element`); + +// ./test/core/table_init.wast:1948 +assert_trap(() => invoke($31, `test`, [127]), `uninitialized element`); + +// ./test/core/table_init.wast:1949 +assert_trap(() => invoke($31, `test`, [128]), `uninitialized element`); + +// ./test/core/table_init.wast:1950 +assert_trap(() => invoke($31, `test`, [129]), `uninitialized element`); + +// ./test/core/table_init.wast:1951 +assert_trap(() => invoke($31, `test`, [130]), `uninitialized element`); + +// ./test/core/table_init.wast:1952 +assert_trap(() => invoke($31, `test`, [131]), `uninitialized element`); + +// ./test/core/table_init.wast:1953 +assert_trap(() => invoke($31, `test`, [132]), `uninitialized element`); + +// ./test/core/table_init.wast:1954 +assert_trap(() => invoke($31, `test`, [133]), `uninitialized element`); + +// ./test/core/table_init.wast:1955 +assert_trap(() => invoke($31, `test`, [134]), `uninitialized element`); + +// ./test/core/table_init.wast:1956 +assert_trap(() => invoke($31, `test`, [135]), `uninitialized element`); + +// ./test/core/table_init.wast:1957 +assert_trap(() => invoke($31, `test`, [136]), `uninitialized element`); + +// ./test/core/table_init.wast:1958 +assert_trap(() => invoke($31, `test`, [137]), `uninitialized element`); + +// ./test/core/table_init.wast:1959 +assert_trap(() => invoke($31, `test`, [138]), `uninitialized element`); + +// ./test/core/table_init.wast:1960 +assert_trap(() => invoke($31, `test`, [139]), `uninitialized element`); + +// ./test/core/table_init.wast:1961 +assert_trap(() => invoke($31, `test`, [140]), `uninitialized element`); + +// ./test/core/table_init.wast:1962 +assert_trap(() => invoke($31, `test`, [141]), `uninitialized element`); + +// ./test/core/table_init.wast:1963 +assert_trap(() => invoke($31, `test`, [142]), `uninitialized element`); + +// ./test/core/table_init.wast:1964 +assert_trap(() => invoke($31, `test`, [143]), `uninitialized element`); + +// ./test/core/table_init.wast:1965 +assert_trap(() => invoke($31, `test`, [144]), `uninitialized element`); + +// ./test/core/table_init.wast:1966 +assert_trap(() => invoke($31, `test`, [145]), `uninitialized element`); + +// ./test/core/table_init.wast:1967 +assert_trap(() => invoke($31, `test`, [146]), `uninitialized element`); + +// ./test/core/table_init.wast:1968 +assert_trap(() => invoke($31, `test`, [147]), `uninitialized element`); + +// ./test/core/table_init.wast:1969 +assert_trap(() => invoke($31, `test`, [148]), `uninitialized element`); + +// ./test/core/table_init.wast:1970 +assert_trap(() => invoke($31, `test`, [149]), `uninitialized element`); + +// ./test/core/table_init.wast:1971 +assert_trap(() => invoke($31, `test`, [150]), `uninitialized element`); + +// ./test/core/table_init.wast:1972 +assert_trap(() => invoke($31, `test`, [151]), `uninitialized element`); + +// ./test/core/table_init.wast:1973 +assert_trap(() => invoke($31, `test`, [152]), `uninitialized element`); + +// ./test/core/table_init.wast:1974 +assert_trap(() => invoke($31, `test`, [153]), `uninitialized element`); + +// ./test/core/table_init.wast:1975 +assert_trap(() => invoke($31, `test`, [154]), `uninitialized element`); + +// ./test/core/table_init.wast:1976 +assert_trap(() => invoke($31, `test`, [155]), `uninitialized element`); + +// ./test/core/table_init.wast:1977 +assert_trap(() => invoke($31, `test`, [156]), `uninitialized element`); + +// ./test/core/table_init.wast:1978 +assert_trap(() => invoke($31, `test`, [157]), `uninitialized element`); + +// ./test/core/table_init.wast:1979 +assert_trap(() => invoke($31, `test`, [158]), `uninitialized element`); + +// ./test/core/table_init.wast:1980 +assert_trap(() => invoke($31, `test`, [159]), `uninitialized element`); + +// ./test/core/table_init.wast:1982 +let $32 = instantiate(`(module + (type (func (result i32))) + (table 64 64 funcref) + (elem funcref + (ref.func $$f0) (ref.func $$f1) (ref.func $$f2) (ref.func $$f3) + (ref.func $$f4) (ref.func $$f5) (ref.func $$f6) (ref.func $$f7) + (ref.func $$f8) (ref.func $$f9) (ref.func $$f10) (ref.func $$f11) + (ref.func $$f12) (ref.func $$f13) (ref.func $$f14) (ref.func $$f15)) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$offs i32) (param $$len i32) + (table.init 0 (local.get $$offs) (i32.const 0) (local.get $$len))))`); + +// ./test/core/table_init.wast:2010 +assert_trap(() => invoke($32, `run`, [48, -16]), `out of bounds table access`); + +// ./test/core/table_init.wast:2011 +assert_trap(() => invoke($32, `test`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:2012 +assert_trap(() => invoke($32, `test`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:2013 +assert_trap(() => invoke($32, `test`, [2]), `uninitialized element`); + +// ./test/core/table_init.wast:2014 +assert_trap(() => invoke($32, `test`, [3]), `uninitialized element`); + +// ./test/core/table_init.wast:2015 +assert_trap(() => invoke($32, `test`, [4]), `uninitialized element`); + +// ./test/core/table_init.wast:2016 +assert_trap(() => invoke($32, `test`, [5]), `uninitialized element`); + +// ./test/core/table_init.wast:2017 +assert_trap(() => invoke($32, `test`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:2018 +assert_trap(() => invoke($32, `test`, [7]), `uninitialized element`); + +// ./test/core/table_init.wast:2019 +assert_trap(() => invoke($32, `test`, [8]), `uninitialized element`); + +// ./test/core/table_init.wast:2020 +assert_trap(() => invoke($32, `test`, [9]), `uninitialized element`); + +// ./test/core/table_init.wast:2021 +assert_trap(() => invoke($32, `test`, [10]), `uninitialized element`); + +// ./test/core/table_init.wast:2022 +assert_trap(() => invoke($32, `test`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:2023 +assert_trap(() => invoke($32, `test`, [12]), `uninitialized element`); + +// ./test/core/table_init.wast:2024 +assert_trap(() => invoke($32, `test`, [13]), `uninitialized element`); + +// ./test/core/table_init.wast:2025 +assert_trap(() => invoke($32, `test`, [14]), `uninitialized element`); + +// ./test/core/table_init.wast:2026 +assert_trap(() => invoke($32, `test`, [15]), `uninitialized element`); + +// ./test/core/table_init.wast:2027 +assert_trap(() => invoke($32, `test`, [16]), `uninitialized element`); + +// ./test/core/table_init.wast:2028 +assert_trap(() => invoke($32, `test`, [17]), `uninitialized element`); + +// ./test/core/table_init.wast:2029 +assert_trap(() => invoke($32, `test`, [18]), `uninitialized element`); + +// ./test/core/table_init.wast:2030 +assert_trap(() => invoke($32, `test`, [19]), `uninitialized element`); + +// ./test/core/table_init.wast:2031 +assert_trap(() => invoke($32, `test`, [20]), `uninitialized element`); + +// ./test/core/table_init.wast:2032 +assert_trap(() => invoke($32, `test`, [21]), `uninitialized element`); + +// ./test/core/table_init.wast:2033 +assert_trap(() => invoke($32, `test`, [22]), `uninitialized element`); + +// ./test/core/table_init.wast:2034 +assert_trap(() => invoke($32, `test`, [23]), `uninitialized element`); + +// ./test/core/table_init.wast:2035 +assert_trap(() => invoke($32, `test`, [24]), `uninitialized element`); + +// ./test/core/table_init.wast:2036 +assert_trap(() => invoke($32, `test`, [25]), `uninitialized element`); + +// ./test/core/table_init.wast:2037 +assert_trap(() => invoke($32, `test`, [26]), `uninitialized element`); + +// ./test/core/table_init.wast:2038 +assert_trap(() => invoke($32, `test`, [27]), `uninitialized element`); + +// ./test/core/table_init.wast:2039 +assert_trap(() => invoke($32, `test`, [28]), `uninitialized element`); + +// ./test/core/table_init.wast:2040 +assert_trap(() => invoke($32, `test`, [29]), `uninitialized element`); + +// ./test/core/table_init.wast:2041 +assert_trap(() => invoke($32, `test`, [30]), `uninitialized element`); + +// ./test/core/table_init.wast:2042 +assert_trap(() => invoke($32, `test`, [31]), `uninitialized element`); + +// ./test/core/table_init.wast:2043 +assert_trap(() => invoke($32, `test`, [32]), `uninitialized element`); + +// ./test/core/table_init.wast:2044 +assert_trap(() => invoke($32, `test`, [33]), `uninitialized element`); + +// ./test/core/table_init.wast:2045 +assert_trap(() => invoke($32, `test`, [34]), `uninitialized element`); + +// ./test/core/table_init.wast:2046 +assert_trap(() => invoke($32, `test`, [35]), `uninitialized element`); + +// ./test/core/table_init.wast:2047 +assert_trap(() => invoke($32, `test`, [36]), `uninitialized element`); + +// ./test/core/table_init.wast:2048 +assert_trap(() => invoke($32, `test`, [37]), `uninitialized element`); + +// ./test/core/table_init.wast:2049 +assert_trap(() => invoke($32, `test`, [38]), `uninitialized element`); + +// ./test/core/table_init.wast:2050 +assert_trap(() => invoke($32, `test`, [39]), `uninitialized element`); + +// ./test/core/table_init.wast:2051 +assert_trap(() => invoke($32, `test`, [40]), `uninitialized element`); + +// ./test/core/table_init.wast:2052 +assert_trap(() => invoke($32, `test`, [41]), `uninitialized element`); + +// ./test/core/table_init.wast:2053 +assert_trap(() => invoke($32, `test`, [42]), `uninitialized element`); + +// ./test/core/table_init.wast:2054 +assert_trap(() => invoke($32, `test`, [43]), `uninitialized element`); + +// ./test/core/table_init.wast:2055 +assert_trap(() => invoke($32, `test`, [44]), `uninitialized element`); + +// ./test/core/table_init.wast:2056 +assert_trap(() => invoke($32, `test`, [45]), `uninitialized element`); + +// ./test/core/table_init.wast:2057 +assert_trap(() => invoke($32, `test`, [46]), `uninitialized element`); + +// ./test/core/table_init.wast:2058 +assert_trap(() => invoke($32, `test`, [47]), `uninitialized element`); + +// ./test/core/table_init.wast:2059 +assert_trap(() => invoke($32, `test`, [48]), `uninitialized element`); + +// ./test/core/table_init.wast:2060 +assert_trap(() => invoke($32, `test`, [49]), `uninitialized element`); + +// ./test/core/table_init.wast:2061 +assert_trap(() => invoke($32, `test`, [50]), `uninitialized element`); + +// ./test/core/table_init.wast:2062 +assert_trap(() => invoke($32, `test`, [51]), `uninitialized element`); + +// ./test/core/table_init.wast:2063 +assert_trap(() => invoke($32, `test`, [52]), `uninitialized element`); + +// ./test/core/table_init.wast:2064 +assert_trap(() => invoke($32, `test`, [53]), `uninitialized element`); + +// ./test/core/table_init.wast:2065 +assert_trap(() => invoke($32, `test`, [54]), `uninitialized element`); + +// ./test/core/table_init.wast:2066 +assert_trap(() => invoke($32, `test`, [55]), `uninitialized element`); + +// ./test/core/table_init.wast:2067 +assert_trap(() => invoke($32, `test`, [56]), `uninitialized element`); + +// ./test/core/table_init.wast:2068 +assert_trap(() => invoke($32, `test`, [57]), `uninitialized element`); + +// ./test/core/table_init.wast:2069 +assert_trap(() => invoke($32, `test`, [58]), `uninitialized element`); + +// ./test/core/table_init.wast:2070 +assert_trap(() => invoke($32, `test`, [59]), `uninitialized element`); + +// ./test/core/table_init.wast:2071 +assert_trap(() => invoke($32, `test`, [60]), `uninitialized element`); + +// ./test/core/table_init.wast:2072 +assert_trap(() => invoke($32, `test`, [61]), `uninitialized element`); + +// ./test/core/table_init.wast:2073 +assert_trap(() => invoke($32, `test`, [62]), `uninitialized element`); + +// ./test/core/table_init.wast:2074 +assert_trap(() => invoke($32, `test`, [63]), `uninitialized element`); + +// ./test/core/table_init.wast:2076 +let $33 = instantiate(`(module + (type (func (result i32))) + (table 16 16 funcref) + (elem funcref + (ref.func $$f0) (ref.func $$f1) (ref.func $$f2) (ref.func $$f3) + (ref.func $$f4) (ref.func $$f5) (ref.func $$f6) (ref.func $$f7) + (ref.func $$f8) (ref.func $$f9) (ref.func $$f10) (ref.func $$f11) + (ref.func $$f12) (ref.func $$f13) (ref.func $$f14) (ref.func $$f15)) + (func $$f0 (export "f0") (result i32) (i32.const 0)) + (func $$f1 (export "f1") (result i32) (i32.const 1)) + (func $$f2 (export "f2") (result i32) (i32.const 2)) + (func $$f3 (export "f3") (result i32) (i32.const 3)) + (func $$f4 (export "f4") (result i32) (i32.const 4)) + (func $$f5 (export "f5") (result i32) (i32.const 5)) + (func $$f6 (export "f6") (result i32) (i32.const 6)) + (func $$f7 (export "f7") (result i32) (i32.const 7)) + (func $$f8 (export "f8") (result i32) (i32.const 8)) + (func $$f9 (export "f9") (result i32) (i32.const 9)) + (func $$f10 (export "f10") (result i32) (i32.const 10)) + (func $$f11 (export "f11") (result i32) (i32.const 11)) + (func $$f12 (export "f12") (result i32) (i32.const 12)) + (func $$f13 (export "f13") (result i32) (i32.const 13)) + (func $$f14 (export "f14") (result i32) (i32.const 14)) + (func $$f15 (export "f15") (result i32) (i32.const 15)) + (func (export "test") (param $$n i32) (result i32) + (call_indirect (type 0) (local.get $$n))) + (func (export "run") (param $$offs i32) (param $$len i32) + (table.init 0 (local.get $$offs) (i32.const 8) (local.get $$len))))`); + +// ./test/core/table_init.wast:2104 +assert_trap(() => invoke($33, `run`, [0, -4]), `out of bounds table access`); + +// ./test/core/table_init.wast:2105 +assert_trap(() => invoke($33, `test`, [0]), `uninitialized element`); + +// ./test/core/table_init.wast:2106 +assert_trap(() => invoke($33, `test`, [1]), `uninitialized element`); + +// ./test/core/table_init.wast:2107 +assert_trap(() => invoke($33, `test`, [2]), `uninitialized element`); + +// ./test/core/table_init.wast:2108 +assert_trap(() => invoke($33, `test`, [3]), `uninitialized element`); + +// ./test/core/table_init.wast:2109 +assert_trap(() => invoke($33, `test`, [4]), `uninitialized element`); + +// ./test/core/table_init.wast:2110 +assert_trap(() => invoke($33, `test`, [5]), `uninitialized element`); + +// ./test/core/table_init.wast:2111 +assert_trap(() => invoke($33, `test`, [6]), `uninitialized element`); + +// ./test/core/table_init.wast:2112 +assert_trap(() => invoke($33, `test`, [7]), `uninitialized element`); + +// ./test/core/table_init.wast:2113 +assert_trap(() => invoke($33, `test`, [8]), `uninitialized element`); + +// ./test/core/table_init.wast:2114 +assert_trap(() => invoke($33, `test`, [9]), `uninitialized element`); + +// ./test/core/table_init.wast:2115 +assert_trap(() => invoke($33, `test`, [10]), `uninitialized element`); + +// ./test/core/table_init.wast:2116 +assert_trap(() => invoke($33, `test`, [11]), `uninitialized element`); + +// ./test/core/table_init.wast:2117 +assert_trap(() => invoke($33, `test`, [12]), `uninitialized element`); + +// ./test/core/table_init.wast:2118 +assert_trap(() => invoke($33, `test`, [13]), `uninitialized element`); + +// ./test/core/table_init.wast:2119 +assert_trap(() => invoke($33, `test`, [14]), `uninitialized element`); + +// ./test/core/table_init.wast:2120 +assert_trap(() => invoke($33, `test`, [15]), `uninitialized element`); + +// ./test/core/table_init.wast:2122 +let $34 = instantiate(`(module + (table 1 funcref) + ;; 65 elem segments. 64 is the smallest positive number that is encoded + ;; differently as a signed LEB. + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) (elem funcref) (elem funcref) (elem funcref) + (elem funcref) + (func (table.init 64 (i32.const 0) (i32.const 0) (i32.const 0))))`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/table_set.wast.js b/js/src/jit-test/tests/wasm/spec/spec/table_set.wast.js new file mode 100644 index 0000000000..fd9aae6bf0 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/table_set.wast.js @@ -0,0 +1,177 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/table_set.wast + +// ./test/core/table_set.wast:1 +let $0 = instantiate(`(module + (table $$t2 1 externref) + (table $$t3 2 funcref) + (elem (table $$t3) (i32.const 1) func $$dummy) + (func $$dummy) + + (func (export "get-externref") (param $$i i32) (result externref) + (table.get $$t2 (local.get $$i)) + ) + (func $$f3 (export "get-funcref") (param $$i i32) (result funcref) + (table.get $$t3 (local.get $$i)) + ) + + (func (export "set-externref") (param $$i i32) (param $$r externref) + (table.set (local.get $$i) (local.get $$r)) + ) + (func (export "set-funcref") (param $$i i32) (param $$r funcref) + (table.set $$t3 (local.get $$i) (local.get $$r)) + ) + (func (export "set-funcref-from") (param $$i i32) (param $$j i32) + (table.set $$t3 (local.get $$i) (table.get $$t3 (local.get $$j))) + ) + + (func (export "is_null-funcref") (param $$i i32) (result i32) + (ref.is_null (call $$f3 (local.get $$i))) + ) +)`); + +// ./test/core/table_set.wast:29 +assert_return(() => invoke($0, `get-externref`, [0]), [value('externref', null)]); + +// ./test/core/table_set.wast:30 +assert_return(() => invoke($0, `set-externref`, [0, externref(1)]), []); + +// ./test/core/table_set.wast:31 +assert_return(() => invoke($0, `get-externref`, [0]), [new ExternRefResult(1)]); + +// ./test/core/table_set.wast:32 +assert_return(() => invoke($0, `set-externref`, [0, null]), []); + +// ./test/core/table_set.wast:33 +assert_return(() => invoke($0, `get-externref`, [0]), [value('externref', null)]); + +// ./test/core/table_set.wast:35 +assert_return(() => invoke($0, `get-funcref`, [0]), [value('anyfunc', null)]); + +// ./test/core/table_set.wast:36 +assert_return(() => invoke($0, `set-funcref-from`, [0, 1]), []); + +// ./test/core/table_set.wast:37 +assert_return(() => invoke($0, `is_null-funcref`, [0]), [value("i32", 0)]); + +// ./test/core/table_set.wast:38 +assert_return(() => invoke($0, `set-funcref`, [0, null]), []); + +// ./test/core/table_set.wast:39 +assert_return(() => invoke($0, `get-funcref`, [0]), [value('anyfunc', null)]); + +// ./test/core/table_set.wast:41 +assert_trap(() => invoke($0, `set-externref`, [2, null]), `out of bounds table access`); + +// ./test/core/table_set.wast:42 +assert_trap(() => invoke($0, `set-funcref`, [3, null]), `out of bounds table access`); + +// ./test/core/table_set.wast:43 +assert_trap(() => invoke($0, `set-externref`, [-1, null]), `out of bounds table access`); + +// ./test/core/table_set.wast:44 +assert_trap(() => invoke($0, `set-funcref`, [-1, null]), `out of bounds table access`); + +// ./test/core/table_set.wast:46 +assert_trap(() => invoke($0, `set-externref`, [2, externref(0)]), `out of bounds table access`); + +// ./test/core/table_set.wast:47 +assert_trap(() => invoke($0, `set-funcref-from`, [3, 1]), `out of bounds table access`); + +// ./test/core/table_set.wast:48 +assert_trap(() => invoke($0, `set-externref`, [-1, externref(0)]), `out of bounds table access`); + +// ./test/core/table_set.wast:49 +assert_trap(() => invoke($0, `set-funcref-from`, [-1, 1]), `out of bounds table access`); + +// ./test/core/table_set.wast:54 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-index-value-empty-vs-i32-externref + (table.set $$t) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_set.wast:63 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-index-empty-vs-i32 + (table.set $$t (ref.null extern)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_set.wast:72 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-value-empty-vs-externref + (table.set $$t (i32.const 1)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_set.wast:81 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-size-f32-vs-i32 + (table.set $$t (f32.const 1) (ref.null extern)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_set.wast:90 +assert_invalid( + () => instantiate(`(module + (table $$t 10 funcref) + (func $$type-value-externref-vs-funcref (param $$r externref) + (table.set $$t (i32.const 1) (local.get $$r)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_set.wast:100 +assert_invalid( + () => instantiate(`(module + (table $$t1 1 externref) + (table $$t2 1 funcref) + (func $$type-value-externref-vs-funcref-multi (param $$r externref) + (table.set $$t2 (i32.const 0) (local.get $$r)) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_set.wast:111 +assert_invalid( + () => instantiate(`(module + (table $$t 10 externref) + (func $$type-result-empty-vs-num (result i32) + (table.set $$t (i32.const 0) (ref.null extern)) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/table_size.wast.js b/js/src/jit-test/tests/wasm/spec/spec/table_size.wast.js new file mode 100644 index 0000000000..a12edf0363 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/table_size.wast.js @@ -0,0 +1,172 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/table_size.wast + +// ./test/core/table_size.wast:1 +let $0 = instantiate(`(module + (table $$t0 0 externref) + (table $$t1 1 externref) + (table $$t2 0 2 externref) + (table $$t3 3 8 externref) + + (func (export "size-t0") (result i32) table.size) + (func (export "size-t1") (result i32) (table.size $$t1)) + (func (export "size-t2") (result i32) (table.size $$t2)) + (func (export "size-t3") (result i32) (table.size $$t3)) + + (func (export "grow-t0") (param $$sz i32) + (drop (table.grow $$t0 (ref.null extern) (local.get $$sz))) + ) + (func (export "grow-t1") (param $$sz i32) + (drop (table.grow $$t1 (ref.null extern) (local.get $$sz))) + ) + (func (export "grow-t2") (param $$sz i32) + (drop (table.grow $$t2 (ref.null extern) (local.get $$sz))) + ) + (func (export "grow-t3") (param $$sz i32) + (drop (table.grow $$t3 (ref.null extern) (local.get $$sz))) + ) +)`); + +// ./test/core/table_size.wast:26 +assert_return(() => invoke($0, `size-t0`, []), [value("i32", 0)]); + +// ./test/core/table_size.wast:27 +assert_return(() => invoke($0, `grow-t0`, [1]), []); + +// ./test/core/table_size.wast:28 +assert_return(() => invoke($0, `size-t0`, []), [value("i32", 1)]); + +// ./test/core/table_size.wast:29 +assert_return(() => invoke($0, `grow-t0`, [4]), []); + +// ./test/core/table_size.wast:30 +assert_return(() => invoke($0, `size-t0`, []), [value("i32", 5)]); + +// ./test/core/table_size.wast:31 +assert_return(() => invoke($0, `grow-t0`, [0]), []); + +// ./test/core/table_size.wast:32 +assert_return(() => invoke($0, `size-t0`, []), [value("i32", 5)]); + +// ./test/core/table_size.wast:34 +assert_return(() => invoke($0, `size-t1`, []), [value("i32", 1)]); + +// ./test/core/table_size.wast:35 +assert_return(() => invoke($0, `grow-t1`, [1]), []); + +// ./test/core/table_size.wast:36 +assert_return(() => invoke($0, `size-t1`, []), [value("i32", 2)]); + +// ./test/core/table_size.wast:37 +assert_return(() => invoke($0, `grow-t1`, [4]), []); + +// ./test/core/table_size.wast:38 +assert_return(() => invoke($0, `size-t1`, []), [value("i32", 6)]); + +// ./test/core/table_size.wast:39 +assert_return(() => invoke($0, `grow-t1`, [0]), []); + +// ./test/core/table_size.wast:40 +assert_return(() => invoke($0, `size-t1`, []), [value("i32", 6)]); + +// ./test/core/table_size.wast:42 +assert_return(() => invoke($0, `size-t2`, []), [value("i32", 0)]); + +// ./test/core/table_size.wast:43 +assert_return(() => invoke($0, `grow-t2`, [3]), []); + +// ./test/core/table_size.wast:44 +assert_return(() => invoke($0, `size-t2`, []), [value("i32", 0)]); + +// ./test/core/table_size.wast:45 +assert_return(() => invoke($0, `grow-t2`, [1]), []); + +// ./test/core/table_size.wast:46 +assert_return(() => invoke($0, `size-t2`, []), [value("i32", 1)]); + +// ./test/core/table_size.wast:47 +assert_return(() => invoke($0, `grow-t2`, [0]), []); + +// ./test/core/table_size.wast:48 +assert_return(() => invoke($0, `size-t2`, []), [value("i32", 1)]); + +// ./test/core/table_size.wast:49 +assert_return(() => invoke($0, `grow-t2`, [4]), []); + +// ./test/core/table_size.wast:50 +assert_return(() => invoke($0, `size-t2`, []), [value("i32", 1)]); + +// ./test/core/table_size.wast:51 +assert_return(() => invoke($0, `grow-t2`, [1]), []); + +// ./test/core/table_size.wast:52 +assert_return(() => invoke($0, `size-t2`, []), [value("i32", 2)]); + +// ./test/core/table_size.wast:54 +assert_return(() => invoke($0, `size-t3`, []), [value("i32", 3)]); + +// ./test/core/table_size.wast:55 +assert_return(() => invoke($0, `grow-t3`, [1]), []); + +// ./test/core/table_size.wast:56 +assert_return(() => invoke($0, `size-t3`, []), [value("i32", 4)]); + +// ./test/core/table_size.wast:57 +assert_return(() => invoke($0, `grow-t3`, [3]), []); + +// ./test/core/table_size.wast:58 +assert_return(() => invoke($0, `size-t3`, []), [value("i32", 7)]); + +// ./test/core/table_size.wast:59 +assert_return(() => invoke($0, `grow-t3`, [0]), []); + +// ./test/core/table_size.wast:60 +assert_return(() => invoke($0, `size-t3`, []), [value("i32", 7)]); + +// ./test/core/table_size.wast:61 +assert_return(() => invoke($0, `grow-t3`, [2]), []); + +// ./test/core/table_size.wast:62 +assert_return(() => invoke($0, `size-t3`, []), [value("i32", 7)]); + +// ./test/core/table_size.wast:63 +assert_return(() => invoke($0, `grow-t3`, [1]), []); + +// ./test/core/table_size.wast:64 +assert_return(() => invoke($0, `size-t3`, []), [value("i32", 8)]); + +// ./test/core/table_size.wast:69 +assert_invalid( + () => instantiate(`(module + (table $$t 1 externref) + (func $$type-result-i32-vs-empty + (table.size $$t) + ) + )`), + `type mismatch`, +); + +// ./test/core/table_size.wast:78 +assert_invalid( + () => instantiate(`(module + (table $$t 1 externref) + (func $$type-result-i32-vs-f32 (result f32) + (table.size $$t) + ) + )`), + `type mismatch`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/token.wast.js b/js/src/jit-test/tests/wasm/spec/spec/token.wast.js new file mode 100644 index 0000000000..0856848c1e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/token.wast.js @@ -0,0 +1,22 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/token.wast + +// ./test/core/token.wast:3 +assert_malformed(() => instantiate(`(func (drop (i32.const0))) `), `unknown operator`); + +// ./test/core/token.wast:7 +assert_malformed(() => instantiate(`(func br 0drop) `), `unknown operator`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/tokens.wast.js b/js/src/jit-test/tests/wasm/spec/spec/tokens.wast.js new file mode 100644 index 0000000000..e7b653f77e --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/tokens.wast.js @@ -0,0 +1,283 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/tokens.wast + +// ./test/core/tokens.wast:3 +let $0 = instantiate(`(module + (func(nop)) +)`); + +// ./test/core/tokens.wast:6 +let $1 = instantiate(`(module + (func (nop)nop) +)`); + +// ./test/core/tokens.wast:9 +let $2 = instantiate(`(module + (func nop(nop)) +)`); + +// ./test/core/tokens.wast:12 +let $3 = instantiate(`(module + (func(nop)(nop)) +)`); + +// ./test/core/tokens.wast:15 +let $4 = instantiate(`(module + (func $$f(nop)) +)`); + +// ./test/core/tokens.wast:18 +let $5 = instantiate(`(module + (func br 0(nop)) +)`); + +// ./test/core/tokens.wast:21 +let $6 = instantiate(`(module + (table 1 funcref) + (func) + (elem (i32.const 0)0) +)`); + +// ./test/core/tokens.wast:26 +let $7 = instantiate(`(module + (table 1 funcref) + (func $$f) + (elem (i32.const 0)$$f) +)`); + +// ./test/core/tokens.wast:31 +let $8 = instantiate(`(module + (memory 1) + (data (i32.const 0)"a") +)`); + +// ./test/core/tokens.wast:35 +let $9 = instantiate(`(module + (import "spectest" "print"(func)) +)`); + +// ./test/core/tokens.wast:42 +let $10 = instantiate(`(module + (func;;bla + ) +)`); + +// ./test/core/tokens.wast:46 +let $11 = instantiate(`(module + (func (nop);;bla + ) +)`); + +// ./test/core/tokens.wast:50 +let $12 = instantiate(`(module + (func nop;;bla + ) +)`); + +// ./test/core/tokens.wast:54 +let $13 = instantiate(`(module + (func $$f;;bla + ) +)`); + +// ./test/core/tokens.wast:58 +let $14 = instantiate(`(module + (func br 0;;bla + ) +)`); + +// ./test/core/tokens.wast:62 +let $15 = instantiate(`(module + (data "a";;bla + ) +)`); + +// ./test/core/tokens.wast:70 +let $16 = instantiate(`(module + (func (block $$l (i32.const 0) (br_table 0 $$l))) +)`); + +// ./test/core/tokens.wast:73 +assert_malformed( + () => instantiate(`(func (block $$l (i32.const 0) (br_table 0$$l))) `), + `unknown operator`, +); + +// ./test/core/tokens.wast:80 +let $17 = instantiate(`(module + (func (block $$l (i32.const 0) (br_table $$l 0))) +)`); + +// ./test/core/tokens.wast:83 +assert_malformed( + () => instantiate(`(func (block $$l (i32.const 0) (br_table $$l0))) `), + `unknown label`, +); + +// ./test/core/tokens.wast:90 +let $18 = instantiate(`(module + (func (block $$l (i32.const 0) (br_table $$l $$l))) +)`); + +// ./test/core/tokens.wast:93 +assert_malformed( + () => instantiate(`(func (block $$l (i32.const 0) (br_table $$l$$l))) `), + `unknown label`, +); + +// ./test/core/tokens.wast:100 +let $19 = instantiate(`(module + (func (block $$l0 (i32.const 0) (br_table $$l0))) +)`); + +// ./test/core/tokens.wast:103 +let $20 = instantiate(`(module + (func (block $$l$$l (i32.const 0) (br_table $$l$$l))) +)`); + +// ./test/core/tokens.wast:110 +let $21 = instantiate(`(module + (data "a") +)`); + +// ./test/core/tokens.wast:113 +assert_malformed(() => instantiate(`(data"a") `), `unknown operator`); + +// ./test/core/tokens.wast:120 +let $22 = instantiate(`(module + (data $$l "a") +)`); + +// ./test/core/tokens.wast:123 +assert_malformed(() => instantiate(`(data $$l"a") `), `unknown operator`); + +// ./test/core/tokens.wast:130 +let $23 = instantiate(`(module + (data $$l " a") +)`); + +// ./test/core/tokens.wast:133 +assert_malformed(() => instantiate(`(data $$l" a") `), `unknown operator`); + +// ./test/core/tokens.wast:140 +let $24 = instantiate(`(module + (data $$l "a ") +)`); + +// ./test/core/tokens.wast:143 +assert_malformed(() => instantiate(`(data $$l"a ") `), `unknown operator`); + +// ./test/core/tokens.wast:150 +let $25 = instantiate(`(module + (data $$l "a " "b") +)`); + +// ./test/core/tokens.wast:153 +assert_malformed(() => instantiate(`(data $$l"a ""b") `), `unknown operator`); + +// ./test/core/tokens.wast:160 +let $26 = instantiate(`(module + (data $$l "\u{f61a}\u{f4a9}") +)`); + +// ./test/core/tokens.wast:163 +assert_malformed(() => instantiate(`(data $$l"\u{f61a}\u{f4a9}") `), `unknown operator`); + +// ./test/core/tokens.wast:170 +let $27 = instantiate(`(module + (data $$l " \u{f61a}\u{f4a9}") +)`); + +// ./test/core/tokens.wast:173 +assert_malformed(() => instantiate(`(data $$l" \u{f61a}\u{f4a9}") `), `unknown operator`); + +// ./test/core/tokens.wast:180 +let $28 = instantiate(`(module + (data $$l "\u{f61a}\u{f4a9} ") +)`); + +// ./test/core/tokens.wast:183 +assert_malformed(() => instantiate(`(data $$l"\u{f61a}\u{f4a9} ") `), `unknown operator`); + +// ./test/core/tokens.wast:190 +let $29 = instantiate(`(module + (data "a" "b") +)`); + +// ./test/core/tokens.wast:193 +assert_malformed(() => instantiate(`(data "a""b") `), `unknown operator`); + +// ./test/core/tokens.wast:200 +let $30 = instantiate(`(module + (data "a" " b") +)`); + +// ./test/core/tokens.wast:203 +assert_malformed(() => instantiate(`(data "a"" b") `), `unknown operator`); + +// ./test/core/tokens.wast:210 +let $31 = instantiate(`(module + (data "a " "b") +)`); + +// ./test/core/tokens.wast:213 +assert_malformed(() => instantiate(`(data "a ""b") `), `unknown operator`); + +// ./test/core/tokens.wast:220 +let $32 = instantiate(`(module + (data "\u{f61a}\u{f4a9}" "\u{f61a}\u{f4a9}") +)`); + +// ./test/core/tokens.wast:223 +assert_malformed( + () => instantiate(`(data "\u{f61a}\u{f4a9}""\u{f61a}\u{f4a9}") `), + `unknown operator`, +); + +// ./test/core/tokens.wast:230 +let $33 = instantiate(`(module + (data "\u{f61a}\u{f4a9}" " \u{f61a}\u{f4a9}") +)`); + +// ./test/core/tokens.wast:233 +assert_malformed( + () => instantiate(`(data "\u{f61a}\u{f4a9}"" \u{f61a}\u{f4a9}") `), + `unknown operator`, +); + +// ./test/core/tokens.wast:240 +let $34 = instantiate(`(module + (data "\u{f61a}\u{f4a9} " "\u{f61a}\u{f4a9}") +)`); + +// ./test/core/tokens.wast:243 +assert_malformed( + () => instantiate(`(data "\u{f61a}\u{f4a9} ""\u{f61a}\u{f4a9}") `), + `unknown operator`, +); + +// ./test/core/tokens.wast:251 +assert_malformed(() => instantiate(`(func "a"x) `), `unknown operator`); + +// ./test/core/tokens.wast:257 +assert_malformed(() => instantiate(`(func "a"0) `), `unknown operator`); + +// ./test/core/tokens.wast:263 +assert_malformed(() => instantiate(`(func 0"a") `), `unknown operator`); + +// ./test/core/tokens.wast:269 +assert_malformed(() => instantiate(`(func "a"$$x) `), `unknown operator`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/traps.wast.js b/js/src/jit-test/tests/wasm/spec/spec/traps.wast.js new file mode 100644 index 0000000000..61fc4dcacc --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/traps.wast.js @@ -0,0 +1,200 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/traps.wast + +// ./test/core/traps.wast:5 +let $0 = instantiate(`(module + (func (export "no_dce.i32.div_s") (param $$x i32) (param $$y i32) + (drop (i32.div_s (local.get $$x) (local.get $$y)))) + (func (export "no_dce.i32.div_u") (param $$x i32) (param $$y i32) + (drop (i32.div_u (local.get $$x) (local.get $$y)))) + (func (export "no_dce.i64.div_s") (param $$x i64) (param $$y i64) + (drop (i64.div_s (local.get $$x) (local.get $$y)))) + (func (export "no_dce.i64.div_u") (param $$x i64) (param $$y i64) + (drop (i64.div_u (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/traps.wast:16 +assert_trap(() => invoke($0, `no_dce.i32.div_s`, [1, 0]), `integer divide by zero`); + +// ./test/core/traps.wast:17 +assert_trap(() => invoke($0, `no_dce.i32.div_u`, [1, 0]), `integer divide by zero`); + +// ./test/core/traps.wast:18 +assert_trap(() => invoke($0, `no_dce.i64.div_s`, [1n, 0n]), `integer divide by zero`); + +// ./test/core/traps.wast:19 +assert_trap(() => invoke($0, `no_dce.i64.div_u`, [1n, 0n]), `integer divide by zero`); + +// ./test/core/traps.wast:20 +assert_trap(() => invoke($0, `no_dce.i32.div_s`, [-2147483648, -1]), `integer overflow`); + +// ./test/core/traps.wast:21 +assert_trap(() => invoke($0, `no_dce.i64.div_s`, [-9223372036854775808n, -1n]), `integer overflow`); + +// ./test/core/traps.wast:23 +let $1 = instantiate(`(module + (func (export "no_dce.i32.rem_s") (param $$x i32) (param $$y i32) + (drop (i32.rem_s (local.get $$x) (local.get $$y)))) + (func (export "no_dce.i32.rem_u") (param $$x i32) (param $$y i32) + (drop (i32.rem_u (local.get $$x) (local.get $$y)))) + (func (export "no_dce.i64.rem_s") (param $$x i64) (param $$y i64) + (drop (i64.rem_s (local.get $$x) (local.get $$y)))) + (func (export "no_dce.i64.rem_u") (param $$x i64) (param $$y i64) + (drop (i64.rem_u (local.get $$x) (local.get $$y)))) +)`); + +// ./test/core/traps.wast:34 +assert_trap(() => invoke($1, `no_dce.i32.rem_s`, [1, 0]), `integer divide by zero`); + +// ./test/core/traps.wast:35 +assert_trap(() => invoke($1, `no_dce.i32.rem_u`, [1, 0]), `integer divide by zero`); + +// ./test/core/traps.wast:36 +assert_trap(() => invoke($1, `no_dce.i64.rem_s`, [1n, 0n]), `integer divide by zero`); + +// ./test/core/traps.wast:37 +assert_trap(() => invoke($1, `no_dce.i64.rem_u`, [1n, 0n]), `integer divide by zero`); + +// ./test/core/traps.wast:39 +let $2 = instantiate(`(module + (func (export "no_dce.i32.trunc_f32_s") (param $$x f32) (drop (i32.trunc_f32_s (local.get $$x)))) + (func (export "no_dce.i32.trunc_f32_u") (param $$x f32) (drop (i32.trunc_f32_u (local.get $$x)))) + (func (export "no_dce.i32.trunc_f64_s") (param $$x f64) (drop (i32.trunc_f64_s (local.get $$x)))) + (func (export "no_dce.i32.trunc_f64_u") (param $$x f64) (drop (i32.trunc_f64_u (local.get $$x)))) + (func (export "no_dce.i64.trunc_f32_s") (param $$x f32) (drop (i64.trunc_f32_s (local.get $$x)))) + (func (export "no_dce.i64.trunc_f32_u") (param $$x f32) (drop (i64.trunc_f32_u (local.get $$x)))) + (func (export "no_dce.i64.trunc_f64_s") (param $$x f64) (drop (i64.trunc_f64_s (local.get $$x)))) + (func (export "no_dce.i64.trunc_f64_u") (param $$x f64) (drop (i64.trunc_f64_u (local.get $$x)))) +)`); + +// ./test/core/traps.wast:50 +assert_trap( + () => invoke($2, `no_dce.i32.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/traps.wast:51 +assert_trap( + () => invoke($2, `no_dce.i32.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/traps.wast:52 +assert_trap( + () => invoke($2, `no_dce.i32.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/traps.wast:53 +assert_trap( + () => invoke($2, `no_dce.i32.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/traps.wast:54 +assert_trap( + () => invoke($2, `no_dce.i64.trunc_f32_s`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/traps.wast:55 +assert_trap( + () => invoke($2, `no_dce.i64.trunc_f32_u`, [bytes("f32", [0x0, 0x0, 0xc0, 0x7f])]), + `invalid conversion to integer`, +); + +// ./test/core/traps.wast:56 +assert_trap( + () => invoke($2, `no_dce.i64.trunc_f64_s`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/traps.wast:57 +assert_trap( + () => invoke($2, `no_dce.i64.trunc_f64_u`, [ + bytes("f64", [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0x7f]), + ]), + `invalid conversion to integer`, +); + +// ./test/core/traps.wast:59 +let $3 = instantiate(`(module + (memory 1) + + (func (export "no_dce.i32.load") (param $$i i32) (drop (i32.load (local.get $$i)))) + (func (export "no_dce.i32.load16_s") (param $$i i32) (drop (i32.load16_s (local.get $$i)))) + (func (export "no_dce.i32.load16_u") (param $$i i32) (drop (i32.load16_u (local.get $$i)))) + (func (export "no_dce.i32.load8_s") (param $$i i32) (drop (i32.load8_s (local.get $$i)))) + (func (export "no_dce.i32.load8_u") (param $$i i32) (drop (i32.load8_u (local.get $$i)))) + (func (export "no_dce.i64.load") (param $$i i32) (drop (i64.load (local.get $$i)))) + (func (export "no_dce.i64.load32_s") (param $$i i32) (drop (i64.load32_s (local.get $$i)))) + (func (export "no_dce.i64.load32_u") (param $$i i32) (drop (i64.load32_u (local.get $$i)))) + (func (export "no_dce.i64.load16_s") (param $$i i32) (drop (i64.load16_s (local.get $$i)))) + (func (export "no_dce.i64.load16_u") (param $$i i32) (drop (i64.load16_u (local.get $$i)))) + (func (export "no_dce.i64.load8_s") (param $$i i32) (drop (i64.load8_s (local.get $$i)))) + (func (export "no_dce.i64.load8_u") (param $$i i32) (drop (i64.load8_u (local.get $$i)))) + (func (export "no_dce.f32.load") (param $$i i32) (drop (f32.load (local.get $$i)))) + (func (export "no_dce.f64.load") (param $$i i32) (drop (f64.load (local.get $$i)))) +)`); + +// ./test/core/traps.wast:78 +assert_trap(() => invoke($3, `no_dce.i32.load`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:79 +assert_trap(() => invoke($3, `no_dce.i32.load16_s`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:80 +assert_trap(() => invoke($3, `no_dce.i32.load16_u`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:81 +assert_trap(() => invoke($3, `no_dce.i32.load8_s`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:82 +assert_trap(() => invoke($3, `no_dce.i32.load8_u`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:83 +assert_trap(() => invoke($3, `no_dce.i64.load`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:84 +assert_trap(() => invoke($3, `no_dce.i64.load32_s`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:85 +assert_trap(() => invoke($3, `no_dce.i64.load32_u`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:86 +assert_trap(() => invoke($3, `no_dce.i64.load16_s`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:87 +assert_trap(() => invoke($3, `no_dce.i64.load16_u`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:88 +assert_trap(() => invoke($3, `no_dce.i64.load8_s`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:89 +assert_trap(() => invoke($3, `no_dce.i64.load8_u`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:90 +assert_trap(() => invoke($3, `no_dce.f32.load`, [65536]), `out of bounds memory access`); + +// ./test/core/traps.wast:91 +assert_trap(() => invoke($3, `no_dce.f64.load`, [65536]), `out of bounds memory access`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/type.wast.js b/js/src/jit-test/tests/wasm/spec/spec/type.wast.js new file mode 100644 index 0000000000..f4d3ede687 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/type.wast.js @@ -0,0 +1,66 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/type.wast + +// ./test/core/type.wast:3 +let $0 = instantiate(`(module + (type (func)) + (type $$t (func)) + + (type (func (param i32))) + (type (func (param $$x i32))) + (type (func (result i32))) + (type (func (param i32) (result i32))) + (type (func (param $$x i32) (result i32))) + + (type (func (param f32 f64))) + (type (func (result i64 f32))) + (type (func (param i32 i64) (result f32 f64))) + + (type (func (param f32) (param f64))) + (type (func (param $$x f32) (param f64))) + (type (func (param f32) (param $$y f64))) + (type (func (param $$x f32) (param $$y f64))) + (type (func (result i64) (result f32))) + (type (func (param i32) (param i64) (result f32) (result f64))) + (type (func (param $$x i32) (param $$y i64) (result f32) (result f64))) + + (type (func (param f32 f64) (param $$x i32) (param f64 i32 i32))) + (type (func (result i64 i64 f32) (result f32 i32))) + (type + (func (param i32 i32) (param i64 i32) (result f32 f64) (result f64 i32)) + ) + + (type (func (param) (param $$x f32) (param) (param) (param f64 i32) (param))) + (type + (func (result) (result) (result i64 i64) (result) (result f32) (result)) + ) + (type + (func + (param i32 i32) (param i64 i32) (param) (param $$x i32) (param) + (result) (result f32 f64) (result f64 i32) (result) + ) + ) +)`); + +// ./test/core/type.wast:43 +assert_malformed( + () => instantiate(`(type (func (result i32) (param i32))) `), + `unexpected token`, +); + +// ./test/core/type.wast:47 +assert_malformed(() => instantiate(`(type (func (result $$x i32))) `), `unexpected token`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/unreachable.wast.js b/js/src/jit-test/tests/wasm/spec/spec/unreachable.wast.js new file mode 100644 index 0000000000..70eafb7db3 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/unreachable.wast.js @@ -0,0 +1,424 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/unreachable.wast + +// ./test/core/unreachable.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definitions + (func $$dummy) + (func $$dummy3 (param i32 i32 i32)) + + (func (export "type-i32") (result i32) (unreachable)) + (func (export "type-i64") (result i32) (unreachable)) + (func (export "type-f32") (result f64) (unreachable)) + (func (export "type-f64") (result f64) (unreachable)) + + (func (export "as-func-first") (result i32) + (unreachable) (i32.const -1) + ) + (func (export "as-func-mid") (result i32) + (call $$dummy) (unreachable) (i32.const -1) + ) + (func (export "as-func-last") + (call $$dummy) (unreachable) + ) + (func (export "as-func-value") (result i32) + (call $$dummy) (unreachable) + ) + + (func (export "as-block-first") (result i32) + (block (result i32) (unreachable) (i32.const 2)) + ) + (func (export "as-block-mid") (result i32) + (block (result i32) (call $$dummy) (unreachable) (i32.const 2)) + ) + (func (export "as-block-last") + (block (nop) (call $$dummy) (unreachable)) + ) + (func (export "as-block-value") (result i32) + (block (result i32) (nop) (call $$dummy) (unreachable)) + ) + (func (export "as-block-broke") (result i32) + (block (result i32) (call $$dummy) (br 0 (i32.const 1)) (unreachable)) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (unreachable) (i32.const 2)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) (call $$dummy) (unreachable) (i32.const 2)) + ) + (func (export "as-loop-last") + (loop (nop) (call $$dummy) (unreachable)) + ) + (func (export "as-loop-broke") (result i32) + (block (result i32) + (loop (result i32) (call $$dummy) (br 1 (i32.const 1)) (unreachable)) + ) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (unreachable))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (unreachable))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (unreachable) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (unreachable))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (unreachable))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (unreachable) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-2") (result i32) + (block (result i32) + (block (result i32) (br_table 0 1 (unreachable) (i32.const 1))) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (unreachable)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-and-index") (result i32) + (block (result i32) (br_table 0 0 (unreachable)) (i32.const 8)) + ) + + (func (export "as-return-value") (result i64) + (return (unreachable)) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (unreachable) (then (i32.const 0)) (else (i32.const 1))) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (if (result i32) (local.get 0) (then (unreachable)) (else (local.get 1))) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (if (result i32) (local.get 0) (then (local.get 1)) (else (unreachable))) + ) + (func (export "as-if-then-no-else") (param i32 i32) (result i32) + (if (local.get 0) (then (unreachable))) (local.get 1) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (unreachable) (local.get 0) (local.get 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (local.get 0) (unreachable) (local.get 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (unreachable)) + ) + + (func (export "as-call-first") + (call $$dummy3 (unreachable) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") + (call $$dummy3 (i32.const 1) (unreachable) (i32.const 3)) + ) + (func (export "as-call-last") + (call $$dummy3 (i32.const 1) (i32.const 2) (unreachable)) + ) + + (type $$sig (func (param i32 i32 i32))) + (table funcref (elem $$dummy3)) + (func (export "as-call_indirect-func") + (call_indirect (type $$sig) + (unreachable) (i32.const 1) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-first") + (call_indirect (type $$sig) + (i32.const 0) (unreachable) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-mid") + (call_indirect (type $$sig) + (i32.const 0) (i32.const 1) (unreachable) (i32.const 3) + ) + ) + (func (export "as-call_indirect-last") + (call_indirect (type $$sig) + (i32.const 0) (i32.const 1) (i32.const 2) (unreachable) + ) + ) + + (func (export "as-local.set-value") (local f32) + (local.set 0 (unreachable)) + ) + (func (export "as-local.tee-value") (result f32) (local f32) + (local.tee 0 (unreachable)) + ) + (global $$a (mut f32) (f32.const 0)) + (func (export "as-global.set-value") (result f32) + (global.set $$a (unreachable)) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (f32.load (unreachable)) + ) + (func (export "as-loadN-address") (result i64) + (i64.load8_s (unreachable)) + ) + + (func (export "as-store-address") + (f64.store (unreachable) (f64.const 7)) + ) + (func (export "as-store-value") + (i64.store (i32.const 2) (unreachable)) + ) + + (func (export "as-storeN-address") + (i32.store8 (unreachable) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i64.store16 (i32.const 2) (unreachable)) + ) + + (func (export "as-unary-operand") (result f32) + (f32.neg (unreachable)) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (unreachable) (i32.const 10)) + ) + (func (export "as-binary-right") (result i64) + (i64.sub (i64.const 10) (unreachable)) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (unreachable)) + ) + + (func (export "as-compare-left") (result i32) + (f64.le (unreachable) (f64.const 10)) + ) + (func (export "as-compare-right") (result i32) + (f32.ne (f32.const 10) (unreachable)) + ) + + (func (export "as-convert-operand") (result i32) + (i32.wrap_i64 (unreachable)) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (unreachable)) + ) +)`); + +// ./test/core/unreachable.wast:221 +assert_trap(() => invoke($0, `type-i32`, []), `unreachable`); + +// ./test/core/unreachable.wast:222 +assert_trap(() => invoke($0, `type-i64`, []), `unreachable`); + +// ./test/core/unreachable.wast:223 +assert_trap(() => invoke($0, `type-f32`, []), `unreachable`); + +// ./test/core/unreachable.wast:224 +assert_trap(() => invoke($0, `type-f64`, []), `unreachable`); + +// ./test/core/unreachable.wast:226 +assert_trap(() => invoke($0, `as-func-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:227 +assert_trap(() => invoke($0, `as-func-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:228 +assert_trap(() => invoke($0, `as-func-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:229 +assert_trap(() => invoke($0, `as-func-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:231 +assert_trap(() => invoke($0, `as-block-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:232 +assert_trap(() => invoke($0, `as-block-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:233 +assert_trap(() => invoke($0, `as-block-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:234 +assert_trap(() => invoke($0, `as-block-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:235 +assert_return(() => invoke($0, `as-block-broke`, []), [value("i32", 1)]); + +// ./test/core/unreachable.wast:237 +assert_trap(() => invoke($0, `as-loop-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:238 +assert_trap(() => invoke($0, `as-loop-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:239 +assert_trap(() => invoke($0, `as-loop-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:240 +assert_return(() => invoke($0, `as-loop-broke`, []), [value("i32", 1)]); + +// ./test/core/unreachable.wast:242 +assert_trap(() => invoke($0, `as-br-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:244 +assert_trap(() => invoke($0, `as-br_if-cond`, []), `unreachable`); + +// ./test/core/unreachable.wast:245 +assert_trap(() => invoke($0, `as-br_if-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:246 +assert_trap(() => invoke($0, `as-br_if-value-cond`, []), `unreachable`); + +// ./test/core/unreachable.wast:248 +assert_trap(() => invoke($0, `as-br_table-index`, []), `unreachable`); + +// ./test/core/unreachable.wast:249 +assert_trap(() => invoke($0, `as-br_table-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:250 +assert_trap(() => invoke($0, `as-br_table-value-2`, []), `unreachable`); + +// ./test/core/unreachable.wast:251 +assert_trap(() => invoke($0, `as-br_table-value-index`, []), `unreachable`); + +// ./test/core/unreachable.wast:252 +assert_trap(() => invoke($0, `as-br_table-value-and-index`, []), `unreachable`); + +// ./test/core/unreachable.wast:254 +assert_trap(() => invoke($0, `as-return-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:256 +assert_trap(() => invoke($0, `as-if-cond`, []), `unreachable`); + +// ./test/core/unreachable.wast:257 +assert_trap(() => invoke($0, `as-if-then`, [1, 6]), `unreachable`); + +// ./test/core/unreachable.wast:258 +assert_return(() => invoke($0, `as-if-then`, [0, 6]), [value("i32", 6)]); + +// ./test/core/unreachable.wast:259 +assert_trap(() => invoke($0, `as-if-else`, [0, 6]), `unreachable`); + +// ./test/core/unreachable.wast:260 +assert_return(() => invoke($0, `as-if-else`, [1, 6]), [value("i32", 6)]); + +// ./test/core/unreachable.wast:261 +assert_trap(() => invoke($0, `as-if-then-no-else`, [1, 6]), `unreachable`); + +// ./test/core/unreachable.wast:262 +assert_return(() => invoke($0, `as-if-then-no-else`, [0, 6]), [value("i32", 6)]); + +// ./test/core/unreachable.wast:264 +assert_trap(() => invoke($0, `as-select-first`, [0, 6]), `unreachable`); + +// ./test/core/unreachable.wast:265 +assert_trap(() => invoke($0, `as-select-first`, [1, 6]), `unreachable`); + +// ./test/core/unreachable.wast:266 +assert_trap(() => invoke($0, `as-select-second`, [0, 6]), `unreachable`); + +// ./test/core/unreachable.wast:267 +assert_trap(() => invoke($0, `as-select-second`, [1, 6]), `unreachable`); + +// ./test/core/unreachable.wast:268 +assert_trap(() => invoke($0, `as-select-cond`, []), `unreachable`); + +// ./test/core/unreachable.wast:270 +assert_trap(() => invoke($0, `as-call-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:271 +assert_trap(() => invoke($0, `as-call-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:272 +assert_trap(() => invoke($0, `as-call-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:274 +assert_trap(() => invoke($0, `as-call_indirect-func`, []), `unreachable`); + +// ./test/core/unreachable.wast:275 +assert_trap(() => invoke($0, `as-call_indirect-first`, []), `unreachable`); + +// ./test/core/unreachable.wast:276 +assert_trap(() => invoke($0, `as-call_indirect-mid`, []), `unreachable`); + +// ./test/core/unreachable.wast:277 +assert_trap(() => invoke($0, `as-call_indirect-last`, []), `unreachable`); + +// ./test/core/unreachable.wast:279 +assert_trap(() => invoke($0, `as-local.set-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:280 +assert_trap(() => invoke($0, `as-local.tee-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:281 +assert_trap(() => invoke($0, `as-global.set-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:283 +assert_trap(() => invoke($0, `as-load-address`, []), `unreachable`); + +// ./test/core/unreachable.wast:284 +assert_trap(() => invoke($0, `as-loadN-address`, []), `unreachable`); + +// ./test/core/unreachable.wast:286 +assert_trap(() => invoke($0, `as-store-address`, []), `unreachable`); + +// ./test/core/unreachable.wast:287 +assert_trap(() => invoke($0, `as-store-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:288 +assert_trap(() => invoke($0, `as-storeN-address`, []), `unreachable`); + +// ./test/core/unreachable.wast:289 +assert_trap(() => invoke($0, `as-storeN-value`, []), `unreachable`); + +// ./test/core/unreachable.wast:291 +assert_trap(() => invoke($0, `as-unary-operand`, []), `unreachable`); + +// ./test/core/unreachable.wast:293 +assert_trap(() => invoke($0, `as-binary-left`, []), `unreachable`); + +// ./test/core/unreachable.wast:294 +assert_trap(() => invoke($0, `as-binary-right`, []), `unreachable`); + +// ./test/core/unreachable.wast:296 +assert_trap(() => invoke($0, `as-test-operand`, []), `unreachable`); + +// ./test/core/unreachable.wast:298 +assert_trap(() => invoke($0, `as-compare-left`, []), `unreachable`); + +// ./test/core/unreachable.wast:299 +assert_trap(() => invoke($0, `as-compare-right`, []), `unreachable`); + +// ./test/core/unreachable.wast:301 +assert_trap(() => invoke($0, `as-convert-operand`, []), `unreachable`); + +// ./test/core/unreachable.wast:303 +assert_trap(() => invoke($0, `as-memory.grow-size`, []), `unreachable`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/unreached-valid.wast.js b/js/src/jit-test/tests/wasm/spec/spec/unreached-valid.wast.js new file mode 100644 index 0000000000..aece5191dc --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/unreached-valid.wast.js @@ -0,0 +1,88 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/unreached-valid.wast + +// ./test/core/unreached-valid.wast:1 +let $0 = instantiate(`(module + + ;; Check that both sides of the select are evaluated + (func (export "select-trap-left") (param $$cond i32) (result i32) + (select (unreachable) (i32.const 0) (local.get $$cond)) + ) + (func (export "select-trap-right") (param $$cond i32) (result i32) + (select (i32.const 0) (unreachable) (local.get $$cond)) + ) + + (func (export "select-unreached") + (unreachable) (select) + (unreachable) (i32.const 0) (select) + (unreachable) (i32.const 0) (i32.const 0) (select) + (unreachable) (i32.const 0) (i32.const 0) (i32.const 0) (select) + (unreachable) (f32.const 0) (i32.const 0) (select) + (unreachable) + ) + + (func (export "select_unreached_result_1") (result i32) + (unreachable) (i32.add (select)) + ) + + (func (export "select_unreached_result_2") (result i64) + (unreachable) (i64.add (select (i64.const 0) (i32.const 0))) + ) + + (func (export "unreachable-num") + (unreachable) + (select) + (i32.eqz) + (drop) + ) + (func (export "unreachable-ref") + (unreachable) + (select) + (ref.is_null) + (drop) + ) +)`); + +// ./test/core/unreached-valid.wast:42 +assert_trap(() => invoke($0, `select-trap-left`, [1]), `unreachable`); + +// ./test/core/unreached-valid.wast:43 +assert_trap(() => invoke($0, `select-trap-left`, [0]), `unreachable`); + +// ./test/core/unreached-valid.wast:44 +assert_trap(() => invoke($0, `select-trap-right`, [1]), `unreachable`); + +// ./test/core/unreached-valid.wast:45 +assert_trap(() => invoke($0, `select-trap-right`, [0]), `unreachable`); + +// ./test/core/unreached-valid.wast:49 +let $1 = instantiate(`(module + (func (export "meet-bottom") + (block (result f64) + (block (result f32) + (unreachable) + (br_table 0 1 1 (i32.const 1)) + ) + (drop) + (f64.const 0) + ) + (drop) + ) +)`); + +// ./test/core/unreached-valid.wast:63 +assert_trap(() => invoke($1, `meet-bottom`, []), `unreachable`); diff --git a/js/src/jit-test/tests/wasm/spec/spec/unwind.wast.js b/js/src/jit-test/tests/wasm/spec/spec/unwind.wast.js new file mode 100644 index 0000000000..5567d3473d --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/unwind.wast.js @@ -0,0 +1,373 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/unwind.wast + +// ./test/core/unwind.wast:3 +let $0 = instantiate(`(module + (func (export "func-unwind-by-unreachable") + (i32.const 3) (i64.const 1) (unreachable) + ) + (func (export "func-unwind-by-br") + (i32.const 3) (i64.const 1) (br 0) + ) + (func (export "func-unwind-by-br-value") (result i32) + (i32.const 3) (i64.const 1) (br 0 (i32.const 9)) + ) + (func (export "func-unwind-by-br_if") + (i32.const 3) (i64.const 1) (drop (drop (br_if 0 (i32.const 1)))) + ) + (func (export "func-unwind-by-br_if-value") (result i32) + (i32.const 3) (i64.const 1) (drop (drop (br_if 0 (i32.const 9) (i32.const 1)))) + ) + (func (export "func-unwind-by-br_table") + (i32.const 3) (i64.const 1) (br_table 0 (i32.const 0)) + ) + (func (export "func-unwind-by-br_table-value") (result i32) + (i32.const 3) (i64.const 1) (br_table 0 (i32.const 9) (i32.const 0)) + ) + (func (export "func-unwind-by-return") (result i32) + (i32.const 3) (i64.const 1) (return (i32.const 9)) + ) + + (func (export "block-unwind-by-unreachable") + (block (i32.const 3) (i64.const 1) (unreachable)) + ) + (func (export "block-unwind-by-br") (result i32) + (block (i32.const 3) (i64.const 1) (br 0)) (i32.const 9) + ) + (func (export "block-unwind-by-br-value") (result i32) + (block (result i32) (i32.const 3) (i64.const 1) (br 0 (i32.const 9))) + ) + (func (export "block-unwind-by-br_if") (result i32) + (block (i32.const 3) (i64.const 1) (drop (drop (br_if 0 (i32.const 1))))) (i32.const 9) + ) + (func (export "block-unwind-by-br_if-value") (result i32) + (block (result i32) + (i32.const 3) (i64.const 1) (drop (drop (br_if 0 (i32.const 9) (i32.const 1)))) + ) + ) + (func (export "block-unwind-by-br_table") (result i32) + (block (i32.const 3) (i64.const 1) (br_table 0 (i32.const 0))) (i32.const 9) + ) + (func (export "block-unwind-by-br_table-value") (result i32) + (block (result i32) + (i32.const 3) (i64.const 1) (br_table 0 (i32.const 9) (i32.const 0)) + ) + ) + (func (export "block-unwind-by-return") (result i32) + (block (result i32) (i32.const 3) (i64.const 1) (return (i32.const 9))) + ) + + (func (export "block-nested-unwind-by-unreachable") (result i32) + (block (result i32) (i32.const 3) (block (i64.const 1) (unreachable))) + ) + (func (export "block-nested-unwind-by-br") (result i32) + (block (i32.const 3) (block (i64.const 1) (br 1)) (drop)) (i32.const 9) + ) + (func (export "block-nested-unwind-by-br-value") (result i32) + (block (result i32) + (i32.const 3) (block (i64.const 1) (br 1 (i32.const 9))) + ) + ) + (func (export "block-nested-unwind-by-br_if") (result i32) + (block (i32.const 3) (block (i64.const 1) (drop (br_if 1 (i32.const 1)))) (drop)) (i32.const 9) + ) + (func (export "block-nested-unwind-by-br_if-value") (result i32) + (block (result i32) + (i32.const 3) (block (i64.const 1) (drop (drop (br_if 1 (i32.const 9) (i32.const 1))))) + ) + ) + (func (export "block-nested-unwind-by-br_table") (result i32) + (block + (i32.const 3) (block (i64.const 1) (br_table 1 (i32.const 1))) + (drop) + ) + (i32.const 9) + ) + (func (export "block-nested-unwind-by-br_table-value") (result i32) + (block (result i32) + (i32.const 3) + (block (i64.const 1) (br_table 1 (i32.const 9) (i32.const 1))) + ) + ) + (func (export "block-nested-unwind-by-return") (result i32) + (block (result i32) + (i32.const 3) (block (i64.const 1) (return (i32.const 9))) + ) + ) + + (func (export "unary-after-unreachable") (result i32) + (f32.const 0) (unreachable) (i64.eqz) + ) + (func (export "unary-after-br") (result i32) + (block (result i32) (f32.const 0) (br 0 (i32.const 9)) (i64.eqz)) + ) + (func (export "unary-after-br_if") (result i32) + (block (result i32) + (i64.const 0) (drop (br_if 0 (i32.const 9) (i32.const 1))) (i64.eqz) + ) + ) + (func (export "unary-after-br_table") (result i32) + (block (result i32) + (f32.const 0) (br_table 0 0 (i32.const 9) (i32.const 0)) (i64.eqz) + ) + ) + (func (export "unary-after-return") (result i32) + (f32.const 0) (return (i32.const 9)) (i64.eqz) + ) + + (func (export "binary-after-unreachable") (result i32) + (f32.const 0) (f64.const 1) (unreachable) (i64.eq) + ) + (func (export "binary-after-br") (result i32) + (block (result i32) + (f32.const 0) (f64.const 1) (br 0 (i32.const 9)) (i64.eq) + ) + ) + (func (export "binary-after-br_if") (result i32) + (block (result i32) + (i64.const 0) (i64.const 1) (drop (br_if 0 (i32.const 9) (i32.const 1))) + (i64.eq) + ) + ) + (func (export "binary-after-br_table") (result i32) + (block (result i32) + (f32.const 0) (f64.const 1) (br_table 0 (i32.const 9) (i32.const 0)) + (i64.eq) + ) + ) + (func (export "binary-after-return") (result i32) + (f32.const 0) (f64.const 1) (return (i32.const 9)) (i64.eq) + ) + + (func (export "select-after-unreachable") (result i32) + (f32.const 0) (f64.const 1) (i64.const 0) (unreachable) (select) + ) + (func (export "select-after-br") (result i32) + (block (result i32) + (f32.const 0) (f64.const 1) (i64.const 0) (br 0 (i32.const 9)) (select) + ) + ) + (func (export "select-after-br_if") (result i32) + (block (result i32) + (i32.const 0) (i32.const 1) (i32.const 0) + (drop (br_if 0 (i32.const 9) (i32.const 1))) + (select) + ) + ) + (func (export "select-after-br_table") (result i32) + (block (result i32) + (f32.const 0) (f64.const 1) (i64.const 0) + (br_table 0 (i32.const 9) (i32.const 0)) + (select) + ) + ) + (func (export "select-after-return") (result i32) + (f32.const 0) (f64.const 1) (i64.const 1) (return (i32.const 9)) (select) + ) + + (func (export "block-value-after-unreachable") (result i32) + (block (result i32) (f32.const 0) (unreachable)) + ) + (func (export "block-value-after-br") (result i32) + (block (result i32) (f32.const 0) (br 0 (i32.const 9))) + ) + (func (export "block-value-after-br_if") (result i32) + (block (result i32) + (i32.const 0) (drop (br_if 0 (i32.const 9) (i32.const 1))) + ) + ) + (func (export "block-value-after-br_table") (result i32) + (block (result i32) + (f32.const 0) (br_table 0 0 (i32.const 9) (i32.const 0)) + ) + ) + (func (export "block-value-after-return") (result i32) + (block (result i32) (f32.const 0) (return (i32.const 9))) + ) + + (func (export "loop-value-after-unreachable") (result i32) + (loop (result i32) (f32.const 0) (unreachable)) + ) + (func (export "loop-value-after-br") (result i32) + (block (result i32) (loop (result i32) (f32.const 0) (br 1 (i32.const 9)))) + ) + (func (export "loop-value-after-br_if") (result i32) + (block (result i32) + (loop (result i32) + (i32.const 0) (drop (br_if 1 (i32.const 9) (i32.const 1))) + ) + ) + ) + + (func (export "loop-value-after-br_table") (result i32) + (block (result i32) + (loop (result i32) + (f32.const 0) (br_table 1 1 (i32.const 9) (i32.const 0)) + ) + ) + ) + (func (export "loop-value-after-return") (result i32) + (loop (result i32) (f32.const 0) (return (i32.const 9))) + ) +)`); + +// ./test/core/unwind.wast:212 +assert_trap(() => invoke($0, `func-unwind-by-unreachable`, []), `unreachable`); + +// ./test/core/unwind.wast:213 +assert_return(() => invoke($0, `func-unwind-by-br`, []), []); + +// ./test/core/unwind.wast:214 +assert_return(() => invoke($0, `func-unwind-by-br-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:215 +assert_return(() => invoke($0, `func-unwind-by-br_if`, []), []); + +// ./test/core/unwind.wast:216 +assert_return(() => invoke($0, `func-unwind-by-br_if-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:217 +assert_return(() => invoke($0, `func-unwind-by-br_table`, []), []); + +// ./test/core/unwind.wast:218 +assert_return(() => invoke($0, `func-unwind-by-br_table-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:219 +assert_return(() => invoke($0, `func-unwind-by-return`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:221 +assert_trap(() => invoke($0, `block-unwind-by-unreachable`, []), `unreachable`); + +// ./test/core/unwind.wast:222 +assert_return(() => invoke($0, `block-unwind-by-br`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:223 +assert_return(() => invoke($0, `block-unwind-by-br-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:224 +assert_return(() => invoke($0, `block-unwind-by-br_if`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:225 +assert_return(() => invoke($0, `block-unwind-by-br_if-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:226 +assert_return(() => invoke($0, `block-unwind-by-br_table`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:227 +assert_return(() => invoke($0, `block-unwind-by-br_table-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:228 +assert_return(() => invoke($0, `block-unwind-by-return`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:230 +assert_trap(() => invoke($0, `block-nested-unwind-by-unreachable`, []), `unreachable`); + +// ./test/core/unwind.wast:231 +assert_return(() => invoke($0, `block-nested-unwind-by-br`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:232 +assert_return(() => invoke($0, `block-nested-unwind-by-br-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:233 +assert_return(() => invoke($0, `block-nested-unwind-by-br_if`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:234 +assert_return(() => invoke($0, `block-nested-unwind-by-br_if-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:235 +assert_return(() => invoke($0, `block-nested-unwind-by-br_table`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:236 +assert_return(() => invoke($0, `block-nested-unwind-by-br_table-value`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:237 +assert_return(() => invoke($0, `block-nested-unwind-by-return`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:239 +assert_trap(() => invoke($0, `unary-after-unreachable`, []), `unreachable`); + +// ./test/core/unwind.wast:240 +assert_return(() => invoke($0, `unary-after-br`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:241 +assert_return(() => invoke($0, `unary-after-br_if`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:242 +assert_return(() => invoke($0, `unary-after-br_table`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:243 +assert_return(() => invoke($0, `unary-after-return`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:245 +assert_trap(() => invoke($0, `binary-after-unreachable`, []), `unreachable`); + +// ./test/core/unwind.wast:246 +assert_return(() => invoke($0, `binary-after-br`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:247 +assert_return(() => invoke($0, `binary-after-br_if`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:248 +assert_return(() => invoke($0, `binary-after-br_table`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:249 +assert_return(() => invoke($0, `binary-after-return`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:251 +assert_trap(() => invoke($0, `select-after-unreachable`, []), `unreachable`); + +// ./test/core/unwind.wast:252 +assert_return(() => invoke($0, `select-after-br`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:253 +assert_return(() => invoke($0, `select-after-br_if`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:254 +assert_return(() => invoke($0, `select-after-br_table`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:255 +assert_return(() => invoke($0, `select-after-return`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:257 +assert_trap(() => invoke($0, `block-value-after-unreachable`, []), `unreachable`); + +// ./test/core/unwind.wast:258 +assert_return(() => invoke($0, `block-value-after-br`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:259 +assert_return(() => invoke($0, `block-value-after-br_if`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:260 +assert_return(() => invoke($0, `block-value-after-br_table`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:261 +assert_return(() => invoke($0, `block-value-after-return`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:263 +assert_trap(() => invoke($0, `loop-value-after-unreachable`, []), `unreachable`); + +// ./test/core/unwind.wast:264 +assert_return(() => invoke($0, `loop-value-after-br`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:265 +assert_return(() => invoke($0, `loop-value-after-br_if`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:266 +assert_return(() => invoke($0, `loop-value-after-br_table`, []), [value("i32", 9)]); + +// ./test/core/unwind.wast:267 +assert_return(() => invoke($0, `loop-value-after-return`, []), [value("i32", 9)]); diff --git a/js/src/jit-test/tests/wasm/spec/spec/utf8-import-field.wast.js b/js/src/jit-test/tests/wasm/spec/spec/utf8-import-field.wast.js new file mode 100644 index 0000000000..658da5449f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/utf8-import-field.wast.js @@ -0,0 +1,2656 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/utf8-import-field.wast + +// ./test/core/utf8-import-field.wast:6 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\80" ;; "\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:21 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\8f" ;; "\\8f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:36 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\90" ;; "\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:51 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\9f" ;; "\\9f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:66 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\a0" ;; "\\a0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:81 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\bf" ;; "\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:98 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\c2\\80\\80" ;; "\\c2\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:113 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\c2" ;; "\\c2" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:128 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c2\\2e" ;; "\\c2." + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:145 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c0\\80" ;; "\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:160 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c0\\bf" ;; "\\c0\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:175 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c1\\80" ;; "\\c1\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:190 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c1\\bf" ;; "\\c1\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:205 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c2\\00" ;; "\\c2\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:220 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c2\\7f" ;; "\\c2\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:235 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c2\\c0" ;; "\\c2\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:250 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\c2\\fd" ;; "\\c2\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:265 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\df\\00" ;; "\\df\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:280 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\df\\7f" ;; "\\df\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:295 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\df\\c0" ;; "\\df\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:310 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\df\\fd" ;; "\\df\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:327 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\e1\\80\\80\\80" ;; "\\e1\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:342 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\e1\\80" ;; "\\e1\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:357 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\80\\2e" ;; "\\e1\\80." + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:372 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\e1" ;; "\\e1" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:387 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\e1\\2e" ;; "\\e1." + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:404 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\00\\a0" ;; "\\e0\\00\\a0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:419 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\7f\\a0" ;; "\\e0\\7f\\a0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:434 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\80\\80" ;; "\\e0\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:449 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\80\\a0" ;; "\\e0\\80\\a0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:464 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\9f\\a0" ;; "\\e0\\9f\\a0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:479 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\9f\\bf" ;; "\\e0\\9f\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:494 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\c0\\a0" ;; "\\e0\\c0\\a0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:509 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\fd\\a0" ;; "\\e0\\fd\\a0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:524 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\00\\80" ;; "\\e1\\00\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:539 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\7f\\80" ;; "\\e1\\7f\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:554 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\c0\\80" ;; "\\e1\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:569 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\fd\\80" ;; "\\e1\\fd\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:584 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ec\\00\\80" ;; "\\ec\\00\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:599 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ec\\7f\\80" ;; "\\ec\\7f\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:614 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ec\\c0\\80" ;; "\\ec\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:629 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ec\\fd\\80" ;; "\\ec\\fd\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:644 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\00\\80" ;; "\\ed\\00\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:659 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\7f\\80" ;; "\\ed\\7f\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:674 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\a0\\80" ;; "\\ed\\a0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:689 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\a0\\bf" ;; "\\ed\\a0\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:704 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\bf\\80" ;; "\\ed\\bf\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:719 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\bf\\bf" ;; "\\ed\\bf\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:734 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\c0\\80" ;; "\\ed\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:749 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\fd\\80" ;; "\\ed\\fd\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:764 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ee\\00\\80" ;; "\\ee\\00\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:779 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ee\\7f\\80" ;; "\\ee\\7f\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:794 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ee\\c0\\80" ;; "\\ee\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:809 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ee\\fd\\80" ;; "\\ee\\fd\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:824 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ef\\00\\80" ;; "\\ef\\00\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:839 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ef\\7f\\80" ;; "\\ef\\7f\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:854 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ef\\c0\\80" ;; "\\ef\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:869 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ef\\fd\\80" ;; "\\ef\\fd\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:886 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\a0\\00" ;; "\\e0\\a0\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:901 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\a0\\7f" ;; "\\e0\\a0\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:916 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\a0\\c0" ;; "\\e0\\a0\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:931 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e0\\a0\\fd" ;; "\\e0\\a0\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:946 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\80\\00" ;; "\\e1\\80\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:961 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\80\\7f" ;; "\\e1\\80\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:976 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\80\\c0" ;; "\\e1\\80\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:991 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\e1\\80\\fd" ;; "\\e1\\80\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1006 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ec\\80\\00" ;; "\\ec\\80\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1021 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ec\\80\\7f" ;; "\\ec\\80\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1036 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ec\\80\\c0" ;; "\\ec\\80\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1051 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ec\\80\\fd" ;; "\\ec\\80\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1066 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\80\\00" ;; "\\ed\\80\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1081 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\80\\7f" ;; "\\ed\\80\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1096 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\80\\c0" ;; "\\ed\\80\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1111 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ed\\80\\fd" ;; "\\ed\\80\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1126 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ee\\80\\00" ;; "\\ee\\80\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1141 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ee\\80\\7f" ;; "\\ee\\80\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1156 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ee\\80\\c0" ;; "\\ee\\80\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1171 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ee\\80\\fd" ;; "\\ee\\80\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1186 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ef\\80\\00" ;; "\\ef\\80\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1201 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ef\\80\\7f" ;; "\\ef\\80\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1216 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ef\\80\\c0" ;; "\\ef\\80\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1231 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\ef\\80\\fd" ;; "\\ef\\80\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1248 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\05\\f1\\80\\80\\80\\80" ;; "\\f1\\80\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1263 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\f1\\80\\80" ;; "\\f1\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1278 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\80\\23" ;; "\\f1\\80\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1293 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\f1\\80" ;; "\\f1\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1308 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\f1\\80\\23" ;; "\\f1\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1323 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\f1" ;; "\\f1" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1338 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\f1\\23" ;; "\\f1#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1355 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\00\\90\\90" ;; "\\f0\\00\\90\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1370 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\7f\\90\\90" ;; "\\f0\\7f\\90\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1385 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\80\\80\\80" ;; "\\f0\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1400 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\80\\90\\90" ;; "\\f0\\80\\90\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1415 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\8f\\90\\90" ;; "\\f0\\8f\\90\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1430 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\8f\\bf\\bf" ;; "\\f0\\8f\\bf\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1445 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\c0\\90\\90" ;; "\\f0\\c0\\90\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1460 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\fd\\90\\90" ;; "\\f0\\fd\\90\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1475 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\00\\80\\80" ;; "\\f1\\00\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1490 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\7f\\80\\80" ;; "\\f1\\7f\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1505 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\c0\\80\\80" ;; "\\f1\\c0\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1520 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\fd\\80\\80" ;; "\\f1\\fd\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1535 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\00\\80\\80" ;; "\\f3\\00\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1550 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\7f\\80\\80" ;; "\\f3\\7f\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1565 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\c0\\80\\80" ;; "\\f3\\c0\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1580 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\fd\\80\\80" ;; "\\f3\\fd\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1595 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\00\\80\\80" ;; "\\f4\\00\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1610 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\7f\\80\\80" ;; "\\f4\\7f\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1625 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\90\\80\\80" ;; "\\f4\\90\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1640 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\bf\\80\\80" ;; "\\f4\\bf\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1655 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\c0\\80\\80" ;; "\\f4\\c0\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1670 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\fd\\80\\80" ;; "\\f4\\fd\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1685 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f5\\80\\80\\80" ;; "\\f5\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1700 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f7\\80\\80\\80" ;; "\\f7\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1715 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f7\\bf\\bf\\bf" ;; "\\f7\\bf\\bf\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1732 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\90\\00\\90" ;; "\\f0\\90\\00\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1747 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\90\\7f\\90" ;; "\\f0\\90\\7f\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1762 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\90\\c0\\90" ;; "\\f0\\90\\c0\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1777 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\90\\fd\\90" ;; "\\f0\\90\\fd\\90" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1792 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\00\\80" ;; "\\f1\\80\\00\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1807 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\7f\\80" ;; "\\f1\\80\\7f\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1822 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\c0\\80" ;; "\\f1\\80\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1837 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\fd\\80" ;; "\\f1\\80\\fd\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1852 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\80\\00\\80" ;; "\\f3\\80\\00\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1867 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\80\\7f\\80" ;; "\\f3\\80\\7f\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1882 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\80\\c0\\80" ;; "\\f3\\80\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1897 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\80\\fd\\80" ;; "\\f3\\80\\fd\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1912 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\80\\00\\80" ;; "\\f4\\80\\00\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1927 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\80\\7f\\80" ;; "\\f4\\80\\7f\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1942 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\80\\c0\\80" ;; "\\f4\\80\\c0\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1957 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\80\\fd\\80" ;; "\\f4\\80\\fd\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1974 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\90\\90\\00" ;; "\\f0\\90\\90\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:1989 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\90\\90\\7f" ;; "\\f0\\90\\90\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2004 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\90\\90\\c0" ;; "\\f0\\90\\90\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2019 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f0\\90\\90\\fd" ;; "\\f0\\90\\90\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2034 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\80\\00" ;; "\\f1\\80\\80\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2049 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\80\\7f" ;; "\\f1\\80\\80\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2064 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\80\\c0" ;; "\\f1\\80\\80\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2079 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f1\\80\\80\\fd" ;; "\\f1\\80\\80\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2094 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\80\\80\\00" ;; "\\f3\\80\\80\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2109 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\80\\80\\7f" ;; "\\f3\\80\\80\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2124 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\80\\80\\c0" ;; "\\f3\\80\\80\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2139 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f3\\80\\80\\fd" ;; "\\f3\\80\\80\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2154 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\80\\80\\00" ;; "\\f4\\80\\80\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2169 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\80\\80\\7f" ;; "\\f4\\80\\80\\7f" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2184 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\80\\80\\c0" ;; "\\f4\\80\\80\\c0" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2199 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f4\\80\\80\\fd" ;; "\\f4\\80\\80\\fd" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2216 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\10" ;; import section + "\\01" ;; length 1 + "\\06\\f8\\80\\80\\80\\80\\80" ;; "\\f8\\80\\80\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2231 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f8\\80\\80\\80" ;; "\\f8\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2246 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\05\\f8\\80\\80\\80\\23" ;; "\\f8\\80\\80\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2261 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\f8\\80\\80" ;; "\\f8\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2276 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\f8\\80\\80\\23" ;; "\\f8\\80\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2291 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\f8\\80" ;; "\\f8\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2306 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\f8\\80\\23" ;; "\\f8\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2321 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\f8" ;; "\\f8" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2336 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\f8\\23" ;; "\\f8#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2353 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\05\\f8\\80\\80\\80\\80" ;; "\\f8\\80\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2368 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\05\\fb\\bf\\bf\\bf\\bf" ;; "\\fb\\bf\\bf\\bf\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2385 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\11" ;; import section + "\\01" ;; length 1 + "\\07\\fc\\80\\80\\80\\80\\80\\80" ;; "\\fc\\80\\80\\80\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2400 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\05\\fc\\80\\80\\80\\80" ;; "\\fc\\80\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2415 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\10" ;; import section + "\\01" ;; length 1 + "\\06\\fc\\80\\80\\80\\80\\23" ;; "\\fc\\80\\80\\80\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2430 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\fc\\80\\80\\80" ;; "\\fc\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2445 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\05\\fc\\80\\80\\80\\23" ;; "\\fc\\80\\80\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2460 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\fc\\80\\80" ;; "\\fc\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2475 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\fc\\80\\80\\23" ;; "\\fc\\80\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2490 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\fc\\80" ;; "\\fc\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2505 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\03\\fc\\80\\23" ;; "\\fc\\80#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2520 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\fc" ;; "\\fc" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2535 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\fc\\23" ;; "\\fc#" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2552 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\10" ;; import section + "\\01" ;; length 1 + "\\06\\fc\\80\\80\\80\\80\\80" ;; "\\fc\\80\\80\\80\\80\\80" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2567 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\10" ;; import section + "\\01" ;; length 1 + "\\06\\fd\\bf\\bf\\bf\\bf\\bf" ;; "\\fd\\bf\\bf\\bf\\bf\\bf" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2584 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\fe" ;; "\\fe" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2599 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\01\\ff" ;; "\\ff" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2614 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\fe\\ff" ;; "\\fe\\ff" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2629 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\00\\00\\fe\\ff" ;; "\\00\\00\\fe\\ff" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2644 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\02\\ff\\fe" ;; "\\ff\\fe" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-field.wast:2659 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\ff\\fe\\00\\00" ;; "\\ff\\fe\\00\\00" + "\\04\\74\\65\\73\\74" ;; "test" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/utf8-import-module.wast.js b/js/src/jit-test/tests/wasm/spec/spec/utf8-import-module.wast.js new file mode 100644 index 0000000000..8175cd2d2f --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/utf8-import-module.wast.js @@ -0,0 +1,2656 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/utf8-import-module.wast + +// ./test/core/utf8-import-module.wast:6 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\80" ;; "\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:21 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\8f" ;; "\\8f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:36 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\90" ;; "\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:51 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\9f" ;; "\\9f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:66 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\a0" ;; "\\a0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:81 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\bf" ;; "\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:98 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\c2\\80\\80" ;; "\\c2\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:113 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\c2" ;; "\\c2" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:128 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c2\\2e" ;; "\\c2." + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:145 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c0\\80" ;; "\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:160 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c0\\bf" ;; "\\c0\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:175 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c1\\80" ;; "\\c1\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:190 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c1\\bf" ;; "\\c1\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:205 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c2\\00" ;; "\\c2\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:220 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c2\\7f" ;; "\\c2\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:235 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c2\\c0" ;; "\\c2\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:250 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\c2\\fd" ;; "\\c2\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:265 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\df\\00" ;; "\\df\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:280 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\df\\7f" ;; "\\df\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:295 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\df\\c0" ;; "\\df\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:310 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\df\\fd" ;; "\\df\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:327 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\e1\\80\\80\\80" ;; "\\e1\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:342 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\e1\\80" ;; "\\e1\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:357 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\80\\2e" ;; "\\e1\\80." + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:372 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\e1" ;; "\\e1" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:387 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\e1\\2e" ;; "\\e1." + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:404 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\00\\a0" ;; "\\e0\\00\\a0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:419 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\7f\\a0" ;; "\\e0\\7f\\a0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:434 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\80\\80" ;; "\\e0\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:449 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\80\\a0" ;; "\\e0\\80\\a0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:464 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\9f\\a0" ;; "\\e0\\9f\\a0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:479 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\9f\\bf" ;; "\\e0\\9f\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:494 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\c0\\a0" ;; "\\e0\\c0\\a0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:509 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\fd\\a0" ;; "\\e0\\fd\\a0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:524 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\00\\80" ;; "\\e1\\00\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:539 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\7f\\80" ;; "\\e1\\7f\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:554 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\c0\\80" ;; "\\e1\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:569 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\fd\\80" ;; "\\e1\\fd\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:584 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ec\\00\\80" ;; "\\ec\\00\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:599 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ec\\7f\\80" ;; "\\ec\\7f\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:614 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ec\\c0\\80" ;; "\\ec\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:629 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ec\\fd\\80" ;; "\\ec\\fd\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:644 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\00\\80" ;; "\\ed\\00\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:659 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\7f\\80" ;; "\\ed\\7f\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:674 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\a0\\80" ;; "\\ed\\a0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:689 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\a0\\bf" ;; "\\ed\\a0\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:704 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\bf\\80" ;; "\\ed\\bf\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:719 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\bf\\bf" ;; "\\ed\\bf\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:734 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\c0\\80" ;; "\\ed\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:749 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\fd\\80" ;; "\\ed\\fd\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:764 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ee\\00\\80" ;; "\\ee\\00\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:779 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ee\\7f\\80" ;; "\\ee\\7f\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:794 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ee\\c0\\80" ;; "\\ee\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:809 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ee\\fd\\80" ;; "\\ee\\fd\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:824 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ef\\00\\80" ;; "\\ef\\00\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:839 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ef\\7f\\80" ;; "\\ef\\7f\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:854 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ef\\c0\\80" ;; "\\ef\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:869 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ef\\fd\\80" ;; "\\ef\\fd\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:886 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\a0\\00" ;; "\\e0\\a0\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:901 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\a0\\7f" ;; "\\e0\\a0\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:916 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\a0\\c0" ;; "\\e0\\a0\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:931 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e0\\a0\\fd" ;; "\\e0\\a0\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:946 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\80\\00" ;; "\\e1\\80\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:961 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\80\\7f" ;; "\\e1\\80\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:976 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\80\\c0" ;; "\\e1\\80\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:991 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\e1\\80\\fd" ;; "\\e1\\80\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1006 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ec\\80\\00" ;; "\\ec\\80\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1021 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ec\\80\\7f" ;; "\\ec\\80\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1036 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ec\\80\\c0" ;; "\\ec\\80\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1051 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ec\\80\\fd" ;; "\\ec\\80\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1066 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\80\\00" ;; "\\ed\\80\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1081 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\80\\7f" ;; "\\ed\\80\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1096 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\80\\c0" ;; "\\ed\\80\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1111 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ed\\80\\fd" ;; "\\ed\\80\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1126 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ee\\80\\00" ;; "\\ee\\80\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1141 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ee\\80\\7f" ;; "\\ee\\80\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1156 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ee\\80\\c0" ;; "\\ee\\80\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1171 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ee\\80\\fd" ;; "\\ee\\80\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1186 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ef\\80\\00" ;; "\\ef\\80\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1201 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ef\\80\\7f" ;; "\\ef\\80\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1216 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ef\\80\\c0" ;; "\\ef\\80\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1231 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\ef\\80\\fd" ;; "\\ef\\80\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1248 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\05\\f1\\80\\80\\80\\80" ;; "\\f1\\80\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1263 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\f1\\80\\80" ;; "\\f1\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1278 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\80\\23" ;; "\\f1\\80\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1293 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\f1\\80" ;; "\\f1\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1308 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\f1\\80\\23" ;; "\\f1\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1323 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\f1" ;; "\\f1" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1338 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\f1\\23" ;; "\\f1#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1355 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\00\\90\\90" ;; "\\f0\\00\\90\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1370 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\7f\\90\\90" ;; "\\f0\\7f\\90\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1385 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\80\\80\\80" ;; "\\f0\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1400 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\80\\90\\90" ;; "\\f0\\80\\90\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1415 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\8f\\90\\90" ;; "\\f0\\8f\\90\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1430 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\8f\\bf\\bf" ;; "\\f0\\8f\\bf\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1445 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\c0\\90\\90" ;; "\\f0\\c0\\90\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1460 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\fd\\90\\90" ;; "\\f0\\fd\\90\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1475 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\00\\80\\80" ;; "\\f1\\00\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1490 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\7f\\80\\80" ;; "\\f1\\7f\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1505 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\c0\\80\\80" ;; "\\f1\\c0\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1520 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\fd\\80\\80" ;; "\\f1\\fd\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1535 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\00\\80\\80" ;; "\\f3\\00\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1550 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\7f\\80\\80" ;; "\\f3\\7f\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1565 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\c0\\80\\80" ;; "\\f3\\c0\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1580 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\fd\\80\\80" ;; "\\f3\\fd\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1595 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\00\\80\\80" ;; "\\f4\\00\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1610 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\7f\\80\\80" ;; "\\f4\\7f\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1625 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\90\\80\\80" ;; "\\f4\\90\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1640 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\bf\\80\\80" ;; "\\f4\\bf\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1655 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\c0\\80\\80" ;; "\\f4\\c0\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1670 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\fd\\80\\80" ;; "\\f4\\fd\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1685 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f5\\80\\80\\80" ;; "\\f5\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1700 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f7\\80\\80\\80" ;; "\\f7\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1715 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f7\\bf\\bf\\bf" ;; "\\f7\\bf\\bf\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1732 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\90\\00\\90" ;; "\\f0\\90\\00\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1747 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\90\\7f\\90" ;; "\\f0\\90\\7f\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1762 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\90\\c0\\90" ;; "\\f0\\90\\c0\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1777 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\90\\fd\\90" ;; "\\f0\\90\\fd\\90" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1792 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\00\\80" ;; "\\f1\\80\\00\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1807 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\7f\\80" ;; "\\f1\\80\\7f\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1822 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\c0\\80" ;; "\\f1\\80\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1837 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\fd\\80" ;; "\\f1\\80\\fd\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1852 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\80\\00\\80" ;; "\\f3\\80\\00\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1867 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\80\\7f\\80" ;; "\\f3\\80\\7f\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1882 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\80\\c0\\80" ;; "\\f3\\80\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1897 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\80\\fd\\80" ;; "\\f3\\80\\fd\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1912 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\80\\00\\80" ;; "\\f4\\80\\00\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1927 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\80\\7f\\80" ;; "\\f4\\80\\7f\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1942 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\80\\c0\\80" ;; "\\f4\\80\\c0\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1957 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\80\\fd\\80" ;; "\\f4\\80\\fd\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1974 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\90\\90\\00" ;; "\\f0\\90\\90\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:1989 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\90\\90\\7f" ;; "\\f0\\90\\90\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2004 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\90\\90\\c0" ;; "\\f0\\90\\90\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2019 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f0\\90\\90\\fd" ;; "\\f0\\90\\90\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2034 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\80\\00" ;; "\\f1\\80\\80\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2049 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\80\\7f" ;; "\\f1\\80\\80\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2064 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\80\\c0" ;; "\\f1\\80\\80\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2079 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f1\\80\\80\\fd" ;; "\\f1\\80\\80\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2094 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\80\\80\\00" ;; "\\f3\\80\\80\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2109 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\80\\80\\7f" ;; "\\f3\\80\\80\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2124 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\80\\80\\c0" ;; "\\f3\\80\\80\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2139 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f3\\80\\80\\fd" ;; "\\f3\\80\\80\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2154 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\80\\80\\00" ;; "\\f4\\80\\80\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2169 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\80\\80\\7f" ;; "\\f4\\80\\80\\7f" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2184 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\80\\80\\c0" ;; "\\f4\\80\\80\\c0" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2199 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f4\\80\\80\\fd" ;; "\\f4\\80\\80\\fd" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2216 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\10" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\06\\f8\\80\\80\\80\\80\\80" ;; "\\f8\\80\\80\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2231 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f8\\80\\80\\80" ;; "\\f8\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2246 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\05\\f8\\80\\80\\80\\23" ;; "\\f8\\80\\80\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2261 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\f8\\80\\80" ;; "\\f8\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2276 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\f8\\80\\80\\23" ;; "\\f8\\80\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2291 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\f8\\80" ;; "\\f8\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2306 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\f8\\80\\23" ;; "\\f8\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2321 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\f8" ;; "\\f8" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2336 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\f8\\23" ;; "\\f8#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2353 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\05\\f8\\80\\80\\80\\80" ;; "\\f8\\80\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2368 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\05\\fb\\bf\\bf\\bf\\bf" ;; "\\fb\\bf\\bf\\bf\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2385 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\11" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\07\\fc\\80\\80\\80\\80\\80\\80" ;; "\\fc\\80\\80\\80\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2400 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\05\\fc\\80\\80\\80\\80" ;; "\\fc\\80\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2415 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\10" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\06\\fc\\80\\80\\80\\80\\23" ;; "\\fc\\80\\80\\80\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2430 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\fc\\80\\80\\80" ;; "\\fc\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2445 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0f" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\05\\fc\\80\\80\\80\\23" ;; "\\fc\\80\\80\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2460 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\fc\\80\\80" ;; "\\fc\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2475 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\fc\\80\\80\\23" ;; "\\fc\\80\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2490 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\fc\\80" ;; "\\fc\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2505 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0d" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\03\\fc\\80\\23" ;; "\\fc\\80#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2520 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\fc" ;; "\\fc" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2535 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\fc\\23" ;; "\\fc#" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2552 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\10" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\06\\fc\\80\\80\\80\\80\\80" ;; "\\fc\\80\\80\\80\\80\\80" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2567 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\10" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\06\\fd\\bf\\bf\\bf\\bf\\bf" ;; "\\fd\\bf\\bf\\bf\\bf\\bf" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2584 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\fe" ;; "\\fe" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2599 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0b" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\01\\ff" ;; "\\ff" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2614 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\fe\\ff" ;; "\\fe\\ff" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2629 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\00\\00\\fe\\ff" ;; "\\00\\00\\fe\\ff" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2644 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0c" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\02\\ff\\fe" ;; "\\ff\\fe" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-import-module.wast:2659 +assert_malformed( + () => instantiate(`(module binary + "\\00asm" "\\01\\00\\00\\00" + "\\02\\0e" ;; import section + "\\01" ;; length 1 + "\\04\\74\\65\\73\\74" ;; "test" + "\\04\\ff\\fe\\00\\00" ;; "\\ff\\fe\\00\\00" + "\\03" ;; GlobalImport + "\\7f" ;; i32 + "\\00" ;; immutable + )`), + `malformed UTF-8 encoding`, +); diff --git a/js/src/jit-test/tests/wasm/spec/spec/utf8-invalid-encoding.wast.js b/js/src/jit-test/tests/wasm/spec/spec/utf8-invalid-encoding.wast.js new file mode 100644 index 0000000000..e0fe95f69d --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/spec/utf8-invalid-encoding.wast.js @@ -0,0 +1,1033 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/utf8-invalid-encoding.wast + +// ./test/core/utf8-invalid-encoding.wast:1 +assert_malformed( + () => instantiate(`(func (export "\\00\\00\\fe\\ff")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:2 +assert_malformed(() => instantiate(`(func (export "\\80")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:3 +assert_malformed(() => instantiate(`(func (export "\\8f")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:4 +assert_malformed(() => instantiate(`(func (export "\\90")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:5 +assert_malformed(() => instantiate(`(func (export "\\9f")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:6 +assert_malformed(() => instantiate(`(func (export "\\a0")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:7 +assert_malformed(() => instantiate(`(func (export "\\bf")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:8 +assert_malformed( + () => instantiate(`(func (export "\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:9 +assert_malformed( + () => instantiate(`(func (export "\\c0\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:10 +assert_malformed( + () => instantiate(`(func (export "\\c1\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:11 +assert_malformed( + () => instantiate(`(func (export "\\c1\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:12 +assert_malformed( + () => instantiate(`(func (export "\\c2\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:13 +assert_malformed( + () => instantiate(`(func (export "\\c2\\2e")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:14 +assert_malformed( + () => instantiate(`(func (export "\\c2\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:15 +assert_malformed( + () => instantiate(`(func (export "\\c2\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:16 +assert_malformed( + () => instantiate(`(func (export "\\c2\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:17 +assert_malformed(() => instantiate(`(func (export "\\c2")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:18 +assert_malformed( + () => instantiate(`(func (export "\\c2\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:19 +assert_malformed( + () => instantiate(`(func (export "\\df\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:20 +assert_malformed( + () => instantiate(`(func (export "\\df\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:21 +assert_malformed( + () => instantiate(`(func (export "\\df\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:22 +assert_malformed( + () => instantiate(`(func (export "\\df\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:23 +assert_malformed( + () => instantiate(`(func (export "\\e0\\00\\a0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:24 +assert_malformed( + () => instantiate(`(func (export "\\e0\\7f\\a0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:25 +assert_malformed( + () => instantiate(`(func (export "\\e0\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:26 +assert_malformed( + () => instantiate(`(func (export "\\e0\\80\\a0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:27 +assert_malformed( + () => instantiate(`(func (export "\\e0\\9f\\a0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:28 +assert_malformed( + () => instantiate(`(func (export "\\e0\\9f\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:29 +assert_malformed( + () => instantiate(`(func (export "\\e0\\a0\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:30 +assert_malformed( + () => instantiate(`(func (export "\\e0\\a0\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:31 +assert_malformed( + () => instantiate(`(func (export "\\e0\\a0\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:32 +assert_malformed( + () => instantiate(`(func (export "\\e0\\a0\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:33 +assert_malformed( + () => instantiate(`(func (export "\\e0\\c0\\a0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:34 +assert_malformed( + () => instantiate(`(func (export "\\e0\\fd\\a0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:35 +assert_malformed( + () => instantiate(`(func (export "\\e1\\00\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:36 +assert_malformed( + () => instantiate(`(func (export "\\e1\\2e")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:37 +assert_malformed( + () => instantiate(`(func (export "\\e1\\7f\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:38 +assert_malformed( + () => instantiate(`(func (export "\\e1\\80\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:39 +assert_malformed( + () => instantiate(`(func (export "\\e1\\80\\2e")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:40 +assert_malformed( + () => instantiate(`(func (export "\\e1\\80\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:41 +assert_malformed( + () => instantiate(`(func (export "\\e1\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:42 +assert_malformed( + () => instantiate(`(func (export "\\e1\\80\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:43 +assert_malformed( + () => instantiate(`(func (export "\\e1\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:44 +assert_malformed( + () => instantiate(`(func (export "\\e1\\80\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:45 +assert_malformed( + () => instantiate(`(func (export "\\e1\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:46 +assert_malformed(() => instantiate(`(func (export "\\e1")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:47 +assert_malformed( + () => instantiate(`(func (export "\\e1\\fd\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:48 +assert_malformed( + () => instantiate(`(func (export "\\ec\\00\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:49 +assert_malformed( + () => instantiate(`(func (export "\\ec\\7f\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:50 +assert_malformed( + () => instantiate(`(func (export "\\ec\\80\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:51 +assert_malformed( + () => instantiate(`(func (export "\\ec\\80\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:52 +assert_malformed( + () => instantiate(`(func (export "\\ec\\80\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:53 +assert_malformed( + () => instantiate(`(func (export "\\ec\\80\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:54 +assert_malformed( + () => instantiate(`(func (export "\\ec\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:55 +assert_malformed( + () => instantiate(`(func (export "\\ec\\fd\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:56 +assert_malformed( + () => instantiate(`(func (export "\\ed\\00\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:57 +assert_malformed( + () => instantiate(`(func (export "\\ed\\7f\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:58 +assert_malformed( + () => instantiate(`(func (export "\\ed\\80\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:59 +assert_malformed( + () => instantiate(`(func (export "\\ed\\80\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:60 +assert_malformed( + () => instantiate(`(func (export "\\ed\\80\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:61 +assert_malformed( + () => instantiate(`(func (export "\\ed\\80\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:62 +assert_malformed( + () => instantiate(`(func (export "\\ed\\a0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:63 +assert_malformed( + () => instantiate(`(func (export "\\ed\\a0\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:64 +assert_malformed( + () => instantiate(`(func (export "\\ed\\bf\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:65 +assert_malformed( + () => instantiate(`(func (export "\\ed\\bf\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:66 +assert_malformed( + () => instantiate(`(func (export "\\ed\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:67 +assert_malformed( + () => instantiate(`(func (export "\\ed\\fd\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:68 +assert_malformed( + () => instantiate(`(func (export "\\ee\\00\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:69 +assert_malformed( + () => instantiate(`(func (export "\\ee\\7f\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:70 +assert_malformed( + () => instantiate(`(func (export "\\ee\\80\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:71 +assert_malformed( + () => instantiate(`(func (export "\\ee\\80\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:72 +assert_malformed( + () => instantiate(`(func (export "\\ee\\80\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:73 +assert_malformed( + () => instantiate(`(func (export "\\ee\\80\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:74 +assert_malformed( + () => instantiate(`(func (export "\\ee\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:75 +assert_malformed( + () => instantiate(`(func (export "\\ee\\fd\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:76 +assert_malformed( + () => instantiate(`(func (export "\\ef\\00\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:77 +assert_malformed( + () => instantiate(`(func (export "\\ef\\7f\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:78 +assert_malformed( + () => instantiate(`(func (export "\\ef\\80\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:79 +assert_malformed( + () => instantiate(`(func (export "\\ef\\80\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:80 +assert_malformed( + () => instantiate(`(func (export "\\ef\\80\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:81 +assert_malformed( + () => instantiate(`(func (export "\\ef\\80\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:82 +assert_malformed( + () => instantiate(`(func (export "\\ef\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:83 +assert_malformed( + () => instantiate(`(func (export "\\ef\\fd\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:84 +assert_malformed( + () => instantiate(`(func (export "\\f0\\00\\90\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:85 +assert_malformed( + () => instantiate(`(func (export "\\f0\\7f\\90\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:86 +assert_malformed( + () => instantiate(`(func (export "\\f0\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:87 +assert_malformed( + () => instantiate(`(func (export "\\f0\\80\\90\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:88 +assert_malformed( + () => instantiate(`(func (export "\\f0\\8f\\90\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:89 +assert_malformed( + () => instantiate(`(func (export "\\f0\\8f\\bf\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:90 +assert_malformed( + () => instantiate(`(func (export "\\f0\\90\\00\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:91 +assert_malformed( + () => instantiate(`(func (export "\\f0\\90\\7f\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:92 +assert_malformed( + () => instantiate(`(func (export "\\f0\\90\\90\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:93 +assert_malformed( + () => instantiate(`(func (export "\\f0\\90\\90\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:94 +assert_malformed( + () => instantiate(`(func (export "\\f0\\90\\90\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:95 +assert_malformed( + () => instantiate(`(func (export "\\f0\\90\\90\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:96 +assert_malformed( + () => instantiate(`(func (export "\\f0\\90\\c0\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:97 +assert_malformed( + () => instantiate(`(func (export "\\f0\\90\\fd\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:98 +assert_malformed( + () => instantiate(`(func (export "\\f0\\c0\\90\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:99 +assert_malformed( + () => instantiate(`(func (export "\\f0\\fd\\90\\90")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:100 +assert_malformed( + () => instantiate(`(func (export "\\f1\\00\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:101 +assert_malformed( + () => instantiate(`(func (export "\\f1\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:102 +assert_malformed( + () => instantiate(`(func (export "\\f1\\7f\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:103 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\00\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:104 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:105 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\7f\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:106 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\80\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:107 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:108 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\80\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:109 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:110 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\80\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:111 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:112 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\80\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:113 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:114 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:115 +assert_malformed( + () => instantiate(`(func (export "\\f1\\80\\fd\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:116 +assert_malformed( + () => instantiate(`(func (export "\\f1\\c0\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:117 +assert_malformed(() => instantiate(`(func (export "\\f1")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:118 +assert_malformed( + () => instantiate(`(func (export "\\f1\\fd\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:119 +assert_malformed( + () => instantiate(`(func (export "\\f3\\00\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:120 +assert_malformed( + () => instantiate(`(func (export "\\f3\\7f\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:121 +assert_malformed( + () => instantiate(`(func (export "\\f3\\80\\00\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:122 +assert_malformed( + () => instantiate(`(func (export "\\f3\\80\\7f\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:123 +assert_malformed( + () => instantiate(`(func (export "\\f3\\80\\80\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:124 +assert_malformed( + () => instantiate(`(func (export "\\f3\\80\\80\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:125 +assert_malformed( + () => instantiate(`(func (export "\\f3\\80\\80\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:126 +assert_malformed( + () => instantiate(`(func (export "\\f3\\80\\80\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:127 +assert_malformed( + () => instantiate(`(func (export "\\f3\\80\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:128 +assert_malformed( + () => instantiate(`(func (export "\\f3\\80\\fd\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:129 +assert_malformed( + () => instantiate(`(func (export "\\f3\\c0\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:130 +assert_malformed( + () => instantiate(`(func (export "\\f3\\fd\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:131 +assert_malformed( + () => instantiate(`(func (export "\\f4\\00\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:132 +assert_malformed( + () => instantiate(`(func (export "\\f4\\7f\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:133 +assert_malformed( + () => instantiate(`(func (export "\\f4\\80\\00\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:134 +assert_malformed( + () => instantiate(`(func (export "\\f4\\80\\7f\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:135 +assert_malformed( + () => instantiate(`(func (export "\\f4\\80\\80\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:136 +assert_malformed( + () => instantiate(`(func (export "\\f4\\80\\80\\7f")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:137 +assert_malformed( + () => instantiate(`(func (export "\\f4\\80\\80\\c0")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:138 +assert_malformed( + () => instantiate(`(func (export "\\f4\\80\\80\\fd")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:139 +assert_malformed( + () => instantiate(`(func (export "\\f4\\80\\c0\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:140 +assert_malformed( + () => instantiate(`(func (export "\\f4\\80\\fd\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:141 +assert_malformed( + () => instantiate(`(func (export "\\f4\\90\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:142 +assert_malformed( + () => instantiate(`(func (export "\\f4\\bf\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:143 +assert_malformed( + () => instantiate(`(func (export "\\f4\\c0\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:144 +assert_malformed( + () => instantiate(`(func (export "\\f4\\fd\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:145 +assert_malformed( + () => instantiate(`(func (export "\\f5\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:146 +assert_malformed( + () => instantiate(`(func (export "\\f7\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:147 +assert_malformed( + () => instantiate(`(func (export "\\f7\\bf\\bf\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:148 +assert_malformed( + () => instantiate(`(func (export "\\f8\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:149 +assert_malformed( + () => instantiate(`(func (export "\\f8\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:150 +assert_malformed( + () => instantiate(`(func (export "\\f8\\80\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:151 +assert_malformed( + () => instantiate(`(func (export "\\f8\\80\\80\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:152 +assert_malformed( + () => instantiate(`(func (export "\\f8\\80\\80\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:153 +assert_malformed( + () => instantiate(`(func (export "\\f8\\80\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:154 +assert_malformed( + () => instantiate(`(func (export "\\f8\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:155 +assert_malformed( + () => instantiate(`(func (export "\\f8\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:156 +assert_malformed( + () => instantiate(`(func (export "\\f8\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:157 +assert_malformed(() => instantiate(`(func (export "\\f8")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:158 +assert_malformed( + () => instantiate(`(func (export "\\fb\\bf\\bf\\bf\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:159 +assert_malformed( + () => instantiate(`(func (export "\\fc\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:160 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:161 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:162 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\80\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:163 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\80\\80\\80\\23")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:164 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\80\\80\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:165 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\80\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:166 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:167 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:168 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:169 +assert_malformed( + () => instantiate(`(func (export "\\fc\\80")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:170 +assert_malformed(() => instantiate(`(func (export "\\fc")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:171 +assert_malformed( + () => instantiate(`(func (export "\\fd\\bf\\bf\\bf\\bf\\bf")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:172 +assert_malformed(() => instantiate(`(func (export "\\fe")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:173 +assert_malformed( + () => instantiate(`(func (export "\\fe\\ff")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:174 +assert_malformed(() => instantiate(`(func (export "\\ff")) `), `malformed UTF-8 encoding`); + +// ./test/core/utf8-invalid-encoding.wast:175 +assert_malformed( + () => instantiate(`(func (export "\\ff\\fe\\00\\00")) `), + `malformed UTF-8 encoding`, +); + +// ./test/core/utf8-invalid-encoding.wast:176 +assert_malformed( + () => instantiate(`(func (export "\\ff\\fe")) `), + `malformed UTF-8 encoding`, +); diff --git a/js/src/jit-test/tests/wasm/spec/tail-call/directives.txt b/js/src/jit-test/tests/wasm/spec/tail-call/directives.txt new file mode 100644 index 0000000000..223b6b843a --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/tail-call/directives.txt @@ -0,0 +1 @@ +|jit-test| test-also=--wasm-compiler=optimizing; test-also=--wasm-compiler=baseline; test-also=--wasm-test-serialization; test-also=--test-wasm-await-tier2; test-also=--disable-wasm-huge-memory; skip-variant-if: --disable-wasm-huge-memory, !wasmHugeMemorySupported(); local-include:harness/harness.js; --wasm-tail-calls; skip-if: !wasmTailCallsEnabled() \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/tail-call/harness/directives.txt b/js/src/jit-test/tests/wasm/spec/tail-call/harness/directives.txt new file mode 100644 index 0000000000..d41243abbb --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/tail-call/harness/directives.txt @@ -0,0 +1 @@ +|jit-test| skip-if: true \ No newline at end of file diff --git a/js/src/jit-test/tests/wasm/spec/tail-call/harness/harness.js b/js/src/jit-test/tests/wasm/spec/tail-call/harness/harness.js new file mode 100644 index 0000000000..a96781e8ed --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/tail-call/harness/harness.js @@ -0,0 +1,448 @@ +"use strict"; + +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +if (!wasmIsSupported()) { + quit(); +} + +function bytes(type, bytes) { + var typedBuffer = new Uint8Array(bytes); + return wasmGlobalFromArrayBuffer(type, typedBuffer.buffer); +} +function value(type, value) { + return new WebAssembly.Global({ + value: type, + mutable: false, + }, value); +} + +function i8x16(elements) { + let typedBuffer = new Uint8Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i16x8(elements) { + let typedBuffer = new Uint16Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i32x4(elements) { + let typedBuffer = new Uint32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function i64x2(elements) { + let typedBuffer = new BigUint64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f32x4(elements) { + let typedBuffer = new Float32Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} +function f64x2(elements) { + let typedBuffer = new Float64Array(elements); + return wasmGlobalFromArrayBuffer("v128", typedBuffer.buffer); +} + +function either(...arr) { + return new EitherVariants(arr); +} + +class F32x4Pattern { + constructor(x, y, z, w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } +} + +class F64x2Pattern { + constructor(x, y) { + this.x = x; + this.y = y; + } +} + +class RefWithType { + constructor(type) { + this.type = type; + } + + formatExpected() { + return `RefWithType(${this.type})`; + } + + test(refGlobal) { + try { + new WebAssembly.Global({value: this.type}, refGlobal.value); + return true; + } catch (err) { + assertEq(err instanceof TypeError, true, `wrong type of error when creating global: ${err}`); + assertEq(!!err.message.match(/can only pass/), true, `wrong type of error when creating global: ${err}`); + return false; + } + } +} + +// ref.extern values created by spec tests will be JS objects of the form +// { [externsym]: }. Other externref values are possible to observe +// if extern.convert_any is used. +let externsym = Symbol("externref"); +function externref(s) { + return { [externsym]: s }; +} +function is_externref(x) { + return (x !== null && externsym in x) ? 1 : 0; +} +function is_funcref(x) { + return typeof x === "function" ? 1 : 0; +} +function eq_externref(x, y) { + return x === y ? 1 : 0; +} +function eq_funcref(x, y) { + return x === y ? 1 : 0; +} + +class ExternRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.extern ${this.n}`; + } + + test(global) { + // the global's value can either be an externref or just a plain old JS number + let result = global.value; + if (typeof global.value === "object" && externsym in global.value) { + result = global.value[externsym]; + } + return result === this.n; + } +} + +// ref.host values created by spectests will be whatever the JS API does to +// convert the given value to anyref. It should implicitly be like any.convert_extern. +function hostref(v) { + if (!wasmGcEnabled()) { + throw new Error("ref.host only works when wasm GC is enabled"); + } + + const { internalizeNum } = new WebAssembly.Instance( + new WebAssembly.Module(wasmTextToBinary(`(module + (func (import "test" "coerce") (param i32) (result anyref)) + (func (export "internalizeNum") (param i32) (result anyref) + (call 0 (local.get 0)) + ) + )`)), + { "test": { "coerce": x => x } }, + ).exports; + return internalizeNum(v); +} + +class HostRefResult { + constructor(n) { + this.n = n; + } + + formatExpected() { + return `ref.host ${this.n}`; + } + + test(externrefGlobal) { + assertEq(externsym in externrefGlobal.value, true, `HostRefResult only works with externref inputs`); + return externrefGlobal.value[externsym] === this.n; + } +} + +let spectest = { + externref: externref, + is_externref: is_externref, + is_funcref: is_funcref, + eq_externref: eq_externref, + eq_funcref: eq_funcref, + print: console.log.bind(console), + print_i32: console.log.bind(console), + print_i32_f32: console.log.bind(console), + print_f64_f64: console.log.bind(console), + print_f32: console.log.bind(console), + print_f64: console.log.bind(console), + global_i32: 666, + global_i64: 666n, + global_f32: 666, + global_f64: 666, + table: new WebAssembly.Table({ + initial: 10, + maximum: 20, + element: "anyfunc", + }), + memory: new WebAssembly.Memory({ initial: 1, maximum: 2 }), +}; + +let linkage = { + spectest, +}; + +function getInstance(instanceish) { + if (typeof instanceish === "string") { + assertEq( + instanceish in linkage, + true, + `'${instanceish}'' must be registered`, + ); + return linkage[instanceish]; + } + return instanceish; +} + +function instantiate(source) { + let bytecode = wasmTextToBinary(source); + let module = new WebAssembly.Module(bytecode); + let instance = new WebAssembly.Instance(module, linkage); + return instance.exports; +} + +function register(instanceish, name) { + linkage[name] = getInstance(instanceish); +} + +function invoke(instanceish, field, params) { + let func = getInstance(instanceish)[field]; + assertEq(func instanceof Function, true, "expected a function"); + return wasmLosslessInvoke(func, ...params); +} + +function get(instanceish, field) { + let global = getInstance(instanceish)[field]; + assertEq( + global instanceof WebAssembly.Global, + true, + "expected a WebAssembly.Global", + ); + return global; +} + +function assert_trap(thunk, message) { + try { + thunk(); + throw new Error("expected trap"); + } catch (err) { + if (err instanceof WebAssembly.RuntimeError) { + return; + } + throw err; + } +} + +let StackOverflow; +try { + (function f() { + 1 + f(); + })(); +} catch (e) { + StackOverflow = e.constructor; +} +function assert_exhaustion(thunk, message) { + try { + thunk(); + assertEq("normal return", "exhaustion"); + } catch (err) { + assertEq( + err instanceof StackOverflow, + true, + "expected exhaustion", + ); + } +} + +function assert_invalid(thunk, message) { + try { + thunk(); + assertEq("valid module", "invalid module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an invalid module", + ); + } +} + +function assert_unlinkable(thunk, message) { + try { + thunk(); + assertEq(true, false, "expected an unlinkable module"); + } catch (err) { + assertEq( + err instanceof WebAssembly.LinkError || + err instanceof WebAssembly.CompileError, + true, + "expected an unlinkable module", + ); + } +} + +function assert_malformed(thunk, message) { + try { + thunk(); + assertEq("valid module", "malformed module"); + } catch (err) { + assertEq( + err instanceof TypeError || + err instanceof SyntaxError || + err instanceof WebAssembly.CompileError || + err instanceof WebAssembly.LinkError, + true, + `expected a malformed module`, + ); + } +} + +function assert_exception(thunk) { + let thrown = false; + try { + thunk(); + } catch (err) { + thrown = true; + } + assertEq(thrown, true, "expected an exception to be thrown"); +} + +function assert_return(thunk, expected) { + let results = thunk(); + + if (results === undefined) { + results = []; + } else if (!Array.isArray(results)) { + results = [results]; + } + if (!Array.isArray(expected)) { + expected = [expected]; + } + + if (!compareResults(results, expected)) { + let got = results.map((x) => formatResult(x)).join(", "); + let wanted = expected.map((x) => formatExpected(x)).join(", "); + assertEq( + `[${got}]`, + `[${wanted}]`, + ); + assertEq(true, false, `${got} !== ${wanted}`); + } +} + +function formatResult(result) { + if (typeof (result) === "object") { + return wasmGlobalToString(result); + } else { + return `${result}`; + } +} + +function formatExpected(expected) { + if ( + expected === `f32_canonical_nan` || + expected === `f32_arithmetic_nan` || + expected === `f64_canonical_nan` || + expected === `f64_arithmetic_nan` + ) { + return expected; + } else if (expected instanceof F32x4Pattern) { + return `f32x4(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + }, ${formatExpected(expected.z)}, ${formatExpected(expected.w)})`; + } else if (expected instanceof F64x2Pattern) { + return `f64x2(${formatExpected(expected.x)}, ${ + formatExpected(expected.y) + })`; + } else if (expected instanceof EitherVariants) { + return expected.formatExpected(); + } else if (expected instanceof RefWithType) { + return expected.formatExpected(); + } else if (expected instanceof ExternRefResult) { + return expected.formatExpected(); + } else if (expected instanceof HostRefResult) { + return expected.formatExpected(); + } else if (typeof (expected) === "object") { + return wasmGlobalToString(expected); + } else { + throw new Error("unknown expected result"); + } +} + +class EitherVariants { + constructor(arr) { + this.arr = arr; + } + matches(v) { + return this.arr.some((e) => compareResult(v, e)); + } + formatExpected() { + return `either(${this.arr.map(formatExpected).join(", ")})`; + } +} + +function compareResults(results, expected) { + if (results.length !== expected.length) { + return false; + } + for (let i in results) { + if (expected[i] instanceof EitherVariants) { + return expected[i].matches(results[i]); + } + if (!compareResult(results[i], expected[i])) { + return false; + } + } + return true; +} + +function compareResult(result, expected) { + if ( + expected === `canonical_nan` || + expected === `arithmetic_nan` + ) { + return wasmGlobalIsNaN(result, expected); + } else if (expected === null) { + return result.value === null; + } else if (expected instanceof F32x4Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f32x4", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 1), expected.y) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 2), expected.z) && + compareResult(wasmGlobalExtractLane(result, "f32x4", 3), expected.w); + } else if (expected instanceof F64x2Pattern) { + return compareResult( + wasmGlobalExtractLane(result, "f64x2", 0), + expected.x, + ) && + compareResult(wasmGlobalExtractLane(result, "f64x2", 1), expected.y); + } else if (expected instanceof RefWithType) { + return expected.test(result); + } else if (expected instanceof ExternRefResult) { + return expected.test(result); + } else if (expected instanceof HostRefResult) { + return expected.test(result); + } else if (typeof (expected) === "object") { + return wasmGlobalsEqual(result, expected); + } else { + throw new Error("unknown expected result"); + } +} diff --git a/js/src/jit-test/tests/wasm/spec/tail-call/return_call.wast.js b/js/src/jit-test/tests/wasm/spec/tail-call/return_call.wast.js new file mode 100644 index 0000000000..2feda2e0a7 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/tail-call/return_call.wast.js @@ -0,0 +1,283 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/return_call.wast + +// ./test/core/return_call.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definitions + (func $$const-i32 (result i32) (i32.const 0x132)) + (func $$const-i64 (result i64) (i64.const 0x164)) + (func $$const-f32 (result f32) (f32.const 0xf32)) + (func $$const-f64 (result f64) (f64.const 0xf64)) + + (func $$id-i32 (param i32) (result i32) (local.get 0)) + (func $$id-i64 (param i64) (result i64) (local.get 0)) + (func $$id-f32 (param f32) (result f32) (local.get 0)) + (func $$id-f64 (param f64) (result f64) (local.get 0)) + + (func $$f32-i32 (param f32 i32) (result i32) (local.get 1)) + (func $$i32-i64 (param i32 i64) (result i64) (local.get 1)) + (func $$f64-f32 (param f64 f32) (result f32) (local.get 1)) + (func $$i64-f64 (param i64 f64) (result f64) (local.get 1)) + + ;; Typing + + (func (export "type-i32") (result i32) (return_call $$const-i32)) + (func (export "type-i64") (result i64) (return_call $$const-i64)) + (func (export "type-f32") (result f32) (return_call $$const-f32)) + (func (export "type-f64") (result f64) (return_call $$const-f64)) + + (func (export "type-first-i32") (result i32) (return_call $$id-i32 (i32.const 32))) + (func (export "type-first-i64") (result i64) (return_call $$id-i64 (i64.const 64))) + (func (export "type-first-f32") (result f32) (return_call $$id-f32 (f32.const 1.32))) + (func (export "type-first-f64") (result f64) (return_call $$id-f64 (f64.const 1.64))) + + (func (export "type-second-i32") (result i32) + (return_call $$f32-i32 (f32.const 32.1) (i32.const 32)) + ) + (func (export "type-second-i64") (result i64) + (return_call $$i32-i64 (i32.const 32) (i64.const 64)) + ) + (func (export "type-second-f32") (result f32) + (return_call $$f64-f32 (f64.const 64) (f32.const 32)) + ) + (func (export "type-second-f64") (result f64) + (return_call $$i64-f64 (i64.const 64) (f64.const 64.1)) + ) + + ;; Recursion + + (func $$fac-acc (export "fac-acc") (param i64 i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (local.get 1)) + (else + (return_call $$fac-acc + (i64.sub (local.get 0) (i64.const 1)) + (i64.mul (local.get 0) (local.get 1)) + ) + ) + ) + ) + + (func $$count (export "count") (param i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (local.get 0)) + (else (return_call $$count (i64.sub (local.get 0) (i64.const 1)))) + ) + ) + + (func $$even (export "even") (param i64) (result i32) + (if (result i32) (i64.eqz (local.get 0)) + (then (i32.const 44)) + (else (return_call $$odd (i64.sub (local.get 0) (i64.const 1)))) + ) + ) + (func $$odd (export "odd") (param i64) (result i32) + (if (result i32) (i64.eqz (local.get 0)) + (then (i32.const 99)) + (else (return_call $$even (i64.sub (local.get 0) (i64.const 1)))) + ) + ) +)`); + +// ./test/core/return_call.wast:80 +assert_return(() => invoke($0, `type-i32`, []), [value("i32", 306)]); + +// ./test/core/return_call.wast:81 +assert_return(() => invoke($0, `type-i64`, []), [value("i64", 356n)]); + +// ./test/core/return_call.wast:82 +assert_return(() => invoke($0, `type-f32`, []), [value("f32", 3890)]); + +// ./test/core/return_call.wast:83 +assert_return(() => invoke($0, `type-f64`, []), [value("f64", 3940)]); + +// ./test/core/return_call.wast:85 +assert_return(() => invoke($0, `type-first-i32`, []), [value("i32", 32)]); + +// ./test/core/return_call.wast:86 +assert_return(() => invoke($0, `type-first-i64`, []), [value("i64", 64n)]); + +// ./test/core/return_call.wast:87 +assert_return(() => invoke($0, `type-first-f32`, []), [value("f32", 1.32)]); + +// ./test/core/return_call.wast:88 +assert_return(() => invoke($0, `type-first-f64`, []), [value("f64", 1.64)]); + +// ./test/core/return_call.wast:90 +assert_return(() => invoke($0, `type-second-i32`, []), [value("i32", 32)]); + +// ./test/core/return_call.wast:91 +assert_return(() => invoke($0, `type-second-i64`, []), [value("i64", 64n)]); + +// ./test/core/return_call.wast:92 +assert_return(() => invoke($0, `type-second-f32`, []), [value("f32", 32)]); + +// ./test/core/return_call.wast:93 +assert_return(() => invoke($0, `type-second-f64`, []), [value("f64", 64.1)]); + +// ./test/core/return_call.wast:95 +assert_return(() => invoke($0, `fac-acc`, [0n, 1n]), [value("i64", 1n)]); + +// ./test/core/return_call.wast:96 +assert_return(() => invoke($0, `fac-acc`, [1n, 1n]), [value("i64", 1n)]); + +// ./test/core/return_call.wast:97 +assert_return(() => invoke($0, `fac-acc`, [5n, 1n]), [value("i64", 120n)]); + +// ./test/core/return_call.wast:98 +assert_return(() => invoke($0, `fac-acc`, [25n, 1n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/return_call.wast:103 +assert_return(() => invoke($0, `count`, [0n]), [value("i64", 0n)]); + +// ./test/core/return_call.wast:104 +assert_return(() => invoke($0, `count`, [1000n]), [value("i64", 0n)]); + +// ./test/core/return_call.wast:105 +assert_return(() => invoke($0, `count`, [1000000n]), [value("i64", 0n)]); + +// ./test/core/return_call.wast:107 +assert_return(() => invoke($0, `even`, [0n]), [value("i32", 44)]); + +// ./test/core/return_call.wast:108 +assert_return(() => invoke($0, `even`, [1n]), [value("i32", 99)]); + +// ./test/core/return_call.wast:109 +assert_return(() => invoke($0, `even`, [100n]), [value("i32", 44)]); + +// ./test/core/return_call.wast:110 +assert_return(() => invoke($0, `even`, [77n]), [value("i32", 99)]); + +// ./test/core/return_call.wast:111 +assert_return(() => invoke($0, `even`, [1000000n]), [value("i32", 44)]); + +// ./test/core/return_call.wast:112 +assert_return(() => invoke($0, `even`, [1000001n]), [value("i32", 99)]); + +// ./test/core/return_call.wast:113 +assert_return(() => invoke($0, `odd`, [0n]), [value("i32", 99)]); + +// ./test/core/return_call.wast:114 +assert_return(() => invoke($0, `odd`, [1n]), [value("i32", 44)]); + +// ./test/core/return_call.wast:115 +assert_return(() => invoke($0, `odd`, [200n]), [value("i32", 99)]); + +// ./test/core/return_call.wast:116 +assert_return(() => invoke($0, `odd`, [77n]), [value("i32", 44)]); + +// ./test/core/return_call.wast:117 +assert_return(() => invoke($0, `odd`, [1000000n]), [value("i32", 99)]); + +// ./test/core/return_call.wast:118 +assert_return(() => invoke($0, `odd`, [999999n]), [value("i32", 44)]); + +// ./test/core/return_call.wast:123 +assert_invalid( + () => instantiate(`(module + (func $$type-void-vs-num (result i32) (return_call 1) (i32.const 0)) + (func) + )`), + `type mismatch`, +); + +// ./test/core/return_call.wast:130 +assert_invalid( + () => instantiate(`(module + (func $$type-num-vs-num (result i32) (return_call 1) (i32.const 0)) + (func (result i64) (i64.const 1)) + )`), + `type mismatch`, +); + +// ./test/core/return_call.wast:138 +assert_invalid( + () => instantiate(`(module + (func $$arity-0-vs-1 (return_call 1)) + (func (param i32)) + )`), + `type mismatch`, +); + +// ./test/core/return_call.wast:145 +assert_invalid( + () => instantiate(`(module + (func $$arity-0-vs-2 (return_call 1)) + (func (param f64 i32)) + )`), + `type mismatch`, +); + +// ./test/core/return_call.wast:153 +let $1 = instantiate(`(module + (func $$arity-1-vs-0 (i32.const 1) (return_call 1)) + (func) +)`); + +// ./test/core/return_call.wast:158 +let $2 = instantiate(`(module + (func $$arity-2-vs-0 (f64.const 2) (i32.const 1) (return_call 1)) + (func) +)`); + +// ./test/core/return_call.wast:163 +assert_invalid( + () => instantiate(`(module + (func $$type-first-void-vs-num (return_call 1 (nop) (i32.const 1))) + (func (param i32 i32)) + )`), + `type mismatch`, +); + +// ./test/core/return_call.wast:170 +assert_invalid( + () => instantiate(`(module + (func $$type-second-void-vs-num (return_call 1 (i32.const 1) (nop))) + (func (param i32 i32)) + )`), + `type mismatch`, +); + +// ./test/core/return_call.wast:177 +assert_invalid( + () => instantiate(`(module + (func $$type-first-num-vs-num (return_call 1 (f64.const 1) (i32.const 1))) + (func (param i32 f64)) + )`), + `type mismatch`, +); + +// ./test/core/return_call.wast:184 +assert_invalid( + () => instantiate(`(module + (func $$type-second-num-vs-num (return_call 1 (i32.const 1) (f64.const 1))) + (func (param f64 i32)) + )`), + `type mismatch`, +); + +// ./test/core/return_call.wast:195 +assert_invalid( + () => instantiate(`(module (func $$unbound-func (return_call 1)))`), + `unknown function`, +); + +// ./test/core/return_call.wast:199 +assert_invalid( + () => instantiate(`(module (func $$large-func (return_call 1012321300)))`), + `unknown function`, +); diff --git a/js/src/jit-test/tests/wasm/spec/tail-call/return_call_indirect.wast.js b/js/src/jit-test/tests/wasm/spec/tail-call/return_call_indirect.wast.js new file mode 100644 index 0000000000..706aae5c18 --- /dev/null +++ b/js/src/jit-test/tests/wasm/spec/tail-call/return_call_indirect.wast.js @@ -0,0 +1,591 @@ +/* Copyright 2021 Mozilla Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// ./test/core/return_call_indirect.wast + +// ./test/core/return_call_indirect.wast:3 +let $0 = instantiate(`(module + ;; Auxiliary definitions + (type $$proc (func)) + (type $$out-i32 (func (result i32))) + (type $$out-i64 (func (result i64))) + (type $$out-f32 (func (result f32))) + (type $$out-f64 (func (result f64))) + (type $$over-i32 (func (param i32) (result i32))) + (type $$over-i64 (func (param i64) (result i64))) + (type $$over-f32 (func (param f32) (result f32))) + (type $$over-f64 (func (param f64) (result f64))) + (type $$f32-i32 (func (param f32 i32) (result i32))) + (type $$i32-i64 (func (param i32 i64) (result i64))) + (type $$f64-f32 (func (param f64 f32) (result f32))) + (type $$i64-f64 (func (param i64 f64) (result f64))) + (type $$over-i32-duplicate (func (param i32) (result i32))) + (type $$over-i64-duplicate (func (param i64) (result i64))) + (type $$over-f32-duplicate (func (param f32) (result f32))) + (type $$over-f64-duplicate (func (param f64) (result f64))) + + (func $$const-i32 (type $$out-i32) (i32.const 0x132)) + (func $$const-i64 (type $$out-i64) (i64.const 0x164)) + (func $$const-f32 (type $$out-f32) (f32.const 0xf32)) + (func $$const-f64 (type $$out-f64) (f64.const 0xf64)) + + (func $$id-i32 (type $$over-i32) (local.get 0)) + (func $$id-i64 (type $$over-i64) (local.get 0)) + (func $$id-f32 (type $$over-f32) (local.get 0)) + (func $$id-f64 (type $$over-f64) (local.get 0)) + + (func $$i32-i64 (type $$i32-i64) (local.get 1)) + (func $$i64-f64 (type $$i64-f64) (local.get 1)) + (func $$f32-i32 (type $$f32-i32) (local.get 1)) + (func $$f64-f32 (type $$f64-f32) (local.get 1)) + + (func $$over-i32-duplicate (type $$over-i32-duplicate) (local.get 0)) + (func $$over-i64-duplicate (type $$over-i64-duplicate) (local.get 0)) + (func $$over-f32-duplicate (type $$over-f32-duplicate) (local.get 0)) + (func $$over-f64-duplicate (type $$over-f64-duplicate) (local.get 0)) + + (table funcref + (elem + $$const-i32 $$const-i64 $$const-f32 $$const-f64 + $$id-i32 $$id-i64 $$id-f32 $$id-f64 + $$f32-i32 $$i32-i64 $$f64-f32 $$i64-f64 + $$fac $$fac-acc $$even $$odd + $$over-i32-duplicate $$over-i64-duplicate + $$over-f32-duplicate $$over-f64-duplicate + ) + ) + + ;; Syntax + + (func + (return_call_indirect (i32.const 0)) + (return_call_indirect (param i64) (i64.const 0) (i32.const 0)) + (return_call_indirect (param i64) (param) (param f64 i32 i64) + (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i32.const 0) + ) + (return_call_indirect (result) (i32.const 0)) + ) + + (func (result i32) + (return_call_indirect (result i32) (i32.const 0)) + (return_call_indirect (result i32) (result) (i32.const 0)) + (return_call_indirect (param i64) (result i32) (i64.const 0) (i32.const 0)) + (return_call_indirect + (param) (param i64) (param) (param f64 i32 i64) (param) (param) + (result) (result i32) (result) (result) + (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i32.const 0) + ) + ) + + (func (result i64) + (return_call_indirect (type $$over-i64) (param i64) (result i64) + (i64.const 0) (i32.const 0) + ) + ) + + ;; Typing + + (func (export "type-i32") (result i32) + (return_call_indirect (type $$out-i32) (i32.const 0)) + ) + (func (export "type-i64") (result i64) + (return_call_indirect (type $$out-i64) (i32.const 1)) + ) + (func (export "type-f32") (result f32) + (return_call_indirect (type $$out-f32) (i32.const 2)) + ) + (func (export "type-f64") (result f64) + (return_call_indirect (type $$out-f64) (i32.const 3)) + ) + + (func (export "type-index") (result i64) + (return_call_indirect (type $$over-i64) (i64.const 100) (i32.const 5)) + ) + + (func (export "type-first-i32") (result i32) + (return_call_indirect (type $$over-i32) (i32.const 32) (i32.const 4)) + ) + (func (export "type-first-i64") (result i64) + (return_call_indirect (type $$over-i64) (i64.const 64) (i32.const 5)) + ) + (func (export "type-first-f32") (result f32) + (return_call_indirect (type $$over-f32) (f32.const 1.32) (i32.const 6)) + ) + (func (export "type-first-f64") (result f64) + (return_call_indirect (type $$over-f64) (f64.const 1.64) (i32.const 7)) + ) + + (func (export "type-second-i32") (result i32) + (return_call_indirect (type $$f32-i32) + (f32.const 32.1) (i32.const 32) (i32.const 8) + ) + ) + (func (export "type-second-i64") (result i64) + (return_call_indirect (type $$i32-i64) + (i32.const 32) (i64.const 64) (i32.const 9) + ) + ) + (func (export "type-second-f32") (result f32) + (return_call_indirect (type $$f64-f32) + (f64.const 64) (f32.const 32) (i32.const 10) + ) + ) + (func (export "type-second-f64") (result f64) + (return_call_indirect (type $$i64-f64) + (i64.const 64) (f64.const 64.1) (i32.const 11) + ) + ) + + ;; Dispatch + + (func (export "dispatch") (param i32 i64) (result i64) + (return_call_indirect (type $$over-i64) (local.get 1) (local.get 0)) + ) + + (func (export "dispatch-structural") (param i32) (result i64) + (return_call_indirect (type $$over-i64-duplicate) + (i64.const 9) (local.get 0) + ) + ) + + ;; Multiple tables + + (table $$tab2 funcref (elem $$tab-f1)) + (table $$tab3 funcref (elem $$tab-f2)) + + (func $$tab-f1 (result i32) (i32.const 0x133)) + (func $$tab-f2 (result i32) (i32.const 0x134)) + + (func (export "call-tab") (param $$i i32) (result i32) + (if (i32.eq (local.get $$i) (i32.const 0)) + (then (return_call_indirect (type $$out-i32) (i32.const 0))) + ) + (if (i32.eq (local.get $$i) (i32.const 1)) + (then (return_call_indirect 1 (type $$out-i32) (i32.const 0))) + ) + (if (i32.eq (local.get $$i) (i32.const 2)) + (then (return_call_indirect $$tab3 (type $$out-i32) (i32.const 0))) + ) + (i32.const 0) + ) + + ;; Recursion + + (func $$fac (export "fac") (type $$over-i64) + (return_call_indirect (param i64 i64) (result i64) + (local.get 0) (i64.const 1) (i32.const 13) + ) + ) + + (func $$fac-acc (param i64 i64) (result i64) + (if (result i64) (i64.eqz (local.get 0)) + (then (local.get 1)) + (else + (return_call_indirect (param i64 i64) (result i64) + (i64.sub (local.get 0) (i64.const 1)) + (i64.mul (local.get 0) (local.get 1)) + (i32.const 13) + ) + ) + ) + ) + + (func $$even (export "even") (param i32) (result i32) + (if (result i32) (i32.eqz (local.get 0)) + (then (i32.const 44)) + (else + (return_call_indirect (type $$over-i32) + (i32.sub (local.get 0) (i32.const 1)) + (i32.const 15) + ) + ) + ) + ) + (func $$odd (export "odd") (param i32) (result i32) + (if (result i32) (i32.eqz (local.get 0)) + (then (i32.const 99)) + (else + (return_call_indirect (type $$over-i32) + (i32.sub (local.get 0) (i32.const 1)) + (i32.const 14) + ) + ) + ) + ) +)`); + +// ./test/core/return_call_indirect.wast:213 +assert_return(() => invoke($0, `type-i32`, []), [value("i32", 306)]); + +// ./test/core/return_call_indirect.wast:214 +assert_return(() => invoke($0, `type-i64`, []), [value("i64", 356n)]); + +// ./test/core/return_call_indirect.wast:215 +assert_return(() => invoke($0, `type-f32`, []), [value("f32", 3890)]); + +// ./test/core/return_call_indirect.wast:216 +assert_return(() => invoke($0, `type-f64`, []), [value("f64", 3940)]); + +// ./test/core/return_call_indirect.wast:218 +assert_return(() => invoke($0, `type-index`, []), [value("i64", 100n)]); + +// ./test/core/return_call_indirect.wast:220 +assert_return(() => invoke($0, `type-first-i32`, []), [value("i32", 32)]); + +// ./test/core/return_call_indirect.wast:221 +assert_return(() => invoke($0, `type-first-i64`, []), [value("i64", 64n)]); + +// ./test/core/return_call_indirect.wast:222 +assert_return(() => invoke($0, `type-first-f32`, []), [value("f32", 1.32)]); + +// ./test/core/return_call_indirect.wast:223 +assert_return(() => invoke($0, `type-first-f64`, []), [value("f64", 1.64)]); + +// ./test/core/return_call_indirect.wast:225 +assert_return(() => invoke($0, `type-second-i32`, []), [value("i32", 32)]); + +// ./test/core/return_call_indirect.wast:226 +assert_return(() => invoke($0, `type-second-i64`, []), [value("i64", 64n)]); + +// ./test/core/return_call_indirect.wast:227 +assert_return(() => invoke($0, `type-second-f32`, []), [value("f32", 32)]); + +// ./test/core/return_call_indirect.wast:228 +assert_return(() => invoke($0, `type-second-f64`, []), [value("f64", 64.1)]); + +// ./test/core/return_call_indirect.wast:230 +assert_return(() => invoke($0, `dispatch`, [5, 2n]), [value("i64", 2n)]); + +// ./test/core/return_call_indirect.wast:231 +assert_return(() => invoke($0, `dispatch`, [5, 5n]), [value("i64", 5n)]); + +// ./test/core/return_call_indirect.wast:232 +assert_return(() => invoke($0, `dispatch`, [12, 5n]), [value("i64", 120n)]); + +// ./test/core/return_call_indirect.wast:233 +assert_return(() => invoke($0, `dispatch`, [17, 2n]), [value("i64", 2n)]); + +// ./test/core/return_call_indirect.wast:234 +assert_trap(() => invoke($0, `dispatch`, [0, 2n]), `indirect call type mismatch`); + +// ./test/core/return_call_indirect.wast:235 +assert_trap(() => invoke($0, `dispatch`, [15, 2n]), `indirect call type mismatch`); + +// ./test/core/return_call_indirect.wast:236 +assert_trap(() => invoke($0, `dispatch`, [20, 2n]), `undefined element`); + +// ./test/core/return_call_indirect.wast:237 +assert_trap(() => invoke($0, `dispatch`, [-1, 2n]), `undefined element`); + +// ./test/core/return_call_indirect.wast:238 +assert_trap(() => invoke($0, `dispatch`, [1213432423, 2n]), `undefined element`); + +// ./test/core/return_call_indirect.wast:240 +assert_return(() => invoke($0, `dispatch-structural`, [5]), [value("i64", 9n)]); + +// ./test/core/return_call_indirect.wast:241 +assert_return(() => invoke($0, `dispatch-structural`, [5]), [value("i64", 9n)]); + +// ./test/core/return_call_indirect.wast:242 +assert_return(() => invoke($0, `dispatch-structural`, [12]), [value("i64", 362880n)]); + +// ./test/core/return_call_indirect.wast:243 +assert_return(() => invoke($0, `dispatch-structural`, [17]), [value("i64", 9n)]); + +// ./test/core/return_call_indirect.wast:244 +assert_trap(() => invoke($0, `dispatch-structural`, [11]), `indirect call type mismatch`); + +// ./test/core/return_call_indirect.wast:245 +assert_trap(() => invoke($0, `dispatch-structural`, [16]), `indirect call type mismatch`); + +// ./test/core/return_call_indirect.wast:247 +assert_return(() => invoke($0, `call-tab`, [0]), [value("i32", 306)]); + +// ./test/core/return_call_indirect.wast:248 +assert_return(() => invoke($0, `call-tab`, [1]), [value("i32", 307)]); + +// ./test/core/return_call_indirect.wast:249 +assert_return(() => invoke($0, `call-tab`, [2]), [value("i32", 308)]); + +// ./test/core/return_call_indirect.wast:251 +assert_return(() => invoke($0, `fac`, [0n]), [value("i64", 1n)]); + +// ./test/core/return_call_indirect.wast:252 +assert_return(() => invoke($0, `fac`, [1n]), [value("i64", 1n)]); + +// ./test/core/return_call_indirect.wast:253 +assert_return(() => invoke($0, `fac`, [5n]), [value("i64", 120n)]); + +// ./test/core/return_call_indirect.wast:254 +assert_return(() => invoke($0, `fac`, [25n]), [value("i64", 7034535277573963776n)]); + +// ./test/core/return_call_indirect.wast:256 +assert_return(() => invoke($0, `even`, [0]), [value("i32", 44)]); + +// ./test/core/return_call_indirect.wast:257 +assert_return(() => invoke($0, `even`, [1]), [value("i32", 99)]); + +// ./test/core/return_call_indirect.wast:258 +assert_return(() => invoke($0, `even`, [100]), [value("i32", 44)]); + +// ./test/core/return_call_indirect.wast:259 +assert_return(() => invoke($0, `even`, [77]), [value("i32", 99)]); + +// ./test/core/return_call_indirect.wast:260 +assert_return(() => invoke($0, `even`, [100000]), [value("i32", 44)]); + +// ./test/core/return_call_indirect.wast:261 +assert_return(() => invoke($0, `even`, [111111]), [value("i32", 99)]); + +// ./test/core/return_call_indirect.wast:262 +assert_return(() => invoke($0, `odd`, [0]), [value("i32", 99)]); + +// ./test/core/return_call_indirect.wast:263 +assert_return(() => invoke($0, `odd`, [1]), [value("i32", 44)]); + +// ./test/core/return_call_indirect.wast:264 +assert_return(() => invoke($0, `odd`, [200]), [value("i32", 99)]); + +// ./test/core/return_call_indirect.wast:265 +assert_return(() => invoke($0, `odd`, [77]), [value("i32", 44)]); + +// ./test/core/return_call_indirect.wast:266 +assert_return(() => invoke($0, `odd`, [200002]), [value("i32", 99)]); + +// ./test/core/return_call_indirect.wast:267 +assert_return(() => invoke($0, `odd`, [300003]), [value("i32", 44)]); + +// ./test/core/return_call_indirect.wast:272 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (return_call_indirect (type $$sig) (result i32) (param i32) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/return_call_indirect.wast:284 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (return_call_indirect (param i32) (type $$sig) (result i32) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/return_call_indirect.wast:296 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (return_call_indirect (param i32) (result i32) (type $$sig) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/return_call_indirect.wast:308 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (return_call_indirect (result i32) (type $$sig) (param i32) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/return_call_indirect.wast:320 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (return_call_indirect (result i32) (param i32) (type $$sig) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/return_call_indirect.wast:332 +assert_malformed( + () => instantiate(`(table 0 funcref) (func (result i32) (return_call_indirect (result i32) (param i32) (i32.const 0) (i32.const 0) ) ) `), + `unexpected token`, +); + +// ./test/core/return_call_indirect.wast:344 +assert_malformed( + () => instantiate(`(table 0 funcref) (func (return_call_indirect (param $$x i32) (i32.const 0) (i32.const 0))) `), + `unexpected token`, +); + +// ./test/core/return_call_indirect.wast:351 +assert_malformed( + () => instantiate(`(type $$sig (func)) (table 0 funcref) (func (result i32) (return_call_indirect (type $$sig) (result i32) (i32.const 0)) ) `), + `inline function type`, +); + +// ./test/core/return_call_indirect.wast:361 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (result i32) (return_call_indirect (type $$sig) (result i32) (i32.const 0)) ) `), + `inline function type`, +); + +// ./test/core/return_call_indirect.wast:371 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32) (result i32))) (table 0 funcref) (func (return_call_indirect (type $$sig) (param i32) (i32.const 0) (i32.const 0) ) ) `), + `inline function type`, +); + +// ./test/core/return_call_indirect.wast:383 +assert_malformed( + () => instantiate(`(type $$sig (func (param i32 i32) (result i32))) (table 0 funcref) (func (result i32) (return_call_indirect (type $$sig) (param i32) (result i32) (i32.const 0) (i32.const 0) ) ) `), + `inline function type`, +); + +// ./test/core/return_call_indirect.wast:398 +assert_invalid( + () => instantiate(`(module + (type (func)) + (func $$no-table (return_call_indirect (type 0) (i32.const 0))) + )`), + `unknown table`, +); + +// ./test/core/return_call_indirect.wast:406 +assert_invalid( + () => instantiate(`(module + (type (func)) + (table 0 funcref) + (func $$type-void-vs-num (i32.eqz (return_call_indirect (type 0) (i32.const 0)))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:414 +assert_invalid( + () => instantiate(`(module + (type (func (result i64))) + (table 0 funcref) + (func $$type-num-vs-num (i32.eqz (return_call_indirect (type 0) (i32.const 0)))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:423 +assert_invalid( + () => instantiate(`(module + (type (func (param i32))) + (table 0 funcref) + (func $$arity-0-vs-1 (return_call_indirect (type 0) (i32.const 0))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:431 +assert_invalid( + () => instantiate(`(module + (type (func (param f64 i32))) + (table 0 funcref) + (func $$arity-0-vs-2 (return_call_indirect (type 0) (i32.const 0))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:440 +let $1 = instantiate(`(module + (type (func)) + (table 0 funcref) + (func $$arity-1-vs-0 (return_call_indirect (type 0) (i32.const 1) (i32.const 0))) +)`); + +// ./test/core/return_call_indirect.wast:446 +let $2 = instantiate(`(module + (type (func)) + (table 0 funcref) + (func $$arity-2-vs-0 + (return_call_indirect (type 0) (f64.const 2) (i32.const 1) (i32.const 0)) + ) +)`); + +// ./test/core/return_call_indirect.wast:454 +assert_invalid( + () => instantiate(`(module + (type (func (param i32))) + (table 0 funcref) + (func $$type-func-void-vs-i32 (return_call_indirect (type 0) (i32.const 1) (nop))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:462 +assert_invalid( + () => instantiate(`(module + (type (func (param i32))) + (table 0 funcref) + (func $$type-func-num-vs-i32 (return_call_indirect (type 0) (i32.const 0) (i64.const 1))) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:471 +assert_invalid( + () => instantiate(`(module + (type (func (param i32 i32))) + (table 0 funcref) + (func $$type-first-void-vs-num + (return_call_indirect (type 0) (nop) (i32.const 1) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:481 +assert_invalid( + () => instantiate(`(module + (type (func (param i32 i32))) + (table 0 funcref) + (func $$type-second-void-vs-num + (return_call_indirect (type 0) (i32.const 1) (nop) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:491 +assert_invalid( + () => instantiate(`(module + (type (func (param i32 f64))) + (table 0 funcref) + (func $$type-first-num-vs-num + (return_call_indirect (type 0) (f64.const 1) (i32.const 1) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:501 +assert_invalid( + () => instantiate(`(module + (type (func (param f64 i32))) + (table 0 funcref) + (func $$type-second-num-vs-num + (return_call_indirect (type 0) (i32.const 1) (f64.const 1) (i32.const 0)) + ) + )`), + `type mismatch`, +); + +// ./test/core/return_call_indirect.wast:515 +assert_invalid( + () => instantiate(`(module + (table 0 funcref) + (func $$unbound-type (return_call_indirect (type 1) (i32.const 0))) + )`), + `unknown type`, +); + +// ./test/core/return_call_indirect.wast:522 +assert_invalid( + () => instantiate(`(module + (table 0 funcref) + (func $$large-type (return_call_indirect (type 1012321300) (i32.const 0))) + )`), + `unknown type`, +); + +// ./test/core/return_call_indirect.wast:533 +assert_invalid( + () => instantiate(`(module (table funcref (elem 0 0)))`), + `unknown function 0`, +); -- cgit v1.2.3